Affichage une feuille dans une autre en fonction du résultat

Fermé
finaltititi Messages postés 14 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 12 avril 2018 - Modifié le 26 juil. 2017 à 17:40
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 27 juil. 2017 à 10:35
Bonjour,

J'ai encore une question (j'ouvre un autre sujet car c'est différent de ma première question).

J'aimerais savoir s'il est possible avec Excel, d'afficher une feuille dans une autre.

Pour être plus précis, j'aimerais que si le résultat de la cellule A1 de ma feuille 1 est égal à 2, alors la feuille 2 de mon classeur s'affiche en-dessous. (éventuellement, ça peut être d'un autre classeur)

Par exemple : https://www.cjoint.com/c/GGApLea3ioh

J'aimerais qu'en fonction du résultat de ma cellule A1 de la feuille 1, il m'affiche en dessous soit la feuille 2, soit la feuille 3, soit la feuille 4

J'ai essayé de chercher mais je n'ai pas trouvé....
Je ne sais même pas si c'est possible.

En vous remerciant par avance pour votre aide,

Cordialement

6 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
Modifié le 26 juil. 2017 à 17:29
Bonjour

par formule

par exemple en B1 en feuil1, cette formule :

=feuil2!B1

devient, si vous avez entré le nom de feuille en A1 feuil2

=INDIRECT("'"&A1&"'!B1")

qui vous renverra la valeur de B1 de la feuille dont le nom est inscrit en A1

bien sur, on peut composer le nom pour que le B1 entre guillemets soit incrémenté, mais ça, ça dépend ensuite de ce que vous voulez faire

le principe d'INDIRECT et de transformer en adresse le texte composé

petite expérience pour comprendre:

écrivez un nom de feuille en A1
en B1 temps écrivez:
="'"&A1&"'!"B1 et voyez le texte qui s'affiche


d'un autre classeur, idem, mais la composition du texte est plus complexe. elle peut se composer à partir d'une cellule avec le nom du fichier et d'une autre avec le nom de la feuille dans ce fichier

si difficulté, revenez avec plus d'info sur ce que vous voulez faire

crdlmnt



La qualité de la réponse dépend surtout de la clarté de la question, merci!
0
finaltititi Messages postés 14 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 12 avril 2018
26 juil. 2017 à 17:39
Je suis pas sur d'avoir compris votre réponse.

J'ai essayé de faire un truc bidon pour peut-être avoir une idée plus claire

https://www.cjoint.com/c/GGApLea3ioh

Dans la feuille 1, il y a un chiffre aléatoire qui s'affiche (entre 1 et 3)
J'aimerais qu'en dessous de ce chiffre, une autre feuille du classeur s'affiche :
- si résultat = 1, alors affichage feuille 2
- si résultat = 2, alors affichage feuille 3
- si résultat = 3, alors affichage feuille 4

J'espère que c'est un peu plus clair comme cela.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
Modifié le 26 juil. 2017 à 18:01
... d'où l'importance de travailler avec un modèle

dans votre cas, pour ne pas s'arracher les doigts à taper des formules, il vaut mieux utiliser le code ADRESSE avec INDIRECT
ainsi vous pouvez tirer la formule sur la hauteur de la colonne et éventuellement sur la largeur du champ

par contre, j'ai modifié votre formule entre bornes, car vous ne pouvez pas faire référence à feuil1 dans feuil1
(limites de 2 à 4)
voyez ici:
https://www.cjoint.com/c/GGAqbiHhWAM
si vos noms de feuilles sont autres, l'essentiel est qu'il se termine pas le affiché en A1(sans blanc entre le nom et le N°) et que entre guillemets, vous ayez le reste du nom

crdlmnt


La qualité de la réponse dépend surtout de la clarté de la question, merci!
0
finaltititi Messages postés 14 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 12 avril 2018
26 juil. 2017 à 18:57
Je vous remercie de votre réponse.

Mais est-ce qu'il serait possible de garder la mise en forme?
C'est surtout cela qui m'intéresse, d'où le fait que j'aimerais un "affichage" en fait.

Le but à la fin est de pouvoir imprimer uniquement la première feuille.

Là j'ai fait un exemple simple, mais le but est de pouvoir imprimer en fonction de la valeur en A1, ce qu'il sera fait dans les stages, or j'ai plus d'une 30aine de stage, et j'aimerais surtout garder la mise en forme.

Ce sujet et l'autre (sur les dates), c'est qu'au lieu d'avoir une 40aine de fichier différent, je puisses travailler qu'avec un seule fichier (tout expliqué en détail serait bien trop long et compliqué à expliquer, c'est pour cela que je suis partis sur un exemple simple)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
27 juil. 2017 à 07:46
Bonjour

alors voyez ici

https://www.cjoint.com/c/GGBfMiOivdM

la sélection du N° de feuille se fait en A1

le nom de feuille s'affiche automatiquement en A2

l'affichage du tableau correspondant se fait <souligne>par un double clic su</souligner> la cellule A2
le collage des données se fait à partir de B1

il faut que le fichier soit en modèle xlsm (acceptant les macros)
pour voir les codes

feuil1: clic droit sur l'onglet nom de feuille et 'visualiser le code
alt+ F11 pour le code de collage pour afficher le code de collage

les lignes en vert (non actives) dans les codes expliquent un peu pour ajustage à vos champ si besoin

Dans cet état, cette solution suppose que chaque feuille ne comporte pas de formule.

Si toutefois c'est le cas, revenez, on fera un collage valeur/format sans formule

crdlmnt
0
finaltititi Messages postés 14 Date d'inscription mercredi 26 juillet 2017 Statut Membre Dernière intervention 12 avril 2018
27 juil. 2017 à 10:03
Je vous remercie pour votre réponse.

J'essaye de l'adapter à mes documents (que j'ai fait quand même hier au cas où).

Il y a une chose que je n'arrive pas à comprendre c'est "If Target.Cells(2, 2) "
Que signifie ce "2,2"?


Sinon, ce n'est pas tout à fait la même demande, mais c'est une autre idée, est-ce qu'il est possible de demander à Excel (avec une macro ou autre), d'imprimer un onglet avec un autre à la suite en fonction d'une valeur?
Dans l'exemple que je vous ai donné, au lieu de faire un affichage de l'onglet, se serait d'imprimer le feuille 1 et en même temps que la feuille 2, si le résultat en A1 est 1 (et pareil pour le reste).
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
Modifié le 27 juil. 2017 à 10:37
le
2,2 donne l'adresse de la cellule à considérer pour l'éxecution
Cells (ligne,colonne) soit Cells(2,2) cellule B2
pour le reste, je ne suis pas assez costaud en VBA, mais d'autres pourront vous répondre sans doute

crdlmnt
0