Menu

Lancer un userform en fonction de l'onglet [Résolu]

Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
- - Dernière réponse : ricnoynoy
Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
- 3 mai 2019 à 11:40
Bonjour,

j'ai un fichier de factures avec un onglet récapitulatif et des onglets respectifs pour chaque vendeur ayant généré une facture.

A l'ouverture du classeur, suivant le nom d'utilisateur et le mdp, différents onglets sont voyants.

Pour moi tous les onglets sont voyants
Pour chaque vendeur, seul leur onglet respectif est voyant

J'aimerai lancer automatiquement un userform quand le vendeur à renseigné utilisateur + mdp et qu'il arrive sur l'onglet. J'aimerai que cet userform soit lancé une seul fois.

J'aimerai ne pas lancer d'userform quand je renseigne utilisateur + mdp et que j'ai accès à tous les onglets

Seulement si je charge l'userfom dans Private Sub Worksheet_Activate() et bien cela fonctionne logiquement pour les vendeurs qui n'ont qu'un seul onglet actif mais pour moi, ça se charge au début et à chaque changement d'onglet.

Si quelqu'un à la gentillesse de m'aider je suis preneur :)
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
10617
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
20 mai 2019
1404
1
Merci
Bonsoir

Apparemment ton userform s'ouvre lorsque la feuille vendeur est activée
Comme le mdp entré à l'identification doit être déclaré comme public (sinon il faut le faire) il peut être récupéré dans tous les macros; il suffit donc dans la macro liée à l'activation d'une feuille de mettre au début un
IF mdp="tonmotdepasse" then exit sub
avant la ligne du style USerform1.show

Cdlmnt
Via

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 39335 internautes nous ont dit merci ce mois-ci

ricnoynoy
Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
-
Bonjour via 55 et merci de ton aide.

J'ai bien déclaré mdp en public comme ceci

Option Explicit
Public mdp as string


Et dans worksheet activate

If mdp = "anne4" Then
Exit Sub
end if
Load UserForm2
UserForm2.Show
Unload UserForm2


là l'userform s'ouvre tout le temps

OU la même chose mais le end if tout à la fin et pas au milieu = l'userform ne s'ouvre jamais

OU

If mdp ="abracadabra" then
Load UserForm2
UserForm2.Show
Unload UserForm2

else if mdp="obrocodobro"
exit sub
end if


OU les deux même sans " Load UserForm2" et "Unload UserForm2"

Sans réussite.
ricnoynoy
Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
-
J'ai cette ligne là dans la macro d'ouverture de classeur, peut-être que ça influence mais ça ne semble pas logique : mdp = InputBox("Veuillez saisir votre mot de passe", "Mot de passe")
Commenter la réponse de via55
Messages postés
22729
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
18 mai 2019
7373
1
Merci
Bonjour,

Public mdp as string
doit être déclaré dans un module Standard.
eric

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 39335 internautes nous ont dit merci ce mois-ci

ricnoynoy
Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
-
C'était bien ça, merci !
Commenter la réponse de eriiic
Messages postés
10617
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
20 mai 2019
1404
0
Merci
Sans connaitre ton fichier je ne peux pas voir ce qui cloche

Poste ton fichier sur mon-partage.fr, fais créer un lien que tu copies et reviens coller ici en m'indiquant aussi le mdp administrateur et le mdp d''au moins un utilisateur (et les pseudos de chacun s'ils sont à rentrer aussi bien sûr)
ricnoynoy
Messages postés
15
Date d'inscription
jeudi 25 avril 2019
Statut
Membre
Dernière intervention
3 mai 2019
-
C'est bon eriiic à résolu mon problème :)
Commenter la réponse de via55