L'Enregistreur de macros est totalement inadapté aux macros complexes, qui doivent traiter chaque fois un nombre différent de cellules ou dans lesquelles il faut prendre une
' décision ' (par exemple, ne formater que les cellules contenant des nombres). Pour ces opérations, vous devez écrire vous-même les instructions qui constituent votre macro.
Posez le problème
Nous vous proposons d'écrire une macro extrêmement simple, que nous appellerons TTC. Son rôle : transformer des prix hors taxes (HT) en prix toutes taxes comprises (TTC) en multipliant le contenu des
cellules sélectionnées par 1,196. Cet exemple est volontairement simpliste : son seul but est de vous montrer comment s'écrivent des instructions en VBA.
Ouvrez l'éditeur VBA
Déroulez le menu Outils, Macros, Visual Basic Editor. Dans le volet de droite qui apparaît, tapez le listing ci-dessous en tapant Entrée à la fin de chaque ligne. Déroulez Fichier,
Fermer. Retournez à Excel.
Sub TTC() : cet élément marque le début de la macro TTC.
For Each Cellule in Selection : littéralement ' pour toutes les cellules de la sélection... ' Les instructions qui suivent (une seule, dans notre exemple)
seront exécutées une fois pour chacune des cellules sélectionnées.
Cellule.Value = Cellule.Value * 1.196 : cette instruction sera appliquée à chaque cellule de la sélection : la valeur de cette cellule est multipliée par 1,196, ce qui revient à lui ajouter
19,6 %
Next marque la fin de la boucle ouverte par For Each Cellule...
End Sub marque la fin de la macro.
Exécutez la macro
Sélectionnez une plage de cellules de taille quelconque contenant des nombres. Déroulez Outils, Macro, Macros (ou tapez Alt + F8), sélectionnez TTC et cliquez sur
Exécuter.
Votre opinion