Comment importer plusieurs fichiers texte à partir d'un dossier dans une seule feuille de calcul ?
Par exemple, vous avez un dossier contenant plusieurs fichiers texte et vous souhaitez les importer dans une seule feuille de calcul, comme le montre la capture d'écran ci-dessous. Au lieu de copier les fichiers texte un par un, existe-t-il des astuces pour importer rapidement les fichiers texte d'un dossier dans une seule feuille ?
Importer plusieurs fichiers texte à partir d'un dossier dans une seule feuille avec VBA
Importer un fichier texte vers la cellule active avec Kutools pour Excel
Importer plusieurs fichiers texte à partir d'un dossier dans une seule feuille avec VBA
Voici un code VBA qui peut vous aider à importer tous les fichiers texte d'un dossier spécifique dans une nouvelle feuille.
1. Activez le classeur où vous souhaitez importer les fichiers texte, puis appuyez sur Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insérer > Module, copiez et collez le code VBA ci-dessous dans la fenêtre du module.
VBA : Importer plusieurs fichiers texte d'un dossier vers une seule feuille
Sub Test()
'UpdatebyExtendoffice6/7/2016
Dim xWb As Workbook
Dim xToBook As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xFiles As New Collection
Dim I As Long
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
If Right(xStrPath, 1) <> "\" Then xStrPath = xStrPath & "\"
xFile = Dir(xStrPath & "*.txt")
If xFile = "" Then
MsgBox "No files found", vbInformation, "Kutools for Excel"
Exit Sub
End If
Do While xFile <> ""
xFiles.Add xFile, xFile
xFile = Dir()
Loop
Set xToBook = ThisWorkbook
If xFiles.Count > 0 Then
For I = 1 To xFiles.Count
Set xWb = Workbooks.Open(xStrPath & xFiles.Item(I))
xWb.Worksheets(1).Copy after:=xToBook.Sheets(xToBook.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = xWb.Name
On Error GoTo 0
xWb.Close False
Next
End If
End Sub
3. Appuyez sur F5 pour afficher une boîte de dialogue, puis sélectionnez un dossier contenant les fichiers texte que vous souhaitez importer. Voir la capture d'écran :
4. Cliquez sur OK. Les fichiers texte seront ensuite importés dans le classeur actif sous forme de nouvelles feuilles distinctes.
Importer un fichier texte vers la cellule active avec Kutools pour Excel
Si vous souhaitez importer un fichier texte vers une cellule ou une plage spécifique, vous pouvez utiliser l'utilitaire Insérer un fichier à l'emplacement du curseur de Kutools pour Excel.
Après avoir installé gratuitement Kutools pour Excel, veuillez procéder comme suit :
1. Sélectionnez une cellule où vous souhaitez importer le fichier texte, puis cliquez sur Kutools Plus > Import/ Export > Insérer un fichier à l'emplacement du curseur. Voir la capture d'écran :
2. Une boîte de dialogue s'affiche, cliquez sur Parcourir pour afficher la Sélectionner un fichier à insérer à la position du curseur de la cellule, puis sélectionnez Fichiers texte dans la liste déroulante, et choisissez ensuite le fichier texte que vous souhaitez importer. Voir la capture d'écran :
3. Cliquez sur Ouvrir > Ok, et le fichier texte spécifié sera inséré à la position du curseur. Voir la capture d'écran :
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la 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 facilite grandement votre travail
- Activez la modification 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é de50 %, et réduit des centaines de clics de souris pour vous chaque jour !