Déclencher une macro d'une autre feuille

Bj a tous

Voila , j'ai un problème avec une macro.

Je souhaite la déclencher à partir d'une commande se trouvant sur une autre feuille.

J'ai testé plusieurs alternatives , mais je n'arrive pas a trouver la bonne formule.

Un petit fichier joint ici:

https://www.excel-pratique.com/~files/doc/aidemacro.xls

Merci d'avance et bonne soirée

Salut le forum

Haonv, les CommandButton's n'aiment pas travailler sur d'autres feuilles.

Les .Select et .Activate sont à éviter.

Ton Code modifiée

Private Sub CommandButton1_Click()

With Sheets("Feuil1").Range("C4:D8")
  With .Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .Color = 65535
    .TintAndShade = 0
    .PatternTintAndShade = 0
  End With
End With

End Sub

Mytå

Re

Merci Myta pour la correction et les précisions.

Est ce quelqu'un peut m'indiquer maintenant pour declencher la macro en cliquanr sur F5 de la feuille 2 ?

Merci et bonne soirée

Bonsoir,

Essaye ce code à placer en VBA dans la feuille 2

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("F5")) Is Nothing Then
With Sheets("Feuil1").Range("C4:D8")
With .Interior
    .Pattern = xlSolid
    .PatternColorIndex = xlAutomatic
    .Color = 65535
    .TintAndShade = 0
    .PatternTintAndShade = 0
    End With
End With
End If
End Sub

Amicalement

Dan

Bonsoir à tous,

Bonsoir Dan,

j'essayais en vain de brancher le CommandButton1_Click() avec le

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("F5")) Is Nothing Then 

n'y a t-il pas moyen ?

si on veux le bouton + le F5

amicalement

Claude.

édit: merci Dan, c'est ce que je pensais.

Re,

Non Claude tu ne peux pas.

Le seul moyen pour faire ce que tu demandes est de procéder comme suiti :

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) 
If Not Intersect(Target, Range("F5")) Is Nothing Then 
call macro1
End sub
Sub Macro1()
With Sheets("Feuil1").Range("C4:D8") 
With .Interior 
    .Pattern = xlSolid 
    .PatternColorIndex = xlAutomatic 
    .Color = 65535 
    .TintAndShade = 0 
    .PatternTintAndShade = 0 
    End With 
End With 
End If 
End Sub

La macro private placée en feuille 2 tandis que la Sub Macro1 est placée dans un module.

C'est d'ailleurs ce que je fais habituellement pour mes applis personnelles.

Amicalement

dan

Salut le forum

Claude, quand même

CommandButton1_Click() est une action sur un boutton.

et

Worksheet_SelectionChange(ByVal Target As Excel.Range) est une action sur une feuille.

Comme te la dis Dan tu combines la macro dans un module avec les deux demandes.

Mytå

Bj a tous

Je vous remercie pour vos solutions.

Il me reste a les adapter à mon véritable fichier.

Ca risque d'être un peu long.(une douzaine de macro avec chacune une sixaine de mise en forme differente)

Merci encore

6volleyexple4.xlsx (62.07 Ko)
Rechercher des sujets similaires à "declencher macro feuille"