Sub SearchAccessQueryWithMultipleParameters()
Dim conn As Object
Dim rs As Object
Dim strSQL As String
Dim strConnection As String
Dim accessDBPath As String
Dim searchValue1 As Variant
Dim searchValue2 As Variant
Dim searchValue3 As Variant
' Accessデータベースのファイルパスを指定
accessDBPath = "C:\Path\To\Your\Database.accdb"
' A1セル、A2セル、A3セルから検索条件の値を取得
searchValue1 = Sheets("Sheet1").Range("A1").Value
searchValue2 = Sheets("Sheet1").Range("A2").Value
searchValue3 = Sheets("Sheet1").Range("A3").Value
' SQLクエリを作成(複数の検索条件を含む)
'strSQL = "SELECT * FROM YourQueryName WHERE YourField1 = '" & searchValue1 & "' AND YourField2 = '" & searchValue2 & "' AND YourField3 = '" & searchValue3 & "';"
' SQLクエリを作成(あいまい検索を含む)
strSQL = "SELECT * FROM YourQueryName WHERE YourField1 LIKE '%" & searchValue1 & "%' AND YourField2 LIKE '%" & searchValue2 & "%' AND YourField3 LIKE '%" & searchValue3 & "%';"
' 接続文字列を作成
strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & accessDBPath & ";"
' ADOオブジェクトを作成
Set conn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
' データベースに接続
conn.Open strConnection
' クエリを実行
rs.Open strSQL, conn
' 検索結果をExcelに貼り付け(例:シート1のA4セルから開始)
Sheets("Sheet2").Range("A1").CopyFromRecordset rs
' 接続を閉じる
rs.Close
conn.Close
' オブジェクトの解放
Set rs = Nothing
Set conn = Nothing
End Sub