循环浏览文件夹并将所有txt文件保存为Excel文件(特定格式)

循环浏览文件夹并将所有txt文件保存为Excel文件(特定格式),excel,vba,scripting,filesystemobject,Excel,Vba,Scripting,Filesystemobject,我想将.txt文件从文件夹导入Excel,并将其另存为Excel文件 代码不完整,但文件夹部件的循环在这两种情况下都不起作用 它曾经工作过一次,但一次打开的文件夹太多而冻结。我不得不在没有保存的情况下退出这个程序,从那以后它就不起作用了 以下是第一个代码: Sub getDataFromWbs() Dim wb As Workbook, ws As Worksheet Set fso = CreateObject(“Scripting.FileSystemObject”) Set fldr

我想将.txt文件从文件夹导入Excel,并将其另存为Excel文件

代码不完整,但文件夹部件的循环在这两种情况下都不起作用

它曾经工作过一次,但一次打开的文件夹太多而冻结。我不得不在没有保存的情况下退出这个程序,从那以后它就不起作用了

以下是第一个代码:

Sub getDataFromWbs()

Dim wb As Workbook, ws As Worksheet

Set fso = CreateObject(“Scripting.FileSystemObject”)
Set fldr = fso.GetFolder("E:\MA\05_Sensordaten\Test\TEST2\")

For Each wbFile In fldr.Files
    If fso.GetExtensionName(wbFile.Name) = “.txt” Then
        Set wb = Workbooks.Open(wbFile.Path)
        wb.Close
    End If
Next wbFile

End Sub
使用
Set fso=CreateObject(“Scripting.FileSystemObject”)

运行时错误424
必要的对象

我还尝试了
dir
方法:

Sub LoopImport2()

'Loop through all files in a folder

Dim FN As Variant

Application.ScreenUpdating = False

FN = Dir("E:\MA\05_Sensordaten\Test\TEST2\*.txt")

While FN <> ""

    'Insert the actions to be performed on each file

    Workbooks.OpenText Filename = FN, Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
      xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
      Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
      Array(2, 1)), DecimalSeparator:=",", TrailingMinusNumbers:=True

        ActiveSheet.Name = FN
        ActiveSheet.Cells.NumberFormat = "0.00"

    'Set the FN to the next file
    FN = Dir

Wend

End Sub

在第一个代码中,请尝试:

Dim fso As Object
“Scripting.FileSystemObject”
看起来有奇怪的双引号字符。尝试使用
“Scripting.FileSystemObject”


在第二个选项中,请将
Filename=FN
更改为
Filename:=FN

谢谢您的快速回答!丹尼尔·戈林格:如果它解决了你的问题,勾选“代码左侧”复选框将使答案被接受。这样,有人寻找类似的东西,就会知道它是有效的。。。
Workbooks.OpenText Filename = FN, Origin:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
  xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
  Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
  Array(2, 1)), DecimalSeparator:=",", TrailingMinusNumbers:=True