3

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

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

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

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

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

任何的想法 ?

4

1 回答 1

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

参考:
错误集合 (DAO)
错误对象 (DAO)
Schema.ini 文件(文本文件驱动程序)

于 2013-02-06T13:35:12.983 回答