Copier automatiquement une mise en forme d'une worksheet à une autre + Error 1004
Bonjour à tous,
Je débute sur Excel, donc peut-être que c'est tout simple, mais je ne trouve pas le moyen de le faire...
En gros, j'ai un fichier Excel qui a plusieurs worksheets.
Je voudrais que quand l'utilisateur change la couleur d'une cellule de la worksheet numéro 1, la couleur d'une cellule de la worksheet soit automatiquement actualisée à partir de la première.
N'ayant pas trouvé de fonction applicable à la cellule même, j'ai voulu mettre le code dans le changement d'onglet en cherchant les méthode de la worksheet:
Code:
1 2 3 4 5
| Private Sub Worksheet_xxxxxxx()
Call Ma_macro
End Sub |
Qui appelle la macro:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| Sub Ma_macro()
Sheets(" Dashboard-sum up-AT").Select
Range("E2").Select
Selection.Copy
Sheets("ARD per Countries").Select
Range("D5:E5").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub |
La méthode Worksheet_Change n'est jamais appelée;
La méthode Worksheet_SelectChange est appelée au moindre clic sur une cellule;
La méthode Worksheet_Activate est appelée en boucle...
Aucune ne me va: d'où est-ce que je peux appeler cette fonction?
Par ailleurs, si je copie le code de la macro depuis l'une des méthodes ci-dessus, j'ai un problème que je ne comprends pas: j'obtiens l'erreur "run-time error '1004' select method of range class field" sur la ligne de code alors que si j'appelle la macro avec le même code, cette erreur n'apparaît pas.
J'ai essayé tout ce que j'ai trouvé sur le web, mais rien ne me va...
Merci d'avance pour toute aide! ;)