PaliSkill
Introduction au VBA

Leçon 10 / 10 — Chapitre 8: Mise en pratique : automatiser le suivi financier et comptable

Consolider les comptes de plusieurs filiales

Cette leçon combine Dir() et Workbooks.Open pour additionner automatiquement le résultat de plusieurs filiales, chacune suivie dans son propre classeur comptable, sans ouverture manuelle fichier par fichier.

Sub ConsoliderComptesFiliales()
    Dim nomFichier As String
    Dim classeurFiliale As Workbook
    Dim resultatConsolide As Double
    resultatConsolide = 0

    nomFichier = Dir("C:\Filiales\*.xlsx")

    Do While nomFichier <> ""
        Set classeurFiliale = Workbooks.Open("C:\Filiales\" & nomFichier)
        resultatConsolide = resultatConsolide + classeurFiliale.Worksheets(1).Range("B1").Value
        classeurFiliale.Close SaveChanges:=False
        nomFichier = Dir()
    Loop

    MsgBox resultatConsolide
End Sub

Le premier appel Dir("C:\Filiales\*.xlsx") ne renvoie que les fichiers se terminant par .xlsx, en ignorant tout autre type de fichier présent dans le même dossier ; chaque classeur trouvé est ensuite ouvert, sa valeur en B1 ajoutée au résultat consolidé, puis refermé sans être modifié.

À vous de jouer : adaptez cette macro pour ne consolider que les fichiers dont le nom commence par "Filiale_", en combinant Dir() avec un test supplémentaire sur le nom de fichier.

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 76 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès