处理TransferText错误

时间:2013-02-06 13:19:53

标签: vba ms-access error-handling access-vba runtime-error

我有一个 Access-2007 应用程序,我使用Visual Basic从文本文件导出/导入表。

DoCmd.TransferText acExportDelim, "MySpec", "Table1", "c:\table1.txt", True

DoCmd.TransferText acImportDelim, "MypSpec", "Table1", "c:\table1.txt", True

我想捕获此方法可以引发的所有错误。我希望得到这个方法的错误号列表,我在MSDN上搜索但我没有找到任何东西。

如果导入失败,我还想阻止访问创建 ImportErrors 表。

有什么想法吗?

1 个答案:

答案 0 :(得分:5)

如果要预先测试数据,可以使用SQL。

使用schema.ini文件并直接导入到MS Access。 schema.ini文件与规范相当。

[imp.txt]
ColNameHeader=False
Format=FixedLength
Col1=ID  Char Width 8
Col2=AName  Char Width 10
Col3=Mark Char Width 2

SQL

SELECT * INTO Imp FROM [Text;DATABASE=Z:\docs].[imp.txt]

在VBA中:

Dim db As Database
Set db = CurrentDB

sSQL = "SELECT * INTO Imp FROM [Text;DATABASE=Z:\docs].[imp.txt]"
db.Execute sSQL, dbFailOnError

参考文献:
Errors Collection (DAO)
Error Object (DAO)
Schema.ini File (Text File Driver)