Перейти к содержимому

Как быстро импортировать несколько CSV/текстовых/XML файлов в Excel?

Author: Sun Last Modified: 2025-06-05

В Excel вы, возможно, пробовали сохранить книгу в формате CSV, текстового файла или XML, но пробовали ли вы когда-нибудь импортировать несколько CSV/текстовых/XML файлов из папки в книгу или лист? В этой статье я представлю несколько методов для быстрого пакетного импорта.


Импорт нескольких текстовых файлов из папки в каждый лист книги с помощью VBA

Чтобы импортировать текстовые файлы из папки в книгу, вы можете использовать следующий код VBA для быстрой обработки.

1. Откройте пустую книгу и нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Insert > Module и вставьте код VBA в окно Module.

VBA: Импорт всех текстовых файлов из папки в книгу

Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\*.txt")
    Do While xFile <> ""
        xCount = xCount + 1
        Sheets(xCount).Select
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
          & xStrPath & "\" & xFile, Destination:=Range("A1"))
            .Name = "a" & xCount
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = 437
            .TextFileStartRow = 1
            .TextFileParseType = xlDelimited
            .TextFileTextQualifier = xlTextQualifierDoubleQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = False
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileOtherDelimiter = "|"
            .TextFileColumnDataTypes = Array(1, 1, 1)
            .TextFileTrailingMinusNumbers = True
            .Refresh BackgroundQuery:=False
            xFile = Dir
        End With
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files txt", , "Kutools for Excel"
End Sub

3. Нажмите клавишу F5 или кнопку Run, чтобы запустить VBA, и выберите папку, из которой хотите импортировать текстовые файлы в появившемся диалоговом окне. См. скриншот:

a screenshot of seleting a folder from which you want to import txt files

4. Нажмите OK, и каждый текстовый файл из выбранной папки будет импортирован на отдельный лист активной книги. См. скриншот:

a screenshot showing that each text file in the selected folder has been imported into different worksheets of the current workbooka screenshot showing that each text file in the selected folder has been imported into different worksheets of the current workbook 2
a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Импорт нескольких CSV файлов из папки на один лист с помощью VBA

Чтобы импортировать все CSV файлы из папки на один лист, вы можете использовать следующий код VBA.

1. Откройте пустой лист и нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Insert > Module и вставьте следующий код VBA в новое окно Module.

VBA: Импорт CSV файлов из папки на один лист

Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
    Dim xSht  As Worksheet
    Dim xWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Set xSht = ThisWorkbook.ActiveSheet
    If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\" & "*.csv")
    Do While xFile <> ""
        Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
        Columns(1).Insert xlShiftToRight
        Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
        ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
        xWb.Close False
        xFile = Dir
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files csv", , "Kutools for Excel"
End Sub

3. Нажмите клавишу F5 или кнопку Run, чтобы выполнить VBA, и появится диалоговое окно для выбора папки, из которой вы хотите импортировать все CSV файлы. См. скриншот:

a screenshot of seleting a folder from which you want to import csv files into a single worksheet

4. Нажмите OK, и появится диалоговое окно с напоминанием очистить содержимое активного листа перед импортом; здесь я нажимаю Да. См. скриншот:

a screenshot of a prompt box reminding that whether you want to clear the existing sheet before importing csv files

После нажатия Да, все CSV файлы из выбранной папки будут импортированы в текущий лист, начиная с столбца A направо. См. скриншот:

a screenshot showing that all csv files in the selcted folder are imported into the current worksheeta screenshot showing that all csv files in the selcted folder are imported into the current worksheet 2

