Bouton Macro utilisable uniquement sur certaines feuilles

5 réponses
Avatar
Alex
Bonjour =E0 tous,

Savez-vous comment =E9crire la condition d'utilisation d'une macro
uniquement sur des feuilles pr=E9cises. Mon bouton d=E9clanchement de
macros sont sur une barre d'outils flottante, et je souhaiterais que
pour l'une de mes macros, cette derni=E8re ne soit utilisable que si on
est positionn=E9 sur Feuil1 et Feuil3 (possibilit=E9 d'utiliser la macro)
et sur Feuil2 un msgbox : Cette macro ne fonctionne pas sur cette
feuille.

Merci par avance de votre aide.
Bien cordialement.
Alex

5 réponses

Avatar
concommelalune
On 8 fév, 14:08, Alex wrote:
Bonjour à tous,

Savez-vous comment écrire la condition d'utilisation d'une macro
uniquement sur des feuilles précises. Mon bouton déclanchement de
macros sont sur une barre d'outils flottante, et je souhaiterais que
pour l'une de mes macros, cette dernière ne soit utilisable que si on
est positionné sur Feuil1 et Feuil3 (possibilité d'utiliser la macro)
et sur Feuil2 un msgbox : Cette macro ne fonctionne pas sur cette
feuille.

Merci par avance de votre aide.
Bien cordialement.
Alex



tester le nom de la feuille
if u_f.name <> "Feuil1" and u_f.name <> "Feuil3" then exit sub
Avatar
Jacky
Bonjour,
Quelque chose comme ceci
'--------------
Sub jj()
If ActiveSheet.Name = "Feuil1" Or ActiveSheet.Name = "Feuil3" Then
MsgBox "Exécution de la macro ici"
'***La macro actuelle
Else
MsgBox "Cette macro ne fonctionne pas sur cette feuille."
End If
End Sub
"----------------

--
Salutations
JJ


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

Bonjour à tous,

Savez-vous comment écrire la condition d'utilisation d'une macro
uniquement sur des feuilles précises. Mon bouton déclanchement de
macros sont sur une barre d'outils flottante, et je souhaiterais que
pour l'une de mes macros, cette dernière ne soit utilisable que si on
est positionné sur Feuil1 et Feuil3 (possibilité d'utiliser la macro)
et sur Feuil2 un msgbox : Cette macro ne fonctionne pas sur cette
feuille.

Merci par avance de votre aide.
Bien cordialement.
Alex
Avatar
Alex
Bonjour,

Merci pour la proposition.
J'ai mis Or à la place de And mais j'ai un message d'erreur :

Erreur d'excution '424' : Objet requis

peut etre est le u-f qu'il faut déclaré en variable ? mais comment ?
alors j'ai tenté

Dim u-f as string
u-f = activesheet.name

mais du coup j'ai le message suivant :

Erreur de compilation : Qualificateur incorrecte

Quelqu'un aurait il la solution ?
Merci encore de votre aide.
Bien cordialement.
Alex
Avatar
MichD
Bonjour,

Supposons que ton bouton est relié à la macro test suivante :

Dans la macro suivante, Feuil1 et Feuil3 représentent la propriété "Name" des objets feuille
visible seulement dans la fenêtre de l'éditeur de code.

La macro s'exécutera seulement si au moment de cliquer sur ton bouton, la feuille active est
Feuil1 ou Feuil3 (ne pas confondre avec le nom des onglets des feuilles)

'---------------------------
Sub test()

Dim Feuille As String
Feuille = ActiveSheet.CodeName

Select Case Feuille
Case Is = "Feuil1", "Feuil3"
'Le code de ta macro

End Select

End Sub
'---------------------------


MichD
------------------------------------------
"Alex" a écrit dans le message de groupe de discussion :


Bonjour à tous,

Savez-vous comment écrire la condition d'utilisation d'une macro
uniquement sur des feuilles précises. Mon bouton déclanchement de
macros sont sur une barre d'outils flottante, et je souhaiterais que
pour l'une de mes macros, cette dernière ne soit utilisable que si on
est positionné sur Feuil1 et Feuil3 (possibilité d'utiliser la macro)
et sur Feuil2 un msgbox : Cette macro ne fonctionne pas sur cette
feuille.

Merci par avance de votre aide.
Bien cordialement.
Alex
Avatar
Alex
Merci pour la réponse, cette fois ci cela fonctionne très bien.
Bien cordialement.
Alex