Bonjour dans le fichier joint selon le nombre d'inscrits en cliquant sur accès concours je vais a la feuille correspondante
peut on empêcher ou verrouiller l' accès aux feuilles depuis le ruban du fichier Excel (via accueil /format /masquer afficher) afin de ne laisser l'accès d'une feuille que par le bouton "accès concours" avec une macro
Merci
Bonjour Berru,
Votre VBA est verrouillé par mdp.
Utilisez la propriété xlSheetVeryHidden pour la faire disparaitre de la liste des feuilles à afficher :
Je ne suis pas un pro du vba
C'est l' accès a la feuille via accueil /format /masquer afficher que je voudrais verrouiller
pouvez vous me donner plus de détails ou savoir comment l intégrer dans le module
Merci
Dans le code ci dessous, remplacez toto par le nom de la feuille qui reste toujours affichée :
VB:
Nom = "toto" ' mettre le nom de la feuille toujours active
For Each Feuille In Worksheets
If Feuille.Name <> Nom Then
Feuille.Visible = xlSheetVeryHidden
End If
Next Feuille
Tous vos onglets sont inaccessibles sauf "toto". Le seul moyen de les visualiser est de modifier leur statut Visible dans leurs propriétés par VBA.
Et pour rendre visible une feuille :
excusez moi je me suis mal exprimé
C'est l' accès aux feuilles dans le ruban du fichier Excel (via accueil /format /masquer afficher) que je voudrais verrouiller afin de ne laisser l'accès d'une feuille que par le bouton "accès concours"
Merci
J'ai l'impression d'un dialogue de sourd.
Testez cette PJ et essayez d'accéder à une feuille autrement que par appui sur un bouton.
( mdp VBA et feuille : 123 )
comme je vous ai dis je suis débutant en vba je ne me suis lancer a essayer de faire ces concours que depuis un an je comprend mieux avec des exemples grâce a vos aides il sont finis il ne me reste que que deux petites finitions après celle ci qui fonctionne bien
Si je n'abuse pas de trop si vous pouvez m'aider
je voudrais pouvoir enregistrer par macro ce fichier avec le nom / date /
Un grand merci
Malheureusement encore un problème comment rajouter la feuille noms et Mode d'emploi visibles aussi
Sub Affiche()
For Each Feuille In Worksheets If Feuille.Name <> "Inscriptions" Then
Feuille.Visible = xlSheetVeryHidden
End If
Next Feuille
Sheets(Application.Caller).Visible = True
Sheets(Application.Caller).Activate
End Sub
1- C'est la deuxième fois que vous fournissez des fichiers dont le VBA est protégé.
Et à ma question du post #2 vous n'avez pas fourni le mot de passe.
2- Pas de réponse sur le test du post #6. Dommage pour moi.
3- Pour l'enregistrement, testez :
Juste pour rappel,
1- On utilise les balises </> pour le code c'est plus lisible ( entre GIF et " dans la barre d'outil )
2- On donne le résultat d'un test pour que le contributeur sache s'il a bossé pour quelque chose ou pour rien, ou s'il n'a rien compris.
3- On met un problème par post. En cas de second problème on ouvre un nouveau post.
Merci pour ces remarques je ferai attention a cela
Jai teste la ligne pour les noms et mode d'emploi m'indique une erreur
Je rejoint le fichier dont j'ai enlevé les protections
Je vais tester pour enregistrer sous
Merci de votre patience
Vous avez recopié des choses sans les comprendre.
Application.caller envoie le bouton sur lequel vous avez appuyez. Dans votre fichier cela ne correspond à rien.
Ensuite le module Worksheet_Activate doit être implanté dans les trois feuilles visibles.