Access2013のDAOで、全レコードの全フィールドデータを動的配列に格納するVBAです。
下記フォームの[開始]ボタンをクリックすると実行します。クリックイベント内に入力した、VBAコードです。
■VBAコードの流れ
1)レコードセットと配列を宣言
2)テーブルをレコードセットで開きます。
3)動的配列にフィールド数分の要素を確保します。
4)レコード数分、Doループで繰り返します。
5)フィールド数文、Forループで繰り返します。
6)配列にフィールドデータを格納します。
7)次のレコードに移動し、LoopでDoへ戻ります。
8)レコードセットの変数を開放します。
■VBAコード
Option Compare Database
Private Sub コマンド0_Click()
Dim rs As Recordset
Dim myArray() As Variant
Set rs = CurrentDb.OpenRecordset("T_テーブル")
ReDim myArray(rs.Fields.Count)
Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
myArray(i) = rs(i)
Next
rs.MoveNext
Loop
Set rs = Nothing
End Sub
VBAでフォームを開くコードとエラー発生時の対処方法
VBAでフォームを閉じるボタンを作成する




![[オプション]をクリックする](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiqBLglrQdC4tVt_pyh1ugQrBXDlh6tCsB6X8Er_UQsJj35SzV1K-plaqFkR8fyfBxyuPLJzWXZQ2xav2OwT6j7_t5LEFulx8hCVg8JUbBBWeJlQxB8i4EV82JholEU3xOlJesXU6uj3Yy/s1600/image369-2.gif)
![[ウィンドウを重ねて表示する]を選択する](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYorUvdhPUvWpxHYGtGUvc0JV7j6JwlaaVHQcylDXcFtDoK5ter0CI_yfmj01rNGVBN1gVFU7rOqlqXlAtTHaEvqicLfohCIISlUy3PgLeM5R86bo90iZ3WQz5301AfkSNWZvx2o3c2fh5/s1600/image369-3.gif)







![レコードセレクタの[先頭レコード]をクリックし戻す](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzYn3rkffOTEWElyhQqF2ncZZm8rdbcQFlTicj7SlEV9nx8qeiedGMFr6fgdBNKoS4zd2s5Ge4_7RZw0ALxaKVjy0xQZBAEMvxZvbo8aUBXP5UmV6O3_s5S5MTSca-QR9wqlPz2HqUFbj1/s1600/image368-5.gif)



![テーブルグループの[ピボットテーブル]をクリックする](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiA_xSdSPTYIffv_3G2JUCWEk9hEE7CHetfyXNXLfok0vUvPYxxo0kBvH0vqYkwntFjJRwrzhZUJbeBCwTIB3DHfbYM0tMB1UVDtUITS9-n1Snvakv3CQy_eNfzFYaoTuGRn39XEPoY24s/s1600/image367-3.gif)



