вставить файл xls / csv в таблицу доступа 2007 с помощью vba - PullRequest
2 голосов
/ 06 октября 2010

У меня есть несколько файлов Excel, содержащих 90 столбцов и около 500 строк, каждый файл имеет заголовок из 4 строк, и мне нужно вставить их в одну таблицу доступа.

Я могу выполнить импорт с помощьюиспользование цикла for ... для зацикливания всех файлов Excel и всех строк внутри файла, но это слишком медленно.

Я использовал mysql в R, и это можно легко сделать с помощью "LOAD DATAМЕСТНЫЙ ИНФИЛЬ ".Я могу без проблем преобразовать файл xls в файл csv, но не могу найти ничего похожего в Access как «LOAD DATA LOCAL INFILE».

Есть предложения по оптимизации процесса импорта?Спасибо!

Ответы [ 2 ]

0 голосов
/ 06 октября 2010

http://msdn.microsoft.com/en-us/library/aa141565%28office.10%29.aspx

Как и выше, это то, что вы ищете.

Если проблема в 4 строках заголовка, вы можете запустить создание таблицы с правильными заголовками, выполнить запрос на удаление, удалить все элементы в таблице, а затем импортировать без заголовков в уже существующую таблицу. Ниже приведен код, который я использую, чтобы избавиться от первой строки, вы можете просто отредактировать его, чтобы удалить 4 строки. Это используется в Excel VBA. В модуле Access просто установите Excel в качестве объекта и запустите ниже.

Код заголовка:

Application.DisplayAlerts = True

    Workbooks.Open Filename:= _
        "Excel File here"
    Rows("1:1").Select
    Selection.Delete Shift:=xlUp
    ActiveWorkbook.Save
    ActiveWorkbook.Close

RE: Ваша таблица переводов не работает, почему ваша таблица уже создана? Я использую код следующим образом, и он работает правильно:

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "TABLENAME", "IMPORT PATH", False

Можете ли вы сообщить мне о любых ошибках или о том, что вы не понимаете, я постараюсь помочь вам в дальнейшем. В конце кода выше указано false, чтобы убедиться, что вы НЕ используете заголовки. Если вы хотите импортировать строку заголовка, измените ее на True.

0 голосов
/ 06 октября 2010

Я думаю, вы ищете TransferSpreadsheet . Вы можете импортировать данные или связать их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...