エクセルVBA Rangeオブジェクト
ワークシート上のセル(またはセル)の表現であるRangeオブジェクトは、エクセルVBAの最も重要な課題です。この章では、Rangeオブジェクトのプロパティとメソッドの概要を示します。プロパティは、メソッドが何かをしながら(彼らは、オブジェクトとアクションを実行する)、オブジェクトが持っているもの(彼らはオブジェクトを記述)です。
レンジ例
ワークシート上の/ VBAの作成・マクロ#コマンドボタンを[コマンドボタン] `と次のコード行を追加します:`リンクを置き
Range("B3").Value = 2
あなたはシート上のコマンドボタンをクリックすると、結果:
コード:
Range("A1:A4").Value = 5
結果:
コード:
Range("A1:A2,B3:C4").Value = 10
結果:
注意:名前付き範囲を参照するように
お使いのエクセルVBAコードで、次のようなコード行を使用します。
Range("Prices").Value = 15
細胞
範囲の代わりに、あなたはまた、細胞を使用することができます。 / VBAのループの範囲を通して[ループ] `:あなたは`リンクする際に細胞を使用すると特に便利です。
コード:
Cells(3, 2).Value = 2
結果:
説明:ExcelのVBAは、行3列2の交点にセルに値2に入射
コード:
Range(Cells(1, 1), Cells(4, 1)).Value = 5
結果:
レンジオブジェクトを宣言
あなたは、キーワード点心や設定を使用して、Rangeオブジェクトを宣言することができます。
コード:
Dim example As Range Set example = Range("A1:C4") example.Value = 8
結果:
選択し、[[]を選択]を
Rangeオブジェクトの重要な方法が選択する方法です。 Selectメソッドは、単純に範囲を選択します。
コード:
Dim example As Range Set example = Range("A1:C4") example.Select
結果:
注:別のワークシート上のセルを選択するには、最初にこのシートをアクティブにする必要があります。例えば、次のコード行は左から3番目のワークシート上のセルB7を選択します。
Worksheets(3).Activate Worksheets(3).Range("B7").Select
行
行プロパティは範囲の特定の行へのアクセスを与えます。
コード:
Dim example As Range Set example = Range("A1:C4") example.Rows(3).Select
結果:
注:説明のみの境界線。
列
Columnsプロパティは、範囲の特定の列へのアクセスを提供します。
コード:
Dim example As Range Set example = Range("A1:C4") example.Columns(2).Select
結果:
注:説明のみの境界線。
コピー/貼り付け
コピーと貼り付け方法は、範囲をコピーするには、ワークシート上のどこか別の場所に貼り付けるために使用されています。
コード:
Range("A1:A2").Select Selection.Copy Range("C3").Select ActiveSheet.Paste
結果:
これはExcelのVBAで許可されているが、正確に同じことを次のコード行を使用することがはるかに優れています。
Range("C3:C4").Value = Range("A1:A2").Value
クリア[[クリア]を
Excelの範囲の内容を消去するには、あなたはClearContentsメソッドを使用することができます。
Range("A1").ClearContents
あるいは単に使用します。
Range("A1").Value = ""
注:範囲の内容と形式をクリアするには、clearメソッドを使用します。
唯一の形式をクリアするClearFormatsメソッドを使用します。
カウント
[[カウント] Countプロパティを使用すると、セル、行および範囲の列数をカウントすることができます。
注:説明のみの境界線。
コード:
Dim example As Range Set example = Range("A1:C4") MsgBox example.Count
結果:
コード:
Dim example As Range Set example = Range("A1:C4") MsgBox example.Rows.Count
結果:
注:同様の方法で、あなたが範囲の列の数を数えることができます。