我正在尝试将.dat文件转换为固定宽度的.dat文件。当我使用Macro Recorder时,会弹出这个:
Sub Macro6()
Workbooks.OpenText Filename:= _
"G:\N5Baseline\E1 and E3 Neuroscan\header files\2026E1BEC-1hB.dat", Origin:= _
437, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), _
Array(7, 1), Array(22, 1), Array(35, 1), Array(44, 1), Array(55, 1), Array(68, 1), Array(79 _
, 1), Array(88, 1), Array(99, 1), Array(110, 1)), TrailingMinusNumbers:=True
ChDir "C:\Users\admin\Desktop"
ActiveWorkbook.SaveAs Filename:="C:\Users\admin\Desktop\Filename1.txt", _
FileFormat:=xlText, CreateBackup:=False
End Sub
我希望能够在同一文件夹中的数百个文件上运行此宏。我希望它打开这个.dat文件,将其转换为固定宽度的.dat文件,然后将其保存在同一个文件夹中。我对VB脚本不太满意,所以如果可能请保持温和。
答案 0 :(得分:0)
使用此代码查找所需的文件:
Dim FName As String
FName = Dir("e:\0\a\*.dat")
Do While FName <> ""
Debug.Print FName
FName = Dir
Loop
代替Debug.print,放置代码......或使用如下参数调用您的过程:
Macro6 ("e:\0\a\", FName)
新文件应命名为:
Left(FName, Len(FName) - 3) & "txt"
保存后,关闭文件
ActiveWorkbook.Close