Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouverture UserForm à l'ouverture d'une feuille

11 réponses
Avatar
Laure
Bonjour !!

J'aimerais qu'un Userform s'ouvre automatiquement dès que je passe sur une
feuille précise de mon classeur qui en comporte plusieurs.

J'ai essayé quelquechose comme :

Private Sub ActiveSheets_Select
UserForm1.Show
End Sub

ou

Private Sub Sheets ("Feuille 01")_Select
UserForm1.Show
End Sub

Mais ça ne veut pas... Quelqu'un pourrait-il me dire où je fais erreur ?

Merci d'avance
Laure

1 réponse

1 2
Avatar
Laure
Bonjour et merci....
Ca fonctionne en partie.

Le problème c'est que maintenant il ne veut plus se fermer !!
Dès que je le ferme, il se réouvre...

Laure
"Rai" <raimondpointschmidtatberlinpointde> a écrit dans le message de news:
43d34699$0$21271$
Je continue à chercher....

J'ai :

Private Sub Worksheet_Activate()
If UserForm1 = Show Then
Unload UserForm1
ElseIf UserForm1 = Unload Then
UserForm1.Show
End If
End Sub

Mais ça ne fonctionne pas... J'ai le message "erreur de type" sur
"UserForm1"

----- Original Message -----
From: "Laure"

C'est encore moi.... :-)

J'ai donc :

Private Sub Worksheet_Activate()
UserForm1.Show
End Sub

Qui fonctionne bien.

Mon souci c'est que sur cet userform, j'ai un bouton qui permet de
lancer une macro qui va récupérer des données sur d'autres feuilles,
pour enfin devenir sur la feuille de départ (celle à partir de laquelle
s'ouvre le UserForm)
Et donc ça me fait une erreur, parce que quand il arrive sur la feuille,
il veut exécuter la macro ci-dessus, mais comme le UserForm est déjà
ouvert, ça plante.
Et pourtant dans l'autre macro je termine par "Unload UserForm" mais il
en tient pas compte.

Es-ce qu'il est possible de modifier la macro de façon à contourner ce
problème ? Quelque chose du genre :

Private Sub Worksheet_Activate()
'Si UserForm1 pas ouvert :
UserForm1.Show
'Si UserForm1 déjà ouvert :
'Ne pas tenter de l'ouvrir, et le FERMER.
End Sub


Grand merci d'avance !

Laure


"Laure" a écrit dans le message de news:
dqtpni$416$
Merci JLuc !!!
Et excellent week-end :-)

Laure

"JLuc" a écrit dans le message de news:

*Bonjour Laure*,
Sur le code de la feuille en question utilise la procedure :

Private Sub Worksheet_Activate()
...
End Sub

Bonjour !!

J'aimerais qu'un Userform s'ouvre automatiquement dès que je passe
sur une feuille précise de mon classeur qui en comporte plusieurs.

J'ai essayé quelquechose comme :

Private Sub ActiveSheets_Select
UserForm1.Show
End Sub

ou

Private Sub Sheets ("Feuille 01")_Select
UserForm1.Show
End Sub

Mais ça ne veut pas... Quelqu'un pourrait-il me dire où je fais
erreur ?

Merci d'avance
Laure


--
JLuc

Pensez a regarder ces sites très bien fait, ce sont des mines de trucs
et astuces !
http://www.excelabo.net
http://jacxl.free.fr/
http://dj.joss.free.fr/
C:Program FilesMicrosoft OfficeOffice1036VBALIST.XLS








Bonjour,

Si on part du principe que tu n'auras pas besoin d'autre formulaire
affiché en même temps, je propose ceci à placer dans le code de la feuille
désirée :

Private Sub Worksheet_Activate()
If UserForms.Count = 0 Then UserForm1.Show
End Sub


Comme ça ton formulaire n'est affiché que si aucun formulaire n'est
ouvert. Du coup, s'il est lui même ouvert ... il ne cherche plus à
s'ouvrir.

Cela te convient ?

Bon Dimanche

Rai








1 2