gpt4 book ai didi

sql - VBA 代码 - 将文本文件导入 Access 表 - 有条件

转载 作者:行者123 更新时间:2023-12-05 05:25:06 26 4
gpt4 key购买 nike

我需要将文本文件导入到 Access 表中,但在 TXT 文件中使用导入条件。

下面是我的 VBA 代码。它仅在您不使用 WHERE 子句时起作用,因为它要求输入参数。我认为问题在于缺少字段格式规范。

您建议进行哪些调整?如有任何建议,我们将不胜感激。

文本文件 - Teste.txt

1;24;433;43;5
2;436;424;43;24
3;5454;656;656;555
4;545;545;0;0
5;65465;756;0;0

我的代码 VBA Access :

Sub MyTableImport()

Dim sqlStr As String

sqlStr = "SELECT * INTO NewTable "
sqlStr = sqlStr & " FROM [Text;HDR=Yes;FMT=Delimited;Database=C:\Temp].Teste.txt "
sqlStr = sqlStr & " WHERE field4 <> '0' AND field5 <> '0';"

DoCmd.SetWarnings False
DoCmd.RunSQL sqlStr
DoCmd.SetWarnings True

End Sub

最佳答案

我使用了 Schema.ini 方法,as Fionnuala suggested ,类似于您在问题的早期版本之一中所拥有的内容。

使用您的 Teste.txt 源文件和下面的 Schema.ini 和查询,这就是 NewTable 的结果。所有五个字段都是文本数据类型:

enter image description here

这是C:\Temp\Schema.ini:

[Teste.txt]
ColNameHeader=False
Format=Delimited(;)
Col1="field1" Text
Col2="field2" Text
Col3="field3" Text
Col4="field4" Text
Col5="field5" Text

这是创建 NewTable 的查询:

SELECT t.field1, t.field2, t.field3, t.field4, t.field5
INTO NewTable
FROM [Text;HDR=No;FMT=Delimited;Database=C:\Temp].[Teste.txt] AS t
WHERE (((t.field4)<>'0') AND ((t.field5)<>'0'));

关于sql - VBA 代码 - 将文本文件导入 Access 表 - 有条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32390960/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com