Re : Définir champ d'impression selon variable (VBA)
Pas de probleme...
On définit des noms CHAMP1, CHAMP2 etc ... qui correspondent aux zones que tu veux imprimer.
Dans une cellule on tape l'index de ces zones : 1 ou 2 ou etc ...
La zone d'impression est un nom réservé dans la feuille de calcul :
"Zone_d_impression" (CTRL + F3 pour voir)
Ce nom réfère normalement à une plage de cellule.
On pourrait le faire référer à CHAMP2 par exemple.
Pour rendre tout ça variable on va le faire référer à une nom varaible à l'aide de la fonction INDIRECT
=INDIRECT("CHAMP"&'Sans Macro'!$G$3)
On concatene CHAMP avec le contenu de la cellule G3 ('Sans Macro'!$G$3)
Dans une cellule : =INDIRECT("CHAMP"&'Sans Macro'!$G$3) renvoie CHAMP5 si G3 contient 5
Pour adapter à ton contexte, il suffit de creer les CHAMP1, CHAMP2 etc (ca normalement c'est deja fait)
Puis aller dans Insertion/Nom/Definir (ou CTR+F3) dans nom taper :
Zone_d_impression
Dans Refere à taper :
=INDIRECT("CHAMP"&'Sans Macro'!$G$3)
Où 'Sans Macro'!$G$3 sera à modifier selon le nom de ta feuille et la cellule utilisée.
Si c'est pas clair n'hésite pas à revenir...