2012-06-21 324 views
4

我创建了一个测试MS Access数据库导出表到Excel和txt文件。Microsoft Office Access数据库引擎找不到对象

对于Excel,我用

DoCmd.OutputTo acOutputQuery, "QryExportToExcel", _ 
acFormatXLS, XFile, False 

这工作得很好,并获得出色的输出

但对于文本文件,我创建了一个规范,并使用此代码

DoCmd.TransferText acExportDelim, "Mytable Import Specification", "mytable", "D:\myfolder\test1.txt", False 

当我点击这个按钮获得跟随错误。

Microsoft Office Access数据库引擎找不到对象 “test1#txt”。请确保该对象存在并且您拼写其名称 和路径名。

即使我试图在同一路径下创建test1.txt的。令我惊讶的是,当我点击这个按钮时,这会删除已经存在的文件。

此外,我已经给出了代码,但在错误我得到“测试1#TXT”

软件“test1.txt的”:MS Access 2007年

请帮助我,我困惑

Error which i got

+0

对不起HansUp FileDir是“D:\ myfolder \”。为了便利,我在这个问题中硬编码路径。 – shanmugamgsn

+0

哦,你是对的。 SpecificationName存在问题。如果我删除那个我可以出口。但是我需要一个用于导出的分隔符​​。我怎么能没有** SpecicationName **实现。你有任何代码吗? – shanmugamgsn

+0

嘿HansUp我得到了错误的人。因为我使用导出规范导出文件。所以我删除它,并给出了一个出口规格名称 – shanmugamgsn

回答

0

因为你正在做DoCmd.TransferText,访问被期待该文件个Test1.txt在该位置存在。先尝试创建文件,然后再进行文本传输。

你可以试试这个代码导出之前创建的文件:

Public Sub CreateExportFile() 
Dim strFileName As String 
Dim SomeStringToOutput 

strFileName = "d:\myfolder\test1.txt" 
Open strFileName For Output As #1 

End Sub 
1

了Microsoft Office Access databasse引擎找不到对象 “测试1#TXT”。确保对象存在,并且正确拼写其名称和路径名。

这是一个通用(和相当无用的)错误信息的情况下,进入产出什么出错。一个例子是导入/导出规范中的拼写错误的字段名称。

您可以在Access用户界面中的“手动”,试图导入操作(而不是通过代码)得到了“真正的”错误消息。

1

问题撰文报道称,问题是“因为我是使用进口规范导出的文件。”

他通过使用导出规范解决了这个问题。

0

我遇到了类似的情况,发现文件schema.ini位于目标文件夹中。这是以前执行acExportMerge时创建的,并且导致了此错误。确保在执行新的TransferText之前文件已被删除。

相关问题