Я разобрался, как тянуть, но с трудом ограничил результат.Как вы тянете с предложением where.
См. Рисунок, который показывает структуру моего листа для вкладки под названием «Данные»
См. Код ниже, чтобы получить данные.
Iя пытаюсь выяснить правильный синтаксис для составления переменной strSQL ниже.
![Excel with Sheet named Data](https://i.stack.imgur.com/F4mqH.png)
Вот что я получаю:!Ошибка времени выполнения '-2147217904 (80040e10)': ошибка автоматизации
Моя строка sql выглядит следующим образом через окно просмотра: "SELECT * FROM [Data $ A2: G1000] где [First] = 'JOHN'"
КОД:
Sub SQL()
Dim cn As ADODB.Connection
Dim strFile As String
Dim strCon As String
Dim strSQL As String
Dim rs As ADODB.Recordset
strFile = ThisWorkbook.FullName
strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile _
& ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open strCon
Dim temp As String
temp = Trim("G" + Trim(Str(1000)))
strSQL = "SELECT * FROM [Data$A2:" + Trim(temp) + "] where [First]='JOHN'"
rs.Open strSQL, cn
MsgBox rs.GetString
MsgBox "Data Loaded"
End Sub