Problème d'incrémentation et de définition
Bonjour,
J'ai un fichier excel avec des feuilles vertes et des feuilles jaunes. Il faudrait que les cellules tant des feuilles jaune (i) soit copiées/collées dans les cellules tant des feuilles verte (i).
Toutes les feuilles vertes sont à gauche et les feuilles jaunes à droite.
J'ai donc créé la macro suivante :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| Sub Macro5()
Dim i, FJ, FV As Integer
FJ = 0
FV = 0
"FJ nombre de feuilles jaunes
"FV de feuilles vertes
Dim Current As Worksheet
For Each Current In Worksheets
Current.Activate
If Current.Tab.ColorIndex = 6 Or Current.Tab.ColorIndex = 27 Then
FJ = FJ + 1
End If
Next Current
For Each Current In Worksheets
Current.Activate
If Current.Tab.ColorIndex = 4 Then
FV = FV + 1
End If
Next Current
MsgBox FV
MsgBox FJ
'Compte + vérification
Dim Fverte() As String
ReDim Fverte(1 To FV)
For i = 1 To FV
Fverte(i) = Worksheets(i).Name
Next i
Dim Fjaune() As String
ReDim Fjaune(FV + 1 To FV + FJ)
For i = FV + 1 To FV + FJ
Fjaune(i) = Worksheets(i).Name
Next i
"donne un nom pour chaque feuille afin de réaliser l'opération suivante (de dire cellule tant de FJ(1) dans cellule tant de FV(1) etc...
For i = 1 To FV
Sheets(Fjaune(i)).Range("O5").Copy
Sheets(Fverte(i)).Range("C11").Select
ActiveSheet.Paste
Sheets(Fjaune(i)).Range("O6").Copy
Sheets(Fverte(i)).Range("C9").Select
ActiveSheet.Paste
Sheets(Fjaune(i)).Range("L6").Copy
Sheets(Fverte(i)).Range("C8").Select
ActiveSheet.Paste
Next i
"Truc qui bug
End Sub |
J'ai un problème ligne 41. Erreur 9 : l'indice n'appartient pas à la sélection.
Je ne vois pas comment faire... Peut-être ai-je mal définie mets noms de feuilles ?
Ou bien peut-être est-ce la ponctuation de la ligne en question...