Définir champ d'impression selon variable (VBA)

  • Initiateur de la discussion Initiateur de la discussion Christophe
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Christophe

XLDnaute Occasionnel
Bonjour le Forum,

Je suis à la recherche de la formule sous VBA qui me permettra de définir le champ à imprimer selon la valeur de la cellule.
Par exemple si la cellule = 3 alors le champ à imprimer c'est "CHAMP3" si la cellule = 12 alors champ à imprimer c'est "CHAMP12" etc ...
Merci par avance du coup de mains. Bonne journée.

Christophe
 
Re : Définir champ d'impression selon variable (VBA)

Wielfried, Catrice,
Merci de vos réponses super rapides.

Catrice : l'exemple sans macro semble parfaitement répondre à ce dont j'ai besoin. Pb : je ne comprends pas comment ça marche et suis donc incapable de le transposer à mon fichier. Peux-tu STP m'expliquer ? Merci

Bonne journée.

Christophe
 
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...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
115
Réponses
7
Affichages
686
Réponses
5
Affichages
258
Retour