Вставить в лист excel множество txt из папки - VBA
Формулировка задачи:
Добрый день!
Необходимо вставить в один лист excel однотипные .txt, лежащие в одной папке с .xls, в каждом .txt два столбца, разделитель " ". Каждый новый .txt должен вставляться в соседний за предыдущей вставкой столбик.
Буду очень благодарен за помощь.
Решение задачи: «Вставить в лист excel множество txt из папки»
textual
Листинг программы
- Sub Макрос1()
- Dim p, f, i
- p = ThisWorkbook.Path & Chr(92)
- f = Dir(p & "*.txt")
- i = 1
- While f <> ""
- 'далее код, полученный записью команды Данные - Получить внешние данные - Из текста, с небольшой правкой
- With ActiveSheet.QueryTables.Add(Connection:= _
- "TEXT;" & p & f, Destination:=Cells(1, i))
- .Name = "Текстовый документ"
- .FieldNames = True
- .RowNumbers = False
- .FillAdjacentFormulas = False
- .PreserveFormatting = True
- .RefreshOnFileOpen = False
- .RefreshStyle = xlInsertDeleteCells
- .SavePassword = False
- .SaveData = True
- .AdjustColumnWidth = True
- .RefreshPeriod = 0
- .TextFilePromptOnRefresh = False
- .TextFilePlatform = 1252
- .TextFileStartRow = 1
- .TextFileParseType = xlDelimited
- .TextFileTextQualifier = xlTextQualifierDoubleQuote
- .TextFileConsecutiveDelimiter = True
- .TextFileTabDelimiter = False
- .TextFileSemicolonDelimiter = False
- .TextFileCommaDelimiter = False
- .TextFileSpaceDelimiter = True
- .TextFileColumnDataTypes = Array(1, 1)
- .TextFileTrailingMinusNumbers = True
- .Refresh BackgroundQuery:=False
- .Delete
- End With
- 'конец записанного кода
- f = Dir
- i = i + 2
- Wend
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д