【Access VBA】 サンプルコード例メモ

VBA・Officeカテゴリを表すパンダのイラスト VBA・Office

Access VBAでクエリを実行したり、ADODBを用いたトランザクション処理を行ったりするためのサンプルコード例です。

前提条件

  • 対象のデータベースは Microsoft Access (.accdb) です。
  • VBAエディターの参照設定で適切なライブラリが有効になっている必要があります。

サンプルコード

Public Sub BeginTransX2()
    ' recordset and connection variables
    Dim Cnxn As ADODB.Connection
    Dim strCnxn As String
    Dim rstTitles As ADODB.Recordset
    Dim strSQLTitles As String
    ' record variables
    Dim strTitle As String
    Dim strMessage As String

    Set Cnxn = Application.CurrentProject.Connection
    
    ' クエリの実行サンプル(追加クエリ)
    Dim qdf As QueryDef
    Dim dbs As Database
    Set dbs = CurrentDb
    Set qdf = dbs.QueryDefs("クエリ1")
    With qdf
        .Parameters("ID指定") = 1
        .Execute
    End With

    ' トランザクションの開始
    On Error GoTo trans_Err
    Cnxn.BeginTrans

    ' 動的クエリの実行サンプル(更新クエリ)    
    Dim cmdChange As ADODB.Command
    Set cmdChange = New ADODB.Command
    Set cmdChange.ActiveConnection = Cnxn
    cmdChange.CommandText = "UPDATE テーブル1 SET [テーブル1].名前 = ""bbbb"", [テーブル1].日付 = """ & Now() & """ WHERE ((([テーブル1].ID)=1));"
    cmdChange.Execute
    
    Cnxn.CommitTrans

trans_Exit:
    ' Clean up
    If Not Cnxn is Nothing Then
        If Cnxn.State Then Cnxn.Close
        Set Cnxn = Nothing
    End If
    Exit Sub
    
trans_Err:
    ' Roll back the transaction
    Cnxn.RollbackTrans
    Resume trans_Exit
End Sub

この記事の更新履歴

この記事は、生成AIを活用した自動レビュー・更新フローにより内容を見直し、必要な修正を反映しています。

2026年9月27日

  • 変更コードブロックのHTML構造を見直し、シンタックスとインデントを整理しました。
  • 追加トランザクション処理およびクエリ実行のサンプルコードに関する解説と前提条件を追加しました。

文書情報

記事タイトル
【Access VBA】 サンプルコード例メモ
作成日
更新日
Source URL
https://papanda925.com/?p=478

ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

タイトルとURLをコピーしました