1

Access データベースで使用する Excel シートがあります。データベースを開き、さまざまなクエリでさまざまなサブルーチンを使用したいと考えています。ただし、データベースを使用するために変数を公に割り当てる方法がわからないため、各サブルーチン内で接続を作成し、これを開いたり閉じたりする必要があります。

これはもっと賢くできるはずだと感じているので、同じコードを全体に書いていません。

次のコードでデータベースを開き、クエリごとにこれを何度も行う必要があります。

Public Sub copy_to_sql()

    Dim Cn As New ADODB.Connection
    Dim Rs As New ADODB.Recordset
    Dim Cmd As New ADODB.Command

    Dim strMDB As String

    strMDB = ThisWorkbook.Path & "\klantserverinfo.accdb"
    ' Set Cn = CreateObject("ADODB.Connection")
    Cn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" & strMDB
    Cn.Open

    '--- Do some queries like

    SqlQuery = "SELECT * FROM database"

    Set Cmd.ActiveConnection = Cn
    Cmd.CommandText = SqlQuery
    Cmd.CommandType = adCmdText

    Set Rs.Source = Cmd
    Rs.Open    

    Cn.close
End Sub

これをより良く行う方法を知っている人はいますか?

追伸、私は Office 2010 を使用しており、使用されているデータベースは Access 2010 データベースです。

4

0 に答える 0