他のDBからテーブルをインポート

Sub prcImportTableDataWithSQL()
    ' A.accdbのテーブルAにB.accdbのテーブルBからデータをインポートする
    Dim strSourceDB As String  ' インポート元データベースのパス
    Dim strSQL As String  ' SQLクエリ文字列
    Dim cnn As ADODB.Connection  ' データベース接続用のオブジェクト
    
    strSourceDB = "C:\path\to\B.accdb"  ' インポート元データベースのパスを設定

    ' ADO接続を初期化
    Set cnn = New ADODB.Connection
    With cnn
        .Provider = "Microsoft.ACE.OLEDB.12.0"
        .Open CurrentProject.Path & "\" & CurrentProject.Name  ' 現在のデータベースに接続
    End With

    ' SQLクエリを構築
    strSQL = "INSERT INTO TableA SELECT * FROM [;DATABASE=" & strSourceDB & "].TableB"
    
    ' SQLクエリを実行
    cnn.Execute strSQL

    ' 接続を閉じる
    cnn.Close

    ' オブジェクトの解放
    Set cnn = Nothing

    MsgBox "データのインポートが完了しました。"
End Sub

コメント