Bonjour,

J'essaie de faire la chose suivante:
Dans une feuille Excel, à partir de la cellule 14 de la colonne A, couper le contenu de cette cellule, le coller 3 cellules plus bas, et recommencer avec un step 11 jusqu'à la millième ligne. J'ai écrit cela ainsi:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Sub Intervertir()
 
For i = 14 To 1000 Step 11 ' pour i dont la valeur va de 14 à 1000,
                           ' toutes les 11 lignes
   Range("A & i" ).Select
   Selection.Cut
   Range("A & i + 3" ).Select
   ActiveSheet.Paste
   Next i 'incrémentation
 
End Sub
Ceci donne un message d'erreur 1004, objet Range non reconnu avec la méthode _global.
J'ai également essayé une variante avec Offset, infructueuse elle aussi:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
Sub Intervertir()
For i = 14 To 1000 Step 11 ' pour i dont la valeur va de 14 à 1000, 
                           ' toutes les 11 lignes
Range("A14" ).Select
Selection.Cut Destination:=Selection.Offset(3, 0).Address
Next i 'incrémentation
End Sub
Voici en somme l'action qui s'enregistre lorsque j'utilise le générateur de macro, et avec laquelle il faudrait faire une boucle:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
Sub Macro2()
 Range("A14" ).Select
Selection.Cut
Range("A17" ).Select
ActiveSheet.Paste
Range("A25" ).Select
Selection.Cut
Range("A28" ).Select
ActiveSheet.Paste
Range("A36" ).Select
Selection.Cut
Range("A39" ).Select
ActiveSheet.Paste
Etc juqu'à 1000
End Sub
Merci d'avance pour toute suggestion!!!