VBA : Comment ouvrir tous les fichiers du dossier
Vous pouvez utiliser une boucle Do While avec la méthode Workbooks.Open dans VBA pour ouvrir tous les fichiers d’un dossier particulier.
Voici une manière courante de procéder dans la pratique :
Sub OpenAllFilesInFolder()
Dim ThisFolder As String
Dim ThisFile As String
'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")
'open each xlsx file in folder
Do While ThisFile <> ""
Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
ThisFile = Dir
Loop
End Sub
Cette macro particulière ouvre tous les fichiers avec une extension .xlsx dans le dossier suivant :
- C:\Utilisateurs\bob\Documents\current_data
L’exemple suivant montre comment utiliser cette macro dans la pratique.
Connexe : Comment obtenir une liste de tous les classeurs ouverts à l’aide de VBA
Exemple : Comment ouvrir tous les fichiers d’un dossier à l’aide de VBA
Supposons que nous ayons le dossier suivant appelé current_data qui contient trois fichiers .xlsx :
Supposons que nous souhaitions utiliser VBA pour ouvrir tous les fichiers .xlsx de ce dossier.
Nous pouvons créer la macro suivante pour ce faire :
Sub OpenAllFilesInFolder()
Dim ThisFolder As String
Dim ThisFile As String
'specify folder location and types of files to open in folder
ThisFolder = "C:\Users\bob\Documents\current_data"
ThisFile = Dir(ThisFolder & "\*.xlsx")
'open each xlsx file in folder
Do While ThisFile <> ""
Workbooks.Open Filename:=ThisFolder & "\" & ThisFile
ThisFile = Dir
Loop
End Sub
Lorsque nous exécutons cette macro, chaque fichier avec une extension .xlsx dans le dossier sera ouvert un par un.
Notez que si l’un des fichiers du dossier est déjà ouvert, ces fichiers resteront simplement ouverts.
Remarque : Vous pouvez trouver la documentation complète de la méthode Workbooks.Open dans VBA ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
Comment renommer un fichier à l’aide de VBA
Comment répertorier les fichiers dans un dossier à l’aide de VBA
Comment vérifier si le fichier existe à l’aide de VBA