Вставить в лист 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5
Похожие ответы