#ms-access #vba
#ms-access #vba
Вопрос:
если бы кто-нибудь мог дать мне несколько советов о том, как выбрать конкретные ячейки, я был бы признателен. Я могу заставить команду работать с диапазоном, см. «A1: A50» в текущем коде. Каждый раз, когда я пытался использовать список, это не срабатывало.
Ищем следующие ячейки для импорта: A1, C16, C18, F16, F18
Public Sub ImportExcelSpreadsheet(fileName As String, tableName As String)
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12, tableName, fileName, False, "A1:A50"
End Sub
Комментарии:
1. Невозможно использовать TransferSpreadsheet для несмежных ячеек, поэтому должен быть диапазон. Используйте код автоматизации Excel. Или, если таблица достаточно проста, установите ссылку.
2. Привет, Джун, спасибо за отзыв! Я избегал добавлять слишком много фона, чтобы прояснить вопрос, но, возможно, некоторые из них помогли бы. У меня есть база данных Access с таблицей
tbl_jobList
. Существует более 900 файлов Excel (всего 1 лист), в которых данные заполнены с помощью точно такого же шаблона. Моей целью было импортировать определенный список ячеек из каждого файла Excel в виде строки в таблицу access. Поскольку transferspreadsheet работать не будет, можете ли вы предложить альтернативу? Я не хочу связывать более 900 листов.3. Автоматизация Excel. VBA объявляет объекты Excel, открывает их и управляет ими. Повторный просмотр accessmvp.com/KDSnell/EXCEL_Import.htm#WriteFileRst