MyTetra Share
Делитесь знаниями!
Лист запроса Excel в MS-Access VBA (с использованием набора записей ADODB)
Время создания: 16.03.2019 23:43
Текстовые метки: vba, ADO, подключение к EXCEL
Раздел: !Закладки - VBA - Access - ADO
Запись: xintrea/mytetra_db_adgaver_new/master/base/1531517533c44pdghli6/text.html на raw.githubusercontent.com

Лист запроса Excel в MS-Access VBA (с использованием набора записей ADODB)

Я хотел бы запросить таблицу Excel в настройках VBA и.

Простой запрос "SELECT * FROM [PCR$]" работает отлично, но я не знаю, как добавить предложение WHERE.

Я попробовал cmd2.CommandText = "SELECT * FROM [PCR$] WHERE ([B1] IS NOT NULL)", но потом он жалуется на отсутствие параметров.

Это полный код:


Dim rs2 As New ADODB.Recordset

Dim cnn2 As New ADODB.Connection

Dim cmd2 As New ADODB.Command

Dim intField As Integer

Dim strFile As String


strFile = fncOpenFile

If strFile = "" Then Exit Sub


With cnn2

.Provider = "Microsoft.Jet.OLEDB.4.0"

.ConnectionString = "Data Source='" & strFile & "'; " & "Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'"

.Open

End With


Set cmd2.ActiveConnection = cnn2

cmd2.CommandType = adCmdText

cmd2.CommandText = "SELECT * FROM [PCR$]"

rs2.CursorLocation = adUseClient

rs2.CursorType = adOpenDynamic

rs2.LockType = adLockOptimistic


rs2.Open cmd2


2 ответов

В строке подключения вы скажете

Excel 8.0;HDR=Yes



Это означает, что первая строка будет рассматриваться как заголовок, независимо от того, что она содержит. Если вы хотите использовать F1, F2 и т.д., Скажите

Excel 8.0;HDR=No


Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования