/ / Excel VBAで定義された範囲をループ

Excel VBAで定義された範囲をループする

以下では、 定義された範囲でループする。たとえば、Range( "A1:A3")の数値を2乗する場合です。ダイナミックレンジをループすることもできますか?

状況:

Excel VBAで定義された範囲をループする

ワークシートにコマンドボタンを配置し、次のコード行を追加します。

1.まず、2つのRangeオブジェクトを宣言します。 Rangeオブジェクトrngとcellを呼び出します。

Dim rng As Range, cell As Range

2. Rangeオブジェクト(rng)をRange( "A1:A3")で初期化します。

Set rng = Range("A1:A3")

3. For Each Nextループを追加します。

For Each cell In rng

Next cell

注:ここではrngとcellをランダムに選択していますが、任意の名前を使用できます。残りのコードでこれらの名前を参照することを忘れないでください。

4.次に、この範囲の各セルを四角形にします。これを実現するには、次のコード行をループに追加します。

cell.Value = cell.Value * cell.Value

シート上のコマンドボタンをクリックすると、結果が表示されます。

ループスルー定義済み範囲結果

5.ランダムに選択した範囲内の各セルをチェックする場合は、次のように置き換えます。

Set rng = Range("A1:A3")

with:

Set rng = Selection

6.ここで、たとえばRange( "A1:A2")を選択します。

Excel VBAでループスルー選択

シート上のコマンドボタンをクリックすると、結果が表示されます。

ループスルー選択結果

また読む: