Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment rapidement importer par lots plusieurs fichiers csv / text / xml dans Excel?

Dans Excel, vous avez peut-être lié pour enregistrer un classeur en tant que fichier csv, fichier texte ou fichier xml, mais avez-vous déjà essayé d'importer plusieurs fichiers csv / text / xml d'un dossier dans un classeur ou une feuille de calcul? Dans cet article, j'introduis quelques méthodes pour rapidement les importer par lots.

Importer plusieurs fichiers texte à partir d'un dossier dans chaque feuille de calcul d'un classeur avec VBA

Importer plusieurs fichiers CSV à partir d'un dossier dans une seule feuille avec VBA

Importer plusieurs fichiers XML à partir d'un dossier dans une seule feuille avec VBA

Importez ou combinez plusieurs fichiers xml / csv dans une feuille ou un classeur avec Kutools for Excel bonne idée3

Exporter chaque feuille en tant que csv / text / pdf dans un dossier avec Kutools for Excelbonne idée3


Combinez facilement plusieurs feuilles / classeurs en une seule feuille ou un classeur

Pour combiner plusieurs feuilles ou classeurs dans une feuille ou un classeur peut être difficile dans Excel, mais avec le Combiner Dans Kutools for Excel, vous pouvez combiner la fusion de dizaines de feuilles / classeurs en une seule feuille ou un seul classeur. Vous pouvez également consolider les feuilles en un seul clic. forte>Cliquez pour un essai gratuit complet de 30 days!
combiner des feuilles
Kutools for Excel: avec plus de X-300, très simple d'utilisation, gratuit à essayer sans limitation en jours 30.
Onglet Office Activer l'édition et la navigation par onglets dans Office, et simplifiez grandement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, graphiques et autres éléments les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement.
  • Plus que le texte 20 comprend: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Fusionner les outils: Plusieurs classeurs et feuilles en un; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils Split: Fractionner les données en plusieurs feuilles en fonction de la valeur; Un classeur pour plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller Sauter Lignes cachées / filtrées; Compte et somme par couleur de fond; Envoyez des e-mails personnalisés à plusieurs destinataires en bloc.
  • Super filtre: Créez des schémas de filtrage avancés et appliquez-les à toutes les feuilles. Trier par semaine, jour, fréquence et plus; Filtre en gras, formules, commentaires ...
  • Plus que de puissantes fonctionnalités 300; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.


Pour importer des fichiers texte d'un dossier dans un classeur, vous pouvez utiliser VBA ci-dessous pour le gérer rapidement.

1. Activer un classeur vide et appuyez sur Alt + F11 clés pour ouvrir Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Module, et collez le VBA au Module fenêtre.

VBA: importer tous les fichiers texte d'un dossier dans un classeur

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. presse F5 clé ou course Cliquez sur le bouton pour exécuter le VBA et sélectionnez un dossier dans lequel vous souhaitez importer les fichiers texte dans la boîte de dialogue contextuelle. Voir la capture d'écran:

doc import multiple csv texte xml 1

4. Et cliquez OKet chaque fichier texte dans le dossier sélectionné a été importé dans une feuille de calcul du classeur actif. Voir la capture d'écran:

doc import multiple csv texte xml 2doc import multiple csv texte xml 3

Pour importer tous les fichiers csv d'un dossier dans une seule feuille, vous pouvez utiliser le code VBA ci-dessous.

1. Activer une feuille de calcul vierge et appuyez sur Alt + F11 clés pour ouvrir Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Module, et coller sous VBA dans le nouveau Module fenêtre.

VBA: Importer des fichiers CSV à partir d'un dossier dans une feuille de calcul

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. presse F5 touche ou clic course bouton pour exécuter le VBA, et une boîte de dialogue apparaît pour sélectionner un dossier que vous souhaitez importer tous les fichiers CSV. Voir la capture d'écran:

doc import multiple csv texte xml 4

4. Cliquez OK, et une boîte de dialogue apparaît pour vous rappeler si effacer le contenu de la feuille de calcul active avant l'importation, ici je clique Oui. Voir la capture d'écran:

doc import multiple csv texte xml 5

Après avoir cliqué Oui, tous les fichiers csv du dossier sélectionné sont importés dans la feuille actuelle et placent les données de la colonne A à droite. Voir la capture d'écran:

doc import multiple csv texte xml 6doc import multiple csv texte xml 7

Pointe: Si vous souhaitez placer des fichiers CSV horizontalement dans une feuille de calcul, vous pouvez utiliser ci-dessous 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 

doc import multiple csv texte xml 8


Si vous souhaitez importer tous les fichiers XML d'un dossier dans une seule feuille, vous pouvez utiliser le code VBA ci-dessous.

1. Sélectionnez une feuille vierge dans laquelle vous souhaitez placer les données importées, puis appuyez sur Alt + F11 touches pour activer Microsoft Visual Basic pour applications fenêtre.

2. Cliquez insérer > Module, collez le code VBA dans le Module fenêtre.

VBA: Importer des fichiers XML à partir d'un dossier dans une feuille de calcul.

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. Cliquez course bouton ou F5 clé pour exécuter le VBA, et sélectionnez un dossier dans la boîte de dialogue popping, voir capture d'écran:

doc import multiple csv texte xml 9

4. Cliquez OKet tous les fichiers XML du dossier sélectionné sont importés dans la feuille active.


Si vous n'êtes pas familier avec VBA, ne vous inquiétez pas, ici, je vous présente un outil pratique - Kutools for Excel pour toi. Avec son puissant Combiner utilitaire, vous pouvez rapidement combiner plusieurs fichiers xml ou fichiers CSV dans un classeur ou une feuille Excel.

Kutools for Excel, avec plus de 300 fonctions pratiques, rend votre travail plus facile.

Après l'installation de Kutools pour Excel, s'il vous plaît faire comme ci-dessous:(Téléchargement gratuit Kutools pour Excel maintenant!)

1. Active Excel, et cliquez Entreprise > Combiner. Voir la capture d'écran:
doc combine 1

2. Et dans le étape 1 de Combine dialogue, choisissez une option de séparation selon vos besoins. Voir la capture d'écran:
doc combine 2

3. Cliquez Suivant aller à étape 2 de la moissonneuse-batteusecliquez Ajoutez ajouter des fichiers de divers dossiers ou fichiers d'un dossier à Classeur liste, et vous pouvez également spécifier les feuilles que vous souhaitez combiner Feuille liste de la section droite. Voir la capture d'écran:
doc combine 3

4. Cliquez Suivant à la dernière étape de Combineret vous pouvez spécifier les options.

1) Spécifiez le numéro de la ligne de titre

2) Décider si insérer des informations de feuille de calcul

3) Ignorer la plage vide ou non

4) Spécifiez l'option de collage
doc combine 4

5. Cliquez finition, une boîte de dialogue apparaît pour vous rappeler de sélectionner un emplacement pour enregistrer le nouveau résultat combiné. Voir la capture d'écran:
doc combine 5

6. Cliquez Épargnez. Toutes les feuilles d'ajout ont été combinées en une nouvelle feuille unique.
doc combine 6

Pointe: Avec Combiner, vous pouvez également combiner plusieurs des fichiers CSV former plusieurs dossiers ou un dossier dans une feuille ou un classeur.


Si vous souhaitez exporter chaque feuille en tant que fichier csv / text / pdf dans un dossier, Kutools for Excel's Manuel de travail divisé l'utilité peut faire une faveur pour vous.

Après installation gratuite Kutools pour Excel, s'il vous plaît faire comme ci-dessous:

1. Activez le classeur que vous souhaitez exporter ses feuilles de calcul et cliquez sur Entreprise > Classeur > Manuel de travail divisé. Voir la capture d'écran:

doc import multiple csv texte xml 10

2. dans le Manuel de travail divisé Dans la boîte de dialogue, vous pouvez vérifier les noms des feuilles à exporter, par défaut toutes les feuilles sont cochées et vérifier Spécifiez le format d'enregistrement et sélectionnez le format de fichier que vous souhaitez enregistrer dans la liste déroulante ci-dessous. Voir la capture d'écran:

doc import multiple csv texte xml 11

3. Cliquez Divisé et sélectionnez un dossier pour enregistrer les fichiers fractionnés dans le Parcourir pour le dossier dialogue, voir capture d'écran:

doc import multiple csv texte xml 12

4. Cliquez OK, maintenant toutes les feuilles cochées sont exportées en tant que nouveau format de fichier dans le dossier sélectionné.


convertir rapidement plusieurs XLSX. fichiers vers XLS ou PDF. fichiers en une fois

Dans la plupart des cas, vous pouvez convertir XLSX et XLS ou convertir un classeur en fichier PDF, mais dans Excel, vous ne pouvez convertir qu'un seul classeur à la fois, avez-vous déjà imaginé de convertir plusieurs classeurs à la fois? Avec Kutools for Excel's File Format Converter, vous pouvez rapidement convertir plusieurs classeurs en classeur pdf / 97-2003 / 2007 ou classeur supérieur en une fois et les enregistrer dans un dossier, en même temps, un rapport converti est généré! Cliquez pour l'essai gratuit de 60 days!
convertisseur de fichier doc
Kutools for Excel: avec plus de 300 compléments Excel pratiques, libre d'essayer sans limitation dans les jours 60.

Articles relatifs:


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Marshall Treynor · 5 months ago
    Hello - I've used your VBA codes to extract data from multiple CSV files to excel file (the code on this page) and convert csv files to excel files ( this one: https://www.extendoffice.com/documents/excel/4615-excel-batch-convert-csv-to-xls-xlsx.html), with great results. They helped me save a lot of time.

    However, I notice a common problem with both of these types of codes. To clarify, my system is set up to use the European standards for dates, while some of the CSV files I received for my work contain dates in US standards. The first problem is, when I extract or convert data from a CSV file that contains dates in US format, all of those dates are reversed (matching the EU standards used by my system). This is great but it also caused me troubles since I didn't know the codes would reverse the dates for me, so I went on ahead and did the same thing again. The second problem is, for the CSV files that contain dates already in the same format as the one used by my system (EU standards), only the ambiguous dates are reversed (i.e 04/05/2019 - 05/04/2019), while the ones that are too obvious, remain unchanged (i.e 30/04/2019).

    What I would like the codes to do, is the exact same thing as they are shown here, only that they should copy and paste the data (especially dates) in the exact formats used in the original files. This would help prevent any possible confusions and mistakes. I would like to learn VBA so I can one day write my own codes, but for now, I'm not even able to modify parts of the existing codes to suit my needs. So if you can help, please tell me where I should put the modified codes (that you come up with) to the existing codes. I appreciate all feedback & support I can get. Thank you all!
  • To post as a guest, your comment is unpublished.
    Scott W · 6 months ago
    Hi - I'm using the import all csv files into one file listed above "Import Multiple Csv Files From A Folder Into A Single Sheet With VBA"- i'd like to define the folder it collects the data from without having to manually choose it. Can this be done? thanks - SW.
    • To post as a guest, your comment is unpublished.
      Sunny · 5 months ago
      Hi, Scott W, I found a VBA code may can help you.
      Option Explicit

      Sub ImportCSVsWithReference()
      'Author: Jerry Beaucaire
      'Date: 10/16/2010
      'Summary: Import all CSV files from a folder into a single sheet
      ' adding a field in column A listing the CSV filenames

      Dim wbCSV As Workbook
      Dim wsMstr As Worksheet: Set wsMstr = ThisWorkbook.Sheets("Sheet1")
      Dim fPath As String: fPath = " C:\Users\DT168\Desktop\New folder\" 'path to CSV files, include the final \
      Dim fCSV As String

      If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Clear?") _
      = vbYes Then wsMstr.UsedRange.Clear

      Application.ScreenUpdating = False 'speed up macro

      fCSV = Dir(fPath & "*.csv") 'start the CSV file listing

      Do While Len(fCSV) > 0
      'open a CSV file
      Set wbCSV = Workbooks.Open(fPath & fCSV)
      'insert col A and add CSV name
      Columns(1).Insert xlShiftToRight
      Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
      'copy date into master sheet and close source file
      ActiveSheet.UsedRange.Copy wsMstr.Range("A" & Rows.Count).End(xlUp).Offset(1)
      wbCSV.Close False
      'ready next CSV
      fCSV = Dir
      Loop

      Application.ScreenUpdating = True
      End Sub
  • To post as a guest, your comment is unpublished.
    Jake Howard · 8 months ago
    Thank you. This site has been a big help. I have one issue I cannot figure out. I am trying to import multiple csv files into an excel separate sheets in excel and have each sheet renamed after the file name of the csv file. I know this was covered below for a txt file but I am working with csv files. Thanks in advance.
  • To post as a guest, your comment is unpublished.
    Shea · 1 years ago
    Hi! I used the code to merge multiple XML files into one, but unfortunately the columns got messed up. The 5 files being merged all had the same format. Is there anyway to fix this? I also was wondering if there was a way to get rid of the headers that are duplicated when the files are merged. Thank you!
  • To post as a guest, your comment is unpublished.
    Ramy Zahran · 1 years ago
    i have code to import txts to sheets each txt to each sheet, but i want every txt be imported with its name to sheet , i mean rename every imported sheet with the name of the txt the code file attatched .. thanks
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      Hello, Ramy, zahran, you can try below code which can import the text files and rename the sheet name to the text file name.
      Sub LoadPipeDelimitedFiles()
      'UpdatebyExtendoffice20180925
      Dim xStrPath As String
      Dim xFileDialog As FileDialog
      Dim xFile As String
      Dim xCount As Long
      Dim xWS As Worksheet

      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
      Set xWS = Sheets(xCount)
      xWS.Select
      xWS.Name = "TEXT " & Left(xFile, Len(xFile) - 4)
      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
  • To post as a guest, your comment is unpublished.
    rendy · 1 years ago
    hello, saya mau tanya kalo impor txt file ke satu sheet gimana ya?
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      Hello, rendy, would you want to import all txts to one sheet or each txt to each sheet?
      • To post as a guest, your comment is unpublished.
        Ramy Zahran · 1 years ago
        i have code to import txts to sheets each txt to each sheet, but i want every txt be imported with its name to sheet , i mean rename every imported sheet with the name of the txt the code file attatched .. i want to edit this file to add code for renaming sheets with txts name ... thanks.
  • To post as a guest, your comment is unpublished.
    Hey · 1 years ago
    It worked! Thanks
  • To post as a guest, your comment is unpublished.
    Amanda · 1 years ago
    Hello, I tried running the code for .xml and it didn't appear to work as I got the message "no files xml". How do fix this?
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      It will pop a message"no files xml" while your selected folder do not contain the xml files. You can select the right folder which contains xml files in popping dialog after run the code for importing them to the active sheet.
  • To post as a guest, your comment is unpublished.
    see · 1 years ago
    Totally amazing! Tried the open all csv files in one worksheet and it worked beautifully. Thanks so much, really!
  • To post as a guest, your comment is unpublished.
    Chad · 1 years ago
    Mike: "the code for converting from txt files did not work for me."

    I had the same problem.The macro errors out if you have more txt files to open than worksheets in your workbook (default is 3).
    I fixed it by adding the following just before the loop exits so the macro creates a new sheet after the rest
    ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
    • To post as a guest, your comment is unpublished.
      AJ · 1 years ago
      Chad, This perfectly worked for me to import multiple text files. Thank you.

      Do you know if there is a way to pull the file names? I want the text file names copied into each excel sheet tabs.
  • To post as a guest, your comment is unpublished.
    zoi · 1 years ago
    Hi! The code "Import csv files from a folder into one worksheet", works for me! But this code doesn't work for an empty .txt file. Is there any way to keep also the empty files?
    • To post as a guest, your comment is unpublished.
      Sunny · 1 years ago
      Sorry, I do not know why need to import an empty txt.file~Just insert blank rows to seperate the contents.
  • To post as a guest, your comment is unpublished.
    Mike · 2 years ago
    the code for converting from txt files did not work for me.
    • To post as a guest, your comment is unpublished.
      Sunny · 2 years ago
      Sorry this article do not work for you. Could you describe you problem? What happen while runing the code? And what system you work?
  • To post as a guest, your comment is unpublished.
    Patrick · 2 years ago
    Problem with this is that it the VBA command nor Kutools allows to import the csv files with character code formating. The preload is western. I need to import all the csv files as unicode-8
  • To post as a guest, your comment is unpublished.
    Abdissattar · 2 years ago
    Hi,I would like to understand about the VBA code for "Importing Multiple .txt files from a folder to a single sheet with VBA " by next available row (not horizontal). Please help,urgent
    • To post as a guest, your comment is unpublished.
      Sunny · 2 years ago
      Hello, if you want to import all txt files from one folder to a single sheet, you can using the above vba code to import txt files to a workbook first, then apply Kutools for Excel's Combine Worksheets feature to combine all sheets of a workbook to one sheet, then the txt files in a sheet. Hope it helps u.
  • To post as a guest, your comment is unpublished.
    XY · 2 years ago
    Hi,

    I would like to understand about the VBA code for "Import Multiple Xml Files From A Folder Into A Single Sheet With VBA".
    1. Why are 2 workbooks needed instead of 1?
    2. It is taking some time to load many xml files into excel, so is there a more efficient code? Because i realise when your code was run, many VBA workbook is created which caused the slowdown.

    I would really appreciate if you can help me to understand!
    • To post as a guest, your comment is unpublished.
      Sunny · 2 years ago
      Sorry, I did not understand ur first one question, and about the second one, the more effeicent code, I have not found it, if you know, please leave a note for me, thanks.
  • To post as a guest, your comment is unpublished.
    Thomas · 2 years ago
    Hi there, thank you very much for those code samples! The first one (VBA: Import all text files from a folder into a workbook) is almost exactly what I need. I would like, however, to select which files to import and not automatically import all the text files in any given folder. I would also like the exiting contents of my target sheets to be overwritten by the contents of the text files. (With the code above, the existing contents is shifted to the right instead of being replaced.)
    How do I go about that?
    Thanks in advance!