Rendre actif bouton VBA par mot de passe
Patrick
-
Patrick -
Patrick -
Bonjour,
après avoir cherché pendant plus de 2h sur Google, je n'ai rien trouvé de très concluant pour mon problème. Je me permets donc de solliciter votre aide en espérant que vous pourrez trouver une solution.
Je viens de créer une base de données sur Excel en m'inspirant fortement de ce tuto: http://www.polykromy.com/blog/excel-base-de-donnees.htm
Tout fonctionne correctement. Je souhaiterais maintenant y apporter quelques modifications.
En effet, j'ai actuellement 6onglets (accueil, recherche, base de données, saisie, modifier, param)
Ma base de données devant être accessible à tous, je souhaiterais verrouiller par mot de passe certains onglets pour éviter toutes modifications (onglet saisie, modifier et le tableau de base de données)
Le soucis est que lorsque je verrouille classiquement chaque feuille excel par un mot de passe, toutes les cellules sont bien verrouillées mais les boutons VBA eux continuent à être actif (même en faisant click droit sur le bouton, protection, verrouiller)
Je voulais donc savoir s'il était possible par exemple, de créer deux boutons sur la page d'accueil (un verrouiller et un autre déverrouiller) qui lorsque l'on clique dessus rend inactif ou verrouille l'ensemble des boutons VBA présents sur les onglets en questions ainsi que les cellules et les rend actifs ou les déverrouille après avoir entrée le bon mot de passe.
Je vous remercie d'avance pour votre aide.
Cordialement,
Patrick
après avoir cherché pendant plus de 2h sur Google, je n'ai rien trouvé de très concluant pour mon problème. Je me permets donc de solliciter votre aide en espérant que vous pourrez trouver une solution.
Je viens de créer une base de données sur Excel en m'inspirant fortement de ce tuto: http://www.polykromy.com/blog/excel-base-de-donnees.htm
Tout fonctionne correctement. Je souhaiterais maintenant y apporter quelques modifications.
En effet, j'ai actuellement 6onglets (accueil, recherche, base de données, saisie, modifier, param)
Ma base de données devant être accessible à tous, je souhaiterais verrouiller par mot de passe certains onglets pour éviter toutes modifications (onglet saisie, modifier et le tableau de base de données)
Le soucis est que lorsque je verrouille classiquement chaque feuille excel par un mot de passe, toutes les cellules sont bien verrouillées mais les boutons VBA eux continuent à être actif (même en faisant click droit sur le bouton, protection, verrouiller)
Je voulais donc savoir s'il était possible par exemple, de créer deux boutons sur la page d'accueil (un verrouiller et un autre déverrouiller) qui lorsque l'on clique dessus rend inactif ou verrouille l'ensemble des boutons VBA présents sur les onglets en questions ainsi que les cellules et les rend actifs ou les déverrouille après avoir entrée le bon mot de passe.
Je vous remercie d'avance pour votre aide.
Cordialement,
Patrick
A voir également:
- Userform mot de passe vba excel
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
3 réponses
Et si tu mettais l'attribut Visible des boutons à False de base et quand tu entres le bon mot de passe, tu mette l'attribut à True pour les rendre visibles?
Merci pour votre aide!
J'ai pratiquement fini de mettre en place ma base de données grâce à votre aide.
J'ai une dernière petite question plus en rapport avec Excel.
Je souhaiterais créer un format de cellule qui regrouperait les chiffres d'un nombre rentré par 2.
Exemple: 123456789 = 12 34 56 78 9
Est-ce possible?
J'ai pratiquement fini de mettre en place ma base de données grâce à votre aide.
J'ai une dernière petite question plus en rapport avec Excel.
Je souhaiterais créer un format de cellule qui regrouperait les chiffres d'un nombre rentré par 2.
Exemple: 123456789 = 12 34 56 78 9
Est-ce possible?
Bonjour a vous tous
Sauf si je n'ai pas bien suivi......
Patrick - 7 juin 2012 à 14:34
Mon problème justement c'est que comme il s'agit de bouton formulaire, impossible de mettre une valeur true or false.
Si!
ex:
ActiveSheet.Shapes("Bouton 2").Visible = True '( visible )
ActiveSheet.Shapes("Bouton 2").Visible = False '( invisible )
Bonne suite
Sauf si je n'ai pas bien suivi......
Patrick - 7 juin 2012 à 14:34
Mon problème justement c'est que comme il s'agit de bouton formulaire, impossible de mettre une valeur true or false.
Si!
ex:
ActiveSheet.Shapes("Bouton 2").Visible = True '( visible )
ActiveSheet.Shapes("Bouton 2").Visible = False '( invisible )
Bonne suite
A moins qu'il soit possible de faire ce que vous me proposez grâce à un bouton? Ce serait parfait comme solution :)
Exemple:
pour supprimer une ligne de la base de données j'ai la procédure suivante procédure:
Sub supprimer()
'
' supprimer Macro
'
'
If MsgBox("Etes-vous sûr de vouloir supprimer ce fournisseur de la base de données?", vbYesNo, "Suppression") = vbYes Then
Sheets("Base de données").Rows([param_no_ligne] + 1).Delete Shift:=xlUp
If [nb_enregistrements_bd] < [param_no_ligne] Then [param_no_ligne] = [param_no_ligne] - 1
End If
Sheets("Modifier").Select
End Sub
Peut-on par exemple glisser un bout de code avant If MsgBox("Etes-v.... qui lorsque l'on clique sur le bouton Supprimer fait apparaître une boite de dialogue demandant un mot de passe qu'on aurait défini avant et qui lance la procédure uniquement si l'utilisateur entre le bon mot de passe... sinon un message d'erreur apparaît
En tout cas merci pour votre aide!
Ton problème est que tu as plein de boutons, donc si tu veux demander un mot de passe pour chacun, il faut mettre le code dans chaque bouton.
Si c'est ce que tu veux faire, créer un UserForm où tu demandes un mot de passe et affiche le à chaque fois que tu veux que l'utilisateur entre un mot de passe (Attention, là il te faudra quelque chose du genre :
avec une condition d'arrêt si l'utilisateur entre un mauvais mot de passe.
Si le bouton est désactiver alors les bouton en question sont inactif (donc les mettre par défaut en invisible) si le bouton est activé alors les boutons sont actifs avec la condition pour activer le bouton a bascule, entrer un mot de passe...
ça me parait être la meilleure solution... seul Bémol c'est que je suis novice et je ne sais pas comment faire