从.Net使用DoCmd.TransferText()时,我的schema.ini文件被忽略

时间:2017-11-03 22:44:29

标签: ms-access access-vba schema office-interop

我的schema.ini文件被忽略。无论我是否有一个与我的标签文件位于同一文件夹中的scheme.ini文件,我都会得到相同的结果。所有列最终都在一列中。我正在尝试使用schema.ini,因为我正在导入制表符分隔文件。如果它试图导入逗号分隔文件,则结果非常有意义。

所以我的假设是schema.ini文件被忽略了。

我正在使用Microsoft Access 14.0 Object.Library从.Net程序运行Access。

我在.net:

中使用此命令
Access.DoCmd.TransferText( Microsoft.Office.Interop.Access.AcTextTransferType.acImportDelim, , TableName, TabFile, HasFieldNames)

这是我的schema.ini文件,并不重要,因为它被完全忽略了:

[impacts.txt]
Format=TabDelimited
ColNameHeader=True
MaxScanRows=0

线索?谢谢!

编辑: 我尝试在Access模块​​中运行它,结果相同。

我尝试编辑注册表以更改那里的Format值。相同的结果。

1 个答案:

答案 0 :(得分:2)

考虑一个动作查询,append或make-table,因为schema.ini文件的使用可以直接在文本文件的Access查询中工作。下面假定.ini文件与文本文件位于同一目录中。

INSERT INTO mytableName
SELECT * FROM [text;Database=C:\Path\To\Text\File].[impacts.txt]

SELECT * INTO newtableName FROM [text;Database=C:\Path\To\Text\File].[impacts.txt]