Salut PolineC,
Je vais te répondre a partir du code que tu poste :
Sheets("Facture" ).Range("A23:G25" ).Select
Selection.ClearContents
peut aussi s'écrire :
Sheets("Facture" ).Range("A23:G25" ).ClearContents
ensuite, si on veut pinailler, le mieux serait de définir une variable pour le classeur (je ne sais pas si tu as plusieurs feuille ou classeurs ouvert en meme temps lors du lancement de la macro, mais c'est plus prudent.
ton code deviens :
Dim ws_facture as Worksheet
set ws_facture = worksheets("facture")
ws_facture.Range("A23:G25").Clearcontents
Et ce code est amplement suffisant.
Pour t'expliquer un code il nous faudrait le voir (post sur le Forum).
Il est possible que ton professeur passe par une boucle pour vider ta facture. (Ta facture est statique ? sinon, ton code ne fonctionne pas puisqu'il ne prend en compte qu'une plage fixe (A23:G25) pour l'effacement.)
Citation :
Parceque dans l'algo de mon prof, il y avait une ligne par case à initialiser!
je ne comprends pas ce que tu entends par ligne a initialiser aux vues du code que tu propose.