Excel : additionnez des factures sans les ouvrir
Dans un dossier, un certain nombre de classeurs Excel sont regroupés, chacun correspondant à une facture. Ces factures ont toutes la même structure : le total à payer se trouve toujours dans la cellule H10. Comment totaliser automatiquement les montants de toutes les factures du dossier, sachant qu'il en arrive régulièrement de nouvelles ?
Pour résoudre votre problème, vous allez créer une macro qui examinera tous les classeurs du dossier (C:\Factures dans notre exemple) et additionnera les valeurs de la cellule H10 de chacun.
Pour cela, créez un classeur Excel dans un autre dossier puis tapez Alt + F11 pour ouvrir l'éditeur VBA. Déroulez le menu Insertion, Module et saisissez le listing ci-contre.
Sub Total_Factures()
Total = 0
Dim NomFichier As String
NomFichier = Dir("C:\Factures\*.XLS")
Do Until NomFichier = ""
Workbooks.Open Filename:="C:\Factures\" & NomFichier
'-- Instructions effectuées pour chaque fichier ------
Total = Total + [H10] : ActiveWorkbook.Close
NomFichier = Dir
Loop
MsgBox "Total des factures " & Total
End Sub
Revenez à Excel et tapez Alt + F8, sélectionnez Total_Factures et cliquez sur Exécuter. Le total s'affiche dans une boîte de dialogue. Notez que, en remplaçant Total = Total + [H10] par les instructions de votre choix, vous pouvez appliquer n'importe quel traitement à un ensemble de classeurs. (Source 01 net)