Ouverture de tous les classeurs à partir d’un dossier avec Excel VBA

Voici le scénario: napisates une grande macro qui automatise le traitement de chaque classeur ouvert. Le problème est que vous devez maintenant accéder au dossier, y ouvrir tous les classeurs, exécuter la macro, enregistrer le classeur, le fermer, puis passer au suivant et répéter le processus.

L’ouverture d’un classeur dans un dossier est un casse-tête typique. La macro suivante résout ce problème.
La fonction Dir est utilisée dans la macro et renvoie le nom du fichier (sous la forme d’une chaîne de caractères). Dans le code suivant, la fonction Dir est utilisée pour énumérer tous les fichiers .xslx présents dans un répertoire donné, et récupérez le nom de chacun. Ensuite, chaque fichier sera
ouvert, un certain code y sera créé, puis le fichier sera fermé.

Sub OuvertureTousClasseurs()
'Étape 1: Déclaration des variables
Dim MesFichiers As String
'Étape 2: Indication du répertoire cible
MesFichiers = Dir("C:\Temp\*.xlsx")
Do While MesFichiers <> ""
'Étape 3: Ouvrez plus de classeurs
Workbooks.Open "C:\Temp\" & MesFichiers
'Exécution de certains codes
MsgBox ActiveWorkbook.Name
ActiveWorkbook.Close SaveChanges:=True
'Étape 4: Le fichier suivant du dossier
MesFichiers = Dir
Loop
End Sub

Commentaires:

1. Dans la première étape, la variable MesFichiers est déclarée, ce qui capturera les noms des fichiers suivants.
2. Dans la deuxième étape, la fonction Dir a été utilisée pour indiquer le répertoire et le type de fichiers à rechercher. Selon le code, seuls les fichiers * .xslx seront recherchés. Cela signifie que seuls ces fichiers seront traités dans la boucle. Si vous devez appliquer une macro à des fichiers .xls, le code doit être modifié (cela s’applique également au nom du répertoire dans lequel effectuer la recherche). La macro transmet la variable MesFichiers au nom de chaque fichier trouvé.
3. Dans la troisième étape, le fichier est ouvert, une action spécifique est exécutée (vous pouvez entrer le code de n’importe quelle macro), puis sauvegardée et fermée. Dans cet exemple simple, nous apportons une boîte de message contenant le nom de chaque fichier ouvert.
4. La dernière étape consiste à effectuer une boucle et à répéter la recherche des fichiers suivants. S’il n’y a plus de fichiers, la variable MesFichiers es sera vide. Dans ce cas, la boucle et la macro terminent l’opération.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x