Совет: Если вы хотите разместить CSV файлы горизонтально на листе, вы можете использовать следующий код VBA.

Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
    Dim xSht  As Worksheet
    Dim xWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Set xSht = ThisWorkbook.ActiveSheet
    If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
        xSht.UsedRange.Clear
        xCount = 1
    Else
        xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
    End If
    Application.ScreenUpdating = False
    xFile = Dir(xStrPath & "\" & "*.csv")
    Do While xFile <> ""
        Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
        Rows(1).Insert xlShiftDown
        Range("A1") = ActiveSheet.Name
        ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
        xWb.Close False
        xFile = Dir
        xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
    Loop
    Application.ScreenUpdating = True
    Exit Sub
ErrHandler:
    MsgBox "no files csv", , "Kutools for Excel"
End Sub 

a screenshot of importing csv files horizontally in a worksheet


Импорт нескольких XML файлов из папки на один лист с помощью VBA

Если вы хотите импортировать все XML файлы из папки на один лист, вы можете использовать следующий код VBA.

1. Выберите пустой лист, куда вы хотите поместить импортированные данные, и нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. Нажмите Insert > Module, вставьте код VBA в окно Module.

VBA: Импорт XML файлов из папки на лист.

Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
    Dim xWb As Workbook
    Dim xSWb As Workbook
    Dim xStrPath As String
    Dim xFileDialog As FileDialog
    Dim xFile As String
    Dim xCount As Long
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a folder [Kutools for Excel]"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    Application.ScreenUpdating = False
    Set xSWb = ThisWorkbook
    xCount = 1
    xFile = Dir(xStrPath & "\*.xml")
    Do While xFile <> ""
        Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
        xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
        xWb.Close False
        xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
        xFile = Dir()
    Loop
    Application.ScreenUpdating = True
    xSWb.Save
    Exit Sub
ErrHandler:
    MsgBox "no files xml", , "Kutools for Excel"
End Sub

3. Нажмите кнопку Run или клавишу F5, чтобы запустить VBA, и выберите папку в появившемся диалоговом окне, см. скриншот:

a screenshot of seleting a folder from which you want to import xml files into a single worksheet

4. Нажмите OK, и все XML файлы из выбранной папки будут импортированы на активный лист.


Импорт или объединение нескольких XML/CSV файлов в лист или книгу с помощью Kutools для Excel

Если вы не знакомы с VBA, не беспокойтесь, я представляю вам удобный инструмент – Kutools для Excel. С его мощной утилитой Combine, вы можете быстро объединить несколько XML файлов или CSV файлов в одну книгу или один лист Excel.

После установки Kutools для Excel, пожалуйста, сделайте следующее:(Бесплатная загрузка Kutools для Excel прямо сейчас!)

1. Активируйте Excel и нажмите Kutools Plus > Объединить. См. скриншот:
a screenshot of enabling the Combine feature of Kutools for Excel

2. В шаге 1 диалога Объединить выберите нужную опцию разделения. См. скриншот:
a screenshot of selecting one operation as you need in the Combine Worksheets wizard

3. Нажмите Далее чтобы перейти к шагу 2 диалога Объединить, нажмите Добавить чтобы добавить файлы из разных папок или файлы из одной папки в Книгу список, также вы можете указать листы, которые хотите объединить из Листа списка правой секции. См. скриншот:
a screenshot of adding files or folders and specifying the sheets you want to combine

4. Нажмите Далее до последнего шага Объединить, и вы можете указать параметры объединения.
a screenshot of specifying the combine options

5. Нажмите Завершить, появится диалоговое окно с напоминанием выбрать место для сохранения нового объединенного результата. См. скриншот:
a screenshot of selecting a location to save the new combined file

6. Нажмите Сохранить. Все добавленные листы были объединены в новый единый лист.
a screenshot showing all adding sheets have been combined into a new single worksheet

Совет: С помощью функции Объединить вы также можете объединить несколько CSV файлов из нескольких папок или одной папки в один лист или книгу.


Экспорт каждого листа как CSV/текст/PDF в папку с помощью Kutools для Excel

Если вы хотите экспортировать каждый лист как CSV/текст/PDF файл в папку, утилита Разделить Книгу Kutools для Excel может помочь вам.

После бесплатной загрузки и установки Kutools для Excel, пожалуйста, сделайте следующее:

1. Откройте книгу, которую хотите экспортировать, и нажмите Kutools Plus > Книга > Разделить Книгу. См. скриншот:

a screenshot of enabling the Split Workbook feature

2. В диалоговом окне Разделить Книгу вы можете отметить названия листов, которые нужно экспортировать; по умолчанию отмечены все листы. Также отметьте Указать формат сохранения и выберите желаемый формат файла из выпадающего списка ниже. См. скриншот:

a screenshot of checking the sheet names you will export and specifying a save format

3. Нажмите Разделить и выберите папку для сохранения разделенных файлов в диалоговом окне Browse for Folder, см. скриншот:

a screenshot of selecting a destination folder to save the exported files

4. Нажмите OK, теперь все отмеченные листы экспортированы в новый формат файла в выбранной папке.


Связанные статьи:


Лучшие инструменты для повышения продуктивности работы с Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных на основе: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Расширенных функций Kutools
Популярные функции: Найти, выделить или отметить дубликаты | Удалить пустые строки | Объединить столбцы или ячейки без потери данных |   Округлить без формулы ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP с несколькими значениями | Многолистовой поиск | Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Избранные функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгами и листами | Библиотека автотекста | Выбор даты | Объединить данные | Шифрование/расшифровка ячеек | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр ячеек с жирным/курсивом/зачёркнутым...) ...
Топ-15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ практических формул (Расчет возраста на основе даты рождения, ...) |19 инструментов вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов для объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое

Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!