Привет, У меня возникла проблема с преобразованием таблиц Excel в txt-файлы.Пакетное преобразование Excel в файлы с разделителями текста
Что я хочу сделать, так это создать макрос, который может принимать все файлы xls в одной папке и преобразовывать их в файлы txt.
Код в настоящее время работает на
Sub Combined()
Application.DisplayAlerts = False
Const fPath As String = "C:\Users\A9993846\Desktop\"
Dim sh As Worksheet
Dim sName As String
Dim inputString As String
With Application
.Calculation = xlCalculationManual
.EnableEvents = False
.ScreenUpdating = False
End With
sName = Dir(fPath & "*.xls*")
Do Until sName = ""
With GetObject(fPath & sName)
For Each sh In .Worksheets
With sh
.SaveAs Replace(sName, ".xls*", ".txt"), 42 'UPDATE:
End With
Next sh
.Close True
End With
sName = Dir
Loop
With Application
.Calculation = xlAutomatic
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
Но это не работает, как и ожидалось, у меня 0 знания на VB. Любой, кто хочет дать руку?
Как именно это "не работает, как ожидалось"? Какие результаты вы получаете и как они отличаются от ожидаемых результатов? –
Err, строка .SaveAs Replace (sName, .xls * "," .txt "), 42 'UPDATE: вызывают ошибку ошибки времени выполнения' 1004 '. После замены sh.SaveAs ePath & sName + sh.Name + ".txt", xlTextWindows, все работает нормально. Но на самом деле прибегаю к твоей доброй помощи! –
BTW ePath - это новый путь, где я хочу поместить файлы, определенные как Const ePath As String = "C: \ Users \ A9993846 \ Desktop \ Test \" –