Macro-Excel 2003 : Afficher une feuille masquée selon le résultat d'une cellule [Résolu]

Messages postés
6
Date d'inscription
vendredi 3 décembre 2010
Statut
Membre
Dernière intervention
25 mai 2011
- - Dernière réponse : xalinys
Messages postés
6
Date d'inscription
vendredi 3 décembre 2010
Statut
Membre
Dernière intervention
25 mai 2011
- 31 mars 2011 à 10:01
Bonjour à tous,

Je suis nouvelle utilisatrice de macros et ne connais pas bien le langage V.B.
J'espère être au bon endroit pour demander de l'aide car je n'arrive pas à trouver par moi-même la solution sur les divers forum dédié à la macro Excel et lorsque je trouve des bouts de code, je n'arrive pas à les modifier comme il faut, du coup ça ne fonctionne pas.

Mon problème :
Sur une feuille de "saisie de donnée", je saisie un code client. Grâce à ce code, des recherchev vont afficher une référence de centrale d'achat en B8 par exemple. Je souhaite ensuite qu'en cliquant sur un bouton, une macro aille me rechercher parmi les feuilles masquées la feuille correspondant à la centrale comme nommée comme en B8 et uniquement celle-là.

Le but est de n'avoir que deux onglets au final : la saisie et le résultat qui lui est associé.

Ci-dessous ma tentative (écrite telle quelle) mais qui doit être super fausse car je n'arrive pas à appliquer les exemples trouvés à mon cas et ça finit par faire un mix bizarre je pense :

[i]Private Sub Worksheet_Change(ByVal Target As Range)
Dim Centrale As String
If Range("B8").Value = Centrale Then
Sheets("& Centrale &").Visible = True
End If
End Sub/i


Pouvez-vous m'aider s'il vous plaît ?
Merci d'avance.
Xalinys
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
24
Date d'inscription
mardi 29 mars 2011
Statut
Membre
Dernière intervention
31 juillet 2012
3
Merci
Bonjour,

Si je comprend bien tu as une première feuille qui s'appelle "saisie de donnée" et à partir de cette feuille et en fonction de la valeur de la cellule b8, tu veux afficher une autre feuille du même nom que la valeur de la cellule b8.
Essai ce code:

Sub selectionCentrale()
'Variable Centrale est chaine de caractere et vCentrale est la valeur de la cellule B8
Dim centrale As String
vCentrale = Range("B8").Value
'Si b8 est différent de zéro
If Range("B8").Value <> "" Then
'Alors selectionne vCentrale(valeur cellule B8)
Sheets(vCentrale).Select
End If
End Sub

Tiens moi au courant
Amicalement

Mugi

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 138 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Muygiwara56
Messages postés
6
Date d'inscription
vendredi 3 décembre 2010
Statut
Membre
Dernière intervention
25 mai 2011
0
Merci
Bonjour Mugi,

Je te remercie pour ton aide, ça fonctionne c'est juste parfait.
J'ai juste changé le dernier élément car en fait ma feuille cible est masquée :

Sheets(vCentrale).Select par Sheets(vCentrale).Visible = True

Grâce à toi, j'ai réalisé un grand pas en avant dans mon projet et c'est super... merci merci merci ;)

BAT
Xalinys
Commenter la réponse de xalinys