Encore moi... 🙂
J'ai un popup type (c'est un extrait)
Set Cbut = Cpop3.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 326 '<-- bouton avec icône + texte
.Caption = "Dossiers de Toto" '<-- label du bouton
.OnAction = "DossiersToto"
End With
le OnAction me conduit bien sur la Sub DossiersToto qui est :
Sub DossiersToto()
Personne="toto"
Application.ScreenUpdating = False
For i = 1 To [A65000].End(xlUp).Row
If Cells(i, 2) <> Personne Then Cells(i, 1).EntireRow.Hidden = True
Next i
End Sub
l'idée c'est de masquer toutes les lignes de mon fichier ou il n'y a pas toto (qui est forcement dans la colonne B mais bon, là ça marche aussi)
Dans cette configuration, cela fonctionne.
Cela dit, j'ai 15 choix possibles, je me vois mal recopier 25 sub pour finalement une variable qui change.
J'ai donc essayé de déclarer une variable Personne en début de ma sub de création popup :
Personne as String
Set Cbut = Cpop3.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 326 '<-- bouton avec icône + texte
.Caption = "Dossiers de Toto" '<-- label du bouton
.OnAction = "DossiersToto"
Personne="Toto"
End With
et d'ajouter juste aprés le OnAction un truc du type Personne="Toto" de façon a demander à ma procédure de masquage de dossier de faire le boulot en prenant la valeur de personne préalablement déclarée.
genre :
Sub DossiersToto()
Application.ScreenUpdating = False
For i = 1 To [A65000].End(xlUp).Row
If Cells(i, 2) <> Personne Then Cells(i, 1).EntireRow.Hidden = True
Next i
End Sub
Ca marche pas évidemment !
Ma question est donc :
Comment faire pour définir la variable Personne dans ma procédure popup et que cette valeur soit conservée lors du passage dans ma seconde procédure ?
J'ai un popup type (c'est un extrait)
Set Cbut = Cpop3.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 326 '<-- bouton avec icône + texte
.Caption = "Dossiers de Toto" '<-- label du bouton
.OnAction = "DossiersToto"
End With
le OnAction me conduit bien sur la Sub DossiersToto qui est :
Sub DossiersToto()
Personne="toto"
Application.ScreenUpdating = False
For i = 1 To [A65000].End(xlUp).Row
If Cells(i, 2) <> Personne Then Cells(i, 1).EntireRow.Hidden = True
Next i
End Sub
l'idée c'est de masquer toutes les lignes de mon fichier ou il n'y a pas toto (qui est forcement dans la colonne B mais bon, là ça marche aussi)
Dans cette configuration, cela fonctionne.
Cela dit, j'ai 15 choix possibles, je me vois mal recopier 25 sub pour finalement une variable qui change.
J'ai donc essayé de déclarer une variable Personne en début de ma sub de création popup :
Personne as String
Set Cbut = Cpop3.Controls.Add(Type:=msoControlButton)
With Cbut
.FaceId = 326 '<-- bouton avec icône + texte
.Caption = "Dossiers de Toto" '<-- label du bouton
.OnAction = "DossiersToto"
Personne="Toto"
End With
et d'ajouter juste aprés le OnAction un truc du type Personne="Toto" de façon a demander à ma procédure de masquage de dossier de faire le boulot en prenant la valeur de personne préalablement déclarée.
genre :
Sub DossiersToto()
Application.ScreenUpdating = False
For i = 1 To [A65000].End(xlUp).Row
If Cells(i, 2) <> Personne Then Cells(i, 1).EntireRow.Hidden = True
Next i
End Sub
Ca marche pas évidemment !
Ma question est donc :
Comment faire pour définir la variable Personne dans ma procédure popup et que cette valeur soit conservée lors du passage dans ma seconde procédure ?
Dernière édition: