Использование переменной в команде WScript.Shell в Excel VBA. Команда предназначена для объединения нескольких файлов tsv в 1.
Жесткое кодирование пути работает, но я изо всех сил пытаюсь включить это, используя переменную
Sub Combine()
Dim wsh As Object
Set wsh = VBA.CreateObject("WScript.Shell")
Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1
wsh.Run "cmd /c type C:\Path\SubDir\*.tsv > C:\Path\SubDir\All.txt", windowStyle, waitOnReturn
End Sub
Попытка использовать переменную:
Dim FileName As String
Dim cmd_01 As String
FileName = SubDir
cmd_01 = "type C:\Path\" & FileName & "\*.tsv > C:\Path\" & FileName & "\All.txt"
wsh.Run "cmd /c & cmd_01 & """, windowStyle, waitOnReturn
Я ожидаю, что в итоге получится один файл с именем All.txt, и это работает, когда я жестко кодирую всю команду, но я бы хотел использовать переменную, поскольку у меня есть несколько каталогов для перебора. Я пробовал несколько вариантов вышеописанного, но безрезультатно - кажется, что оно быстро открывает окно командной строки, но фактически не запускает команду для объединения файлов.