Так что я использую метод Opendateabase в Ms Access, чтобы прочитать лист книги Excel.Почему я получаю несколько записей для рабочих таблиц, когда при открытии файла вижу только одну рабочую таблицу Excel.
Таким образом, система просто импортировала рабочую книгу Excel без проверки имен столбцов, что означало ожидание в течение 5-10 минут.импорта, если пользователь неправильно назвал свои столбцы, программа потерпит крах.Я хочу, чтобы он проверял имена столбцов перед импортом, а это значит, что VBA нужно знать имя рабочего листа, который он импортирует.
Set db = OpenDatabase(Me.Text2.Value, True, False, "Excel 8.0")
For Each tbl In db.TableDefs
MsgBox tbl.Name 'Would be where the sheet name is picked
Next
db.Close
Set rstbl = CurrentDb.OpenRecordset("SELECT * FROM ImportColumnNames")
S = "SELECT * FROM [Excel 8.0;HDR=Yes;Database=" _
& Me.Text2 & "].[" & SheetName & "$] WHERE False;"
Теперь, поскольку у файла есть только один рабочий лист с именем CLENAS, я ожидал 1 ответ, однако я получил Sheet1 $, CLENAS, CLENAS $, теперь я знаю, что это должен быть CLENAS, но как мне убедиться, что VBAвыбирает правильный.