Получить количество записей, обработанных сохраненным импортом (MS Access, VBA) - PullRequest
2 голосов
/ 01 октября 2019

Я работаю с Microsoft Access. Я выполняю сохраненный импорт (из электронной таблицы Excel) через VBA с помощью команды DoCmd.RunSavedImportExport. Я бы хотел программно записать количество записей, обработанных этим сохраненным импортом.

Документация MS на DoCmd.RunSavedImportExport не указывает на наличие возвращаемых значений илиПараметры ByRef, которые я могу использовать.

Я искал в Google и SO, ожидая ответа, так как думаю, что это уже решено. Если я пропустил ответ по этому вопросу, пожалуйста, дайте мне знать!

Вот код, который я использую. Я счастлив использовать другой метод импорта моей электронной таблицы, если он может дать мне количество строк.

DoCmd.RunSavedImportExport "<name of saved import>"

Я бы хотел что-то вроде:

numRec = DoCmd.RunSavedImportExport("<name of saved import>")
debug.print "# rec loaded="& numRec

1 Ответ

0 голосов
/ 01 октября 2019

Это действительно недоступно, используя DoCmd.RunSavedImportExport

Вместо этого вы можете использовать запрос для импорта, а Database.RecordsAffected

Dim db As DAO.Database
Set db = CurrentDb
db.Execute "SELECT * INTO SomeTable FROM [Excel 12.0 XML;HDR=Yes;DATABASE=C:\Path\To\File.xlsx].[MyNamedRange]"
debug.print "# rec loaded="& db.RecordsAffected

Вы можете настроить запрос так, чтобызапрос на добавление, если вам нужно добавить записи в таблицу.

...