XL 2013 Ouverture de feuille avec code

BEDO

XLDnaute Nouveau
Bonjour cher tous

Je viens se matin solliciter votre aide
j'ai créé un fichier dans lequel j'ai des onglet qui ouvre des feuille hypertexte
je souhaiterai que lorsqu'on clique si l'onglet "F" on nous demande un code avant l'ouverture de la feuille qui lui est affectée.
Capture.PNG


Merci de votre aide
 

Xtian_Québec

XLDnaute Occasionnel
Salut BEDO,
pas certain d'avoir bien saisi mais voici un petit fichier (onglet A et onglet F qui est masqué) qui demande un code avant d'afficher l'onglet F. Tu peux ajuster selon tes besoins.
'BOUTON DE LA FEUILLE A
Sub AfficherFeuilleF()
If InputBox("Inscrite le code") = "1234" Then
'CODE est OK
Sheets("F").Visible = True
Sheets("F").Activate
Else
'On retourne à la feuille initiale
Sheets("F").Visible = False
Sheets("A").Activate
End If
End Sub
'BOUTON DE LA FEUILLE F
Sub Retour()
Sheets("F").Visible = False
Sheets("A").Activate
End Sub[/CODE]

Bonne chance
Xtian_Québec
 

Pièces jointes

  • FeuilleF avec Code.xlsm
    17.4 KB · Affichages: 6

BEDO

XLDnaute Nouveau
Bonjour Xtian_Québec
Merci bien pour ta réponse qui m'est d'une grande aide.
Mais ici le bouton "F" n'est pas une feuil mais un bouton qui ouvre par hypertext la FeuilF (pour garder ta nomenclature)
J'ais créé une macro avec le code que tu as donné mais si je vais une une autre feuil la feuilF est toujour active or que je voulais qu'elle reste cachée chaque fois qu'on change de feuille et que le code revienne quand on clique sur le bouton "F"
j’espère avoir été explicite
et merci encore pour l'aide
 

Xtian_Québec

XLDnaute Occasionnel
Salut BEDO
Pas certain encore de bien saisir ce que tu veux mais tu peux utiliser Application.ScreenUpdating = False lorsque ton code navigue entre les différentes feuilles de ton fichier. De cette façon, la feuille F n'est jamais visible à l'utilisateur

'CODE EXÉCUTÉ À PARTIR DE LA FEUILLE A
Sub ExécuterFeuilleF()
If InputBox("Inscrite le code") = "1234" Then
'CODE est OK
Application.ScreenUpdating = False
Sheets("F").Visible = True
Sheets("F").Activate
...
'EXÉCUTION DU RESTE DU CODE ICI
...

Else
'On retourne à la feuille initiale
Sheets("F").Visible = False
Sheets("A").Activate
End If
Application.ScreenUpdating = True
End Sub

J'espère que c'est ce que tu veux.
Xtian_Quebec
 

BEDO

XLDnaute Nouveau
Xtian_Québec
Vraiment merci malgré la façon tordue o_O de ma question tu as bien voulu me répondre merci
J'ai essayé de comprendre ton code (vu que je suis pire qu'un novice en excel et encore plus en VBA) et je l'ai adapté à ce que je voulais en suppriment le lien hypertexte et ça me convient bien :)
Encore merci pour ton temps et ta disponibilité ;)

Cordialement,
BEDO
 

Discussions similaires

Réponses
11
Affichages
464
Réponses
18
Affichages
535

Statistiques des forums

Discussions
312 083
Messages
2 085 181
Membres
102 808
dernier inscrit
guo