如何将多个文本文件的数据导入一个Excel工作表?

时间:2013-04-29 14:38:27

标签: excel excel-vba vba

我想将位于一个文件夹中的许多txt文件的数据放到一个excel表中。

我录制了一个宏并最终打开了不同工作簿中的文件,请你修改下面的代码或创建一个新的代码,这样我就可以阅读所有的txt文件并将数据放入1个excel表中?

Sub GetTxtData()

ChDir "C:\Users\Desktop\TXT"
Workbooks.OpenText Filename:="C:\Users\Desktop\TXT\Data0.txt", Origin:= _
    xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
    , ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:= _
    False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1) _
    , Array(3, 1), Array(4, 1), Array(5, 1)), TrailingMinusNumbers:=True

Workbooks.OpenText Filename:="C:\Users\Desktop\TXT\Data1.txt", _
    Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
    Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
    TrailingMinusNumbers:=True
End Sub

谢谢你,Marc

1 个答案:

答案 0 :(得分:0)

尝试导入数据而不是打开csv文件。

在Excel 2007中,这是由Data,From Text。

完成的

你会得到类似的东西: ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;C:\Users\Desktop\TXT\Data0.txt", Destination:=Range("$A$1")) ...

您将不得不在代码中更改目标,以防止文件在同一位置相互覆盖。我会使用一个完整的地址,包括表单名称,如果我想要它们都在不同的表格上。