Option Explicit
Sub GetDataFromAccessWithMultipleConditions()
Dim conn As Object
Dim rs As Object
Dim ws As Worksheet
Dim strSQL As String
' Accessデータベースへの接続
Set conn = CreateObject("ADODB.Connection")
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Path\To\Your\Database.accdb;"
conn.Open
' データの取得
Set rs = CreateObject("ADODB.Recordset")
' シート2のセルB1とB2にある条件を取得
Dim condition1 As String
Dim condition2 As String
condition1 = ThisWorkbook.Sheets("Sheet2").Range("B1").Value
condition2 = ThisWorkbook.Sheets("Sheet2").Range("C1").Value
' シート2のセルB1にある条件を取得
Dim condition3 As String
condition3 = ThisWorkbook.Sheets("Sheet2").Range("D1").Value
' 動的なSQLクエリを構築
strSQL = "SELECT * FROM YourTable WHERE YourColumn1 = '" & condition1 & "' AND YourColumn2 = '" & condition2 & "' AND YourColumn3 LIKE '%" & condition3 & "%';"
' 動的なSQLクエリを構築(あいまい検索)
'strSQL = "SELECT * FROM YourTable WHERE YourColumn LIKE '%" & Condition3 & "%';"
rs.Open strSQL, conn
' データのエクセルへの反映
Set ws = ThisWorkbook.Sheets("Sheet3")
ws.Cells.Clear ' データをクリア
ws.Range("A1").CopyFromRecordset rs
' 接続のクローズ
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
End Sub