相対VBA選択(Microsoft Excel)
マクロ内のセルを選択する必要があるのはよくあることです。ただし、現在の場所を基準にしてセルの範囲を選択する場合はどうなりますか?このタスクを実行する方法はいくつかあります。たとえば、現在の場所を基準にして単一のセルを選択する場合は、オフセット方法を使用できます。たとえば、現在の場所の2行下、1列右にあるセルを選択する場合は、次を使用できます。
ActiveCell.Offset(2, 1).Select
単一のセルよりも広い範囲を選択する場合は、OffsetメソッドとAddressメソッドを組み合わせて実際のセルアドレスを見つけ、その結果を使用して実際に範囲自体を選択できます。たとえば、下に2行、右に1列で始まり、その後4行と3列に拡張する範囲を選択したい場合があります。これは次の方法で実行できます:
StartCell = ActiveCell.Offset(2, 1).Address EndCell = ActiveCell.Offset(5, 3).Address Range(StartCell, EndCell).Select
同じタスクを実行する別の方法は、サイズ変更方法を使用することです。この手法では、最初に目的の範囲の右上のセルを選択し(上記のオフセットの最初の使用で行ったように)、次にサイズ変更を使用して選択のサイズを変更します。これがその方法です:
ActiveCell.Offset(2, 1).Select Selection.Resize(4, 3).Select
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]
。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(2298)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。
link:/ excelribbon-Relative_VBA_Selections [Relative VBASelections]
。