je cherche à realiser une macro qui me permettrait de transferer les cellules d'une premiere colonne dans celles d'une seconde mais espacées de 3 cellules vides.
je voudrais donc réaliser une itération du procédé seulement je ne parviens pas a definir mon argument ou objet de départ.(l'aide excel n'est pas top)
je vous met mes lignes:
Sub Macro2(i)
'
' Macro2 Macro
' Macro enregistrée le 11/04/2008 par S590631
'
Sub Macro2(i)
'
' Macro2 Macro
' Macro enregistrée le 11/04/2008 par S590631
'
'
Range("B" & i).Copy Destination:=Range("A" & (i + (i - 1) * 4))
End Sub
quant à la valeur de i, il faut la déterminer avant d'appeler la macro.
oui mais c'est la qu'appariat mon second probleme, comment demander à ce que i soit tout reel (en fait indicateur du no de la cellule) qui va de 1 à 500
Sub Macro2(i)
'
' Macro2 Macro
' Macro enregistrée le 11/04/2008 par S590631
'
' Copiera B i dans Trois colonnes à droite
Range("B" & i).Copy Destination:=Range("B" & i).offset( , 3)
End Sub
bon appetit.
Je vais manger alors si je ne réponds pas tout de suite... d'autres le feront certainement
Pour finir maintenant que le problème des lignes (i) est posé:
deux solutions:
1 de ligne à ligne ( prendra plus de temps)
Code:
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 11/04/2008 par S590631
'
' Copiera B i dans Trois colonnes à droite c'est à dire dans colonne F
For i= 1 to 500
Range("B" & i).Copy Destination:=Range("F" & i)
next i
End Sub
Deuxième solution plus rapide et plus simple, en copiant toute la plage d'un bloc:
Code:
Sub Macro2(i)
'
' Macro2 Macro
' Macro enregistrée le 11/04/2008 par S590631
'
' Copiera B i dans Trois colonnes à droite
Range("B1:500").Copy Destination:=Range("F1")
End Sub
sur le programme de francois il apparait argument non facultatif lorsque je l'execute et c'est un probleme recurent sur presque tout ce que j'ai essayé.
sur celui qui suit, l'action ne se produit que sur une seul cellule et pas sur toute ma colonne?? comment faire pour généraliser l'action?