Access2013でDAOを使用し、全レコードのフィールドデータを、動的に設定した二次元配列し格納するVBAです。
取出し元の、顧客先名簿テーブルです。このテーブルから、担当者名と住所を格納します。
ボタンをクリックすると、VBAを開始するフォームを作成しました。
作成したVBAコードです。
Dim rs As Recordset : レコードセットを宣言
Dim myArray() As Variant : 配列を宣言
ReDim myArray(rs.RecordCount - 1, 1) : 動的に二次元配列を設定
Do Until rs.EOF : レコード終了までループします
myArray(i, 0) = rs(1) : 担当者名を配列に格納
myArray(i, 1) = rs(3) : 住所を配列に格納
rs.MoveNext : 次のレコードへ移動
Option Compare Database
Private Sub コマンド0_Click()
Dim rs As Recordset
Dim myArray() As Variant
Dim i As Long
Set rs = CurrentDb.OpenRecordset("T_納品先名簿")
ReDim myArray(rs.RecordCount - 1, 1)
i = 0
Do Until rs.EOF
myArray(i, 0) = rs(1)
myArray(i, 1) = rs(3)
i = i + 1
rs.MoveNext
Loop
Set rs = Nothing
End Sub
動的配列にフィールドデータを格納した結果を、ウォッチ式で見た画面です。
DAOで全レコードの全フィールドデータを動的配列に格納するVBA
ADOを使う