VBA応用、データベース操作
(項目1)
・エクセルでは、DAOを使用する事で、Accessデータベースのデータ読み書きが可能です。
・本ページでは、データベース操作を説明します。
・以下、Excel2016で説明して行きます。
(項目2)
・代表的なデータベース操作は、以下の通りです。
変数宣言: DAO.Workspace、DAO.Database、DAO.Recordset、DAO.Field
変数設定: DBEngine.Workspaces(0)、OpenDatabase()、OpenRecordset()
読み込み: EOF、Fields、Value、MoveNext
閉じる : Close、Nothing
・エクセルでDAOを使用するには、VBEの参照設定で下記にチェックを入れます。
Microsoft DAO 3.x Object Library
(項目3)
・VBAコードは、以下の記述となります。
・尚、
VBA応用(DAOでデータを取得する。)を参考に、VBAコードを記述しています。
Sub test()
Dim dbWS As DAO.Workspace
Dim dbWB As DAO.Database
Dim dbRes As DAO.Recordset
Dim dbCol As DAO.Field
Dim GYO As Long
Dim COL As Long
Set dbWS = DBEngine.Workspaces(0)
Set dbWB = dbWS.OpenDatabase("C:\エクセル将棋館.mdb")
Set dbRes = dbWB.OpenRecordset("データ一覧表", dbOpenDynaset)
Set dbRes = dbRes.OpenRecordset()
Do Until dbRes.EOF
GYO = GYO + 1
COL = 0
For Each dbCol In dbRes.Fields
COL = COL + 1
Cells(GYO, COL).Value = dbCol.Value
Next dbCol
dbRes.MoveNext
Loop
dbRes.Close
Set dbRes = Nothing
dbWB.Close
Set dbWB = Nothing
dbWS.Close
Set dbWS = Nothing
End Sub
(項目4)
・以上で、VBA応用、データベース操作は終了です。