【Excel VBA】テーブルのレコードを読み込む

エクセルでテーブルを作成し、テーブルの情報をVBAで操作したいことがあります。

この記事では、テーブルのレコード(行)を読み込む方法についてご紹介します。

目次

テーブルのレコードを繰り返す(For Each 変数 In テーブル名)

事前にエクセルに”テーブル名”というテーブルを作成します。

次のコードで、テーブルをレコード(行)毎に繰り返し処理を行います。

Sub テーブルレコード読込()
 Dim Data as Variant
 For Each Data In Range("テーブル名").Rows
    MsgBox Data.Cells(1) & " " & Data.Cells(2)  ’処理内容
 Next
End Sub
解説

Dataという変数を宣言し、For Eachの構文で、Dataにテーブルの内容を1行ずつ繰り返し読み込む処理となっています。

レコード単位(行単位)で繰り返し処理が行わるため、1列目を指定する場合は変数名.Cells(1)、2列目を指定する場合は変数名.Cells(2)とすることで指定することができます。

上記のコードでは、「No 名前」をレコードの数だけメッセージボックスに表示します。

テーブル名を指定した場合、テーブルの項目は実行されず1行目のレコードから実行されます。

以下が1回目の実行結果です。上記のテーブルの場合、3回繰り返されます。

まとめ

「For Each 変数 In Range(“テーブル名”)・・・Next」は、テーブルに対して処理を行うときにとても便利なコードです。ぜひ使ってみて下さい。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次