2013-06-28 16 views
1

Я получаю следующую ошибку при попытке запустить макрос, который в конечном итоге использует функцию DoCmd.TransferText. Вот ниже сообщение об ошибке:Ошибка MS Access 2003

Cannot find object. Make sure the object exists and you spell its name and path correctly 

Я использовал этот метод, прежде чем создать текстовый файл и добавить содержимое к нему либо из таблицы или запроса. Может ли кто-то поправить меня по этому вопросу, но не создает ли метод переноса текста файл, если он еще не существует?

Вот код, где я называю это:

'Create Dispense File 
DoCmd.TransferText acExportDelim, "DispenseExportSpec", "qryExport", DispenseFileName 
Call Sleep(5000) 

DoCmd.TransferText acExportDelim, "ExportDispenseCFSpec", "qryExportDispenseCF",  ExportDispenseCFName 
Call Sleep(5000) 

(нем не на первом) Это не может/не должна быть проблема с разрешениями, как у меня есть полный доступ на чтение/запись/редактирование способностей над папку и ее подпапки; это не проблема, поскольку я проверял несколько раз, так в чем проблема?

Access версии: MS Access 2003

Благодаря

+0

Проверьте, имеется ли DoCmd? Вы уверены, что это строки, на которых происходит ошибка? Можете ли вы показать больше кода? –

+0

@TobyAllen Я уверен, что здесь происходит ошибка, потому что она выполняется прямо до этой точки - я поставил точку останова на этой точной строке, затем перешел через F8, и она выбросила ошибку. – Katana24

+0

Вы пытались удалить аргумент spec и пусть он использует значение по умолчанию? Документация по этому вопросу выглядит неуклюжей. Просто выполните DoCmd.TransferText acExportDelim,, "qryExport", DispenseFileName'? Кажется, есть много условий, чтобы заставить его работать. Может быть, если это сработает, вы можете сузить свою отладку? – Bmo

ответ

2

Попробуйте удалить спецификации аргумент, и пусть это использовать по умолчанию? Документация по этому вопросу выглядит неуклюжей. Просто сделайте a DoCmd.TransferText acExportDelim, , "qryExport", DispenseFileName