本文へスキップ

別館:エクセルQC館 別館:エクセル株式館

  1. トップページ>
  2. VBA>
  3. VBA応用、データベース操作

VBAvba

VBA関係の情報を色々を記載して行きます。


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応用、データベース操作は終了です。



contents

エクセル将棋館

日本国

地方都市


スポンサード リンク