Comment fermer un userform lorsque l'on change de feuille??
Et comment le r=E9ouvrir si l'on res=E9lectionne la feuille ou=20
il s'affichait au d=E9part?
copie ces macro sur le module de classe de la feuille ou a été ouvert le userform.
Private Sub Worksheet_Deactivate() UserForm1.Hide End Sub
Private Sub Worksheet_Activate() UserForm1.Show End Sub
isabelle
Comment fermer un userform lorsque l'on change de feuille?? Et comment le réouvrir si l'on resélectionne la feuille ou il s'affichait au départ?
omdrag
Merci de ton aide isabelle, cependant les sheets qui vont entrainé l'ouverture ou la fermeture du userform se trouve dans un autre worbooks qui ne mets pas accessible au départ...Si tu veux le workbooks ACCUEIL crée un workbook Travail (par un opentext) où vont se trouver les futurs pages...Donc impossible de rentrer quoi que ce soit dans le module de classe puisque ce workbooks n'existe pas au départ... Tu comprends?? Merci
-----Message d'origine----- bonjour,
copie ces macro sur le module de classe de la feuille ou a été ouvert le
userform.
Private Sub Worksheet_Deactivate() UserForm1.Hide End Sub
Private Sub Worksheet_Activate() UserForm1.Show End Sub
isabelle
Comment fermer un userform lorsque l'on change de feuille??
Et comment le réouvrir si l'on resélectionne la feuille ou
il s'affichait au départ? .
Merci de ton aide isabelle, cependant les sheets qui vont
entrainé l'ouverture ou la fermeture du userform se trouve
dans un autre worbooks qui ne mets pas accessible au
départ...Si tu veux le workbooks ACCUEIL crée un workbook
Travail (par un opentext) où vont se trouver les futurs
pages...Donc impossible de rentrer quoi que ce soit dans
le module de classe puisque ce workbooks n'existe pas au
départ...
Tu comprends??
Merci
-----Message d'origine-----
bonjour,
copie ces macro sur le module de classe de la feuille ou
a été ouvert le
userform.
Private Sub Worksheet_Deactivate()
UserForm1.Hide
End Sub
Private Sub Worksheet_Activate()
UserForm1.Show
End Sub
isabelle
Comment fermer un userform lorsque l'on change de
feuille??
Et comment le réouvrir si l'on resélectionne la feuille
ou
Merci de ton aide isabelle, cependant les sheets qui vont entrainé l'ouverture ou la fermeture du userform se trouve dans un autre worbooks qui ne mets pas accessible au départ...Si tu veux le workbooks ACCUEIL crée un workbook Travail (par un opentext) où vont se trouver les futurs pages...Donc impossible de rentrer quoi que ce soit dans le module de classe puisque ce workbooks n'existe pas au départ... Tu comprends?? Merci
-----Message d'origine----- bonjour,
copie ces macro sur le module de classe de la feuille ou a été ouvert le
userform.
Private Sub Worksheet_Deactivate() UserForm1.Hide End Sub
Private Sub Worksheet_Activate() UserForm1.Show End Sub
isabelle
Comment fermer un userform lorsque l'on change de feuille??
Et comment le réouvrir si l'on resélectionne la feuille ou
il s'affichait au départ? .
Alain CROS
Bonjour.
Essaye avec un Module de classe. J'ai supposé que la feuille qui doit afficher le UserForm s'appelle "MaFeuille" et que le module de classe créé s'appelle Class1
Dans VBE Insertion Module de classe. Tu colle ceci.
Public WithEvents MonApp As Application Private Sub MonApp_SheetActivate(ByVal Sh As Object) If Not Sh.Parent Is Workbooks("Travail") Then If Sh.Name = "MaFeuille" Then UserForm1.Show End If End If End Sub Private Sub MonApp_SheetDeactivate(ByVal Sh As Object) If Not Sh.Parent Is Workbooks("Travail") Then If Sh.Name = "MaFeuille" Then UserForm1.Hide End If End If End Sub
Dans VBE Insertion Module. Tu colle ceci.
Public App As Class1
Dans VBE Module ThisWorkbook. Tu colle ceci.
Private Sub Workbook_BeforeClose(Cancel As Boolean) Set App.MonApp = Nothing Set App = Nothing End Sub Private Sub Workbook_Open() Set App = New Class1 Set App.MonApp = Application End Sub
Alain CROS.
"omdrag" a écrit dans le message de news: 085401c3b4c0$9f62d200$ Merci de ton aide isabelle, cependant les sheets qui vont entrainé l'ouverture ou la fermeture du userform se trouve dans un autre worbooks qui ne mets pas accessible au départ...Si tu veux le workbooks ACCUEIL crée un workbook Travail (par un opentext) où vont se trouver les futurs pages...Donc impossible de rentrer quoi que ce soit dans le module de classe puisque ce workbooks n'existe pas au départ... Tu comprends?? Merci
-----Message d'origine----- bonjour,
copie ces macro sur le module de classe de la feuille ou a été ouvert le
userform.
Private Sub Worksheet_Deactivate() UserForm1.Hide End Sub
Private Sub Worksheet_Activate() UserForm1.Show End Sub
isabelle
Comment fermer un userform lorsque l'on change de feuille??
Et comment le réouvrir si l'on resélectionne la feuille ou
il s'affichait au départ? .
Bonjour.
Essaye avec un Module de classe.
J'ai supposé que la feuille qui doit afficher le UserForm s'appelle "MaFeuille" et que le module de classe créé s'appelle Class1
Dans VBE Insertion Module de classe.
Tu colle ceci.
Public WithEvents MonApp As Application
Private Sub MonApp_SheetActivate(ByVal Sh As Object)
If Not Sh.Parent Is Workbooks("Travail") Then
If Sh.Name = "MaFeuille" Then
UserForm1.Show
End If
End If
End Sub
Private Sub MonApp_SheetDeactivate(ByVal Sh As Object)
If Not Sh.Parent Is Workbooks("Travail") Then
If Sh.Name = "MaFeuille" Then
UserForm1.Hide
End If
End If
End Sub
Dans VBE Insertion Module.
Tu colle ceci.
Public App As Class1
Dans VBE Module ThisWorkbook.
Tu colle ceci.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Set App.MonApp = Nothing
Set App = Nothing
End Sub
Private Sub Workbook_Open()
Set App = New Class1
Set App.MonApp = Application
End Sub
Alain CROS.
"omdrag" <anonymous@discussions.microsoft.com> a écrit dans le message de news: 085401c3b4c0$9f62d200$a401280a@phx.gbl...
Merci de ton aide isabelle, cependant les sheets qui vont
entrainé l'ouverture ou la fermeture du userform se trouve
dans un autre worbooks qui ne mets pas accessible au
départ...Si tu veux le workbooks ACCUEIL crée un workbook
Travail (par un opentext) où vont se trouver les futurs
pages...Donc impossible de rentrer quoi que ce soit dans
le module de classe puisque ce workbooks n'existe pas au
départ...
Tu comprends??
Merci
-----Message d'origine-----
bonjour,
copie ces macro sur le module de classe de la feuille ou
a été ouvert le
userform.
Private Sub Worksheet_Deactivate()
UserForm1.Hide
End Sub
Private Sub Worksheet_Activate()
UserForm1.Show
End Sub
isabelle
Comment fermer un userform lorsque l'on change de
feuille??
Et comment le réouvrir si l'on resélectionne la feuille
ou
Essaye avec un Module de classe. J'ai supposé que la feuille qui doit afficher le UserForm s'appelle "MaFeuille" et que le module de classe créé s'appelle Class1
Dans VBE Insertion Module de classe. Tu colle ceci.
Public WithEvents MonApp As Application Private Sub MonApp_SheetActivate(ByVal Sh As Object) If Not Sh.Parent Is Workbooks("Travail") Then If Sh.Name = "MaFeuille" Then UserForm1.Show End If End If End Sub Private Sub MonApp_SheetDeactivate(ByVal Sh As Object) If Not Sh.Parent Is Workbooks("Travail") Then If Sh.Name = "MaFeuille" Then UserForm1.Hide End If End If End Sub
Dans VBE Insertion Module. Tu colle ceci.
Public App As Class1
Dans VBE Module ThisWorkbook. Tu colle ceci.
Private Sub Workbook_BeforeClose(Cancel As Boolean) Set App.MonApp = Nothing Set App = Nothing End Sub Private Sub Workbook_Open() Set App = New Class1 Set App.MonApp = Application End Sub
Alain CROS.
"omdrag" a écrit dans le message de news: 085401c3b4c0$9f62d200$ Merci de ton aide isabelle, cependant les sheets qui vont entrainé l'ouverture ou la fermeture du userform se trouve dans un autre worbooks qui ne mets pas accessible au départ...Si tu veux le workbooks ACCUEIL crée un workbook Travail (par un opentext) où vont se trouver les futurs pages...Donc impossible de rentrer quoi que ce soit dans le module de classe puisque ce workbooks n'existe pas au départ... Tu comprends?? Merci
-----Message d'origine----- bonjour,
copie ces macro sur le module de classe de la feuille ou a été ouvert le
userform.
Private Sub Worksheet_Deactivate() UserForm1.Hide End Sub
Private Sub Worksheet_Activate() UserForm1.Show End Sub
isabelle
Comment fermer un userform lorsque l'on change de feuille??
Et comment le réouvrir si l'on resélectionne la feuille ou
il s'affichait au départ? .
Denis Michon
Bonjour Omdrag,
Dans le ThisWorkbook de ton classeur, copie ce qui suit ...cela devrait être suffisant si j'ai bien compris le sens de ta question.
Pour trouver le nom de la propriété "CodeName", affiche la fenêtre VBE(visual basic editor) et dans la fenêtre de gauche (vbaproject) affiche les objets, la première section du nom des objets "Feuille" (pas ceux qui sont entre parenthèses qui représente le nom de l'onglet de la feuille) représente le codename pour chaque feuille. Cela permettra à l'usager de modifier le nom des onglets des feuilles, sans modifier le fonctionnement de la macro.
'----------------------- Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.CodeName = "Feuil1" Then UserForm1.Show 0 Else UserForm1.Hide 'or unload userform1 End If
End Sub '--------------------------
Salutations!
"omdrag" a écrit dans le message de news:0f8601c3b40d$224e7ed0$ Comment fermer un userform lorsque l'on change de feuille?? Et comment le réouvrir si l'on resélectionne la feuille ou il s'affichait au départ?
Bonjour Omdrag,
Dans le ThisWorkbook de ton classeur, copie ce qui suit ...cela devrait être suffisant si j'ai bien compris le sens de ta
question.
Pour trouver le nom de la propriété "CodeName", affiche la fenêtre VBE(visual basic editor) et dans la fenêtre de gauche
(vbaproject) affiche les objets, la première section du nom des objets "Feuille" (pas ceux qui sont entre parenthèses qui
représente le nom de l'onglet de la feuille) représente le codename pour chaque feuille. Cela permettra à l'usager de
modifier le nom des onglets des feuilles, sans modifier le fonctionnement de la macro.
'-----------------------
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.CodeName = "Feuil1" Then
UserForm1.Show 0
Else
UserForm1.Hide 'or unload userform1
End If
End Sub
'--------------------------
Salutations!
"omdrag" <anonymous@discussions.microsoft.com> a écrit dans le message de news:0f8601c3b40d$224e7ed0$a101280a@phx.gbl...
Comment fermer un userform lorsque l'on change de feuille??
Et comment le réouvrir si l'on resélectionne la feuille ou
il s'affichait au départ?
Dans le ThisWorkbook de ton classeur, copie ce qui suit ...cela devrait être suffisant si j'ai bien compris le sens de ta question.
Pour trouver le nom de la propriété "CodeName", affiche la fenêtre VBE(visual basic editor) et dans la fenêtre de gauche (vbaproject) affiche les objets, la première section du nom des objets "Feuille" (pas ceux qui sont entre parenthèses qui représente le nom de l'onglet de la feuille) représente le codename pour chaque feuille. Cela permettra à l'usager de modifier le nom des onglets des feuilles, sans modifier le fonctionnement de la macro.
'----------------------- Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.CodeName = "Feuil1" Then UserForm1.Show 0 Else UserForm1.Hide 'or unload userform1 End If
End Sub '--------------------------
Salutations!
"omdrag" a écrit dans le message de news:0f8601c3b40d$224e7ed0$ Comment fermer un userform lorsque l'on change de feuille?? Et comment le réouvrir si l'on resélectionne la feuille ou il s'affichait au départ?