(VBA) Utiliser nom de feuille comme variable
Bonjour à toutes et à tous !
Nouvelle sur le forum, vous pouvez m'appeler Kaera !
Mon problème est le suivant :
J'ai un certain nombre de feuilles nommées numériquement (1, 2, 3 ,4...).
Chaque feuille paire contient des infos que je veux copier et coller sur la feuille impaire qui la précède.
Concrètement, en mots, ça donne par exemple :
Sélectionner feuille 2
Copier "A1:D5"
Sélectionne feuille 1
Coller sur "A1:D5"
Sélectionner feuille 4
Copier "A1:D5"
Sélectionne feuille 3
Coller sur "A1:D5"
Etc.
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Sub test()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Worksheets
If sh.Name Mod 2 = 0 Then
sh.Range("A25:D26").Copy
ActiveSheet.Previous.Select
Selection.Range("A25:D26").Paste
ActiveSheet.Next.Select
ActiveSheet.Next.Select
End If
Next sh |
NB : j'ai écrit deux fois "ActiveSheet.Next.Select" sinon ça va tourner en boucle sur les deux premières feuilles !
Erreur "incompatibilité de type" sur l'utilisation du sh.Name Mod 2 ...
Auriez-vous des solutions ?
Je ne parviens pas à définir sh.Name comme variable :cry:
Un grand merci d'avance.