Comment importer rapidement et en lot plusieurs fichiers CSV, texte ou XML dans Excel ?
Dans Excel, vous avez probablement déjà enregistré un classeur au format CSV, fichier texte ou XML, mais avez-vous déjà essayé d’importer plusieurs fichiers CSV, texte ou XML depuis un dossier directement dans un classeur ou une feuille de calcul ? Dans cet article, je vous présente quelques méthodes pour les importer rapidement et par lots.
Importer plusieurs Fichier texte depuis un dossier vers des feuilles de calcul distinctes d’un classeur à l’aide de VBA
Pour importer des fichiers texte depuis un dossier vers un classeur, utilisez la macro VBA ci-dessous et gagnez du temps sur cette opération.
1. Ouvrez un classeur vierge, puis appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module, puis collez la macro VBA dans la fenêtre du Module.
VBA : Importer tous les Fichier texte d’un dossier vers 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. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour lancer la macro VBA, puis, dans la boîte de dialogue qui s’ouvre, sélectionnez le dossier contenant les fichiers texte que vous souhaitez importer. Voir la capture d’écran :

4. Cliquez ensuite sur OK, et chaque fichier texte du dossier sélectionné est importé dans une feuille de calcul distincte du classeur actuel. Voir la capture d’écran :



Libérez la magie d’Excel avec Kutools IA
- Exécution intelligente : effectuez des opérations sur les cellules, analysez des données et créez des graphiques, le tout à partir de commandes simples.
- formules personnalisées : créez des formules sur mesure pour rationaliser vos flux de travail.
- Programmation VBA : Écrivez et implémentez du code VBA en toute simplicité.
- Interprétation de formules : Décryptez facilement les formules complexes.
- Traduction de texte : Franchissez les barrières linguistiques directement depuis vos feuilles de calcul.
Importer plusieurs fichiers csv d’un dossier vers une seule feuille à l’aide de VBA
Pour importer tous les fichiers CSV d’un dossier vers une seule feuille, utilisez le code VBA ci-dessous.
1. Ouvrez une feuille de calcul vierge, puis appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module, puis collez la macro VBA ci-dessous dans la nouvelle fenêtre du Module.
VBA : Importer des fichiers csv d’un dossier vers une seule 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. Appuyez sur la touche F5 ou cliquez sur le bouton Exécuter pour exécuter la macro VBA. Une boîte de dialogue s’ouvre alors afin que vous puissiez sélectionner un dossier contenant tous les fichiers CSV à importer. Voir la capture d’écran :

4. Cliquez sur OK, puis une autre boîte de dialogue s’ouvre pour vous demander si vous souhaitez effacer le contenu de la feuille active avant l’importation ; ici, je clique sur Oui. Voir la capture d’écran :

Après avoir cliqué sur Oui, tous les fichiers CSV du dossier sélectionné sont importés dans la feuille de calcul active, et les données sont insérées à partir de la colonne A vers la droite. Voir la capture d’écran :


Astuce : Si vous souhaitez disposer vos fichiers CSV horizontalement dans une feuille de calcul, utilisez la macro VBA ci-dessous.
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 
Importer plusieurs fichiers xml d’un dossier vers une seule feuille à l’aide de VBA
Pour importer tous les fichiers XML d’un dossier vers une seule feuille, utilisez le code VBA ci-dessous.
1. Sélectionnez une feuille vierge où vous souhaitez importer vos données, puis appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module, puis collez le code VBA dans la fenêtre du Module.
VBA : Importez des fichiers XML d’un dossier directement 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 sur le bouton Exécuter ou appuyez sur la touche F5 pour exécuter la macro VBA, puis sélectionnez Sélectionner un dossier dans la boîte de dialogue qui s’ouvre. Voir la capture d’écran :

4. Cliquez sur OK et tous les fichiers XML du dossier sélectionné seront importés dans la feuille de calcul actuelle.
Importer ou combiner plusieurs fichiers xml/csv vers une feuille ou un classeur avec Kutools pour Excel
Si vous n’êtes pas à l’aise avec VBA, ne vous inquiétez pas : je vous présente un outil indispensable – Kutools pour Excel. Grâce à sa puissante fonctionnalité Combiner, fusionnez en un clin d’œil plusieurs fichiers XML ou CSV dans un seul classeur ou une seule feuille Excel.
Après avoir installé Kutools pour Excel, procédez comme suit :(Téléchargement gratuit de Kutools pour Excel dès maintenant !)
1. Activez Excel, puis cliquez sur KUTOOLS PLUS > Combiner. Voir la capture d’écran :
2. Dans la première étape de la boîte de dialogue Combiner, choisissez l’option de séparation souhaitée. Voir la capture d’écran :
3. Cliquez sur Suivant pour accéder à l’étape 2 de la boîte de dialogue Combiner, puis cliquez sur Ajouter pour sélectionner des dossiers ou des fichiers provenant d’un même dossier et les ajouter à la liste Classeur ; vous pouvez également spécifier les feuilles à combiner dans la liste Feuille située dans la section de droite. Voir la capture d’écran :
4. Cliquez sur Suivantpour accéder à l’étape Dernière cellule de la boîte de dialogue Combiner, où vous pouvez définir les options de combinaison.
5. Cliquez sur Terminer : une boîte de dialogue s’ouvre alors pour vous inviter à choisir un emplacement où enregistrer le nouveau résultat combiné. Voir la capture d’écran :
6. Cliquez sur Enregistrer. Toutes les feuilles ajoutées ont été fusionnées en une seule feuille.
Astuce : Grâce à la fonction Combiner, vous pouvez également fusionner plusieurs fichiers CSV provenant de plusieurs dossiers ou d’un même dossier vers une seule feuille ou un seul classeur.
Exporter chaque feuille au format csv/texte/pdf vers un dossier avec Kutools pour Excel
Si vous souhaitez exporter chaque feuille au format CSV, texte ou PDF vers un dossier, la fonction Kutools pour Excel : Séparer le classeur est faite pour vous.
Après avoir téléchargé et installé gratuitementKutools pour Excel, procédez comme suit :
1. Ouvrez le classeur dont vous souhaitez exporter les feuilles, puis cliquez sur KUTOOLS PLUS > Classeur > Séparer le classeur. Voir la capture d’écran :

2. Dans la boîte de dialogue Séparer le classeur, vous pouvez cocher les noms des feuilles à exporter (toutes les feuilles sont sélectionnées par défaut) et activer l’option Spécifier le format d’enregistrement, puis choisir le type de fichier souhaité dans la liste déroulante ci-dessous. Voir la capture d’écran :

3. Cliquez sur Diviser, puis sélectionnez l’emplacement d’enregistrement des fichiers divisés dans la boîte de dialogue Parcourir les dossiers. Voir la capture d’écran :

4. Cliquez sur OK : toutes les feuilles cochées sont désormais exportées sous forme de nouveaux fichiers du type sélectionné dans le dossier choisi.
Articles associés :
- Comment transformer un lien hypertexte en texte brut dans Excel ?
- Comment convertir un nombre décimal en nombre binaire/octal/hexadécimal ou inversement dans Excel ?
- Comment insérer un taux de change en temps réel dans Excel ?
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition et la lecture par onglets 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 vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels