Excel macro applicable à toutes les cellules
georgesL
-
georgesL -
georgesL -
Bonjour,
je dois sur une feuille excel faire une tâche répétitive de coupage et collage, j'ai donc créé une macro:
Sub Macroessai()
'
' Macroessai Macro
'
'
Range("A24:D25").Select
Selection.Cut
Range("E24:H24").Select
Range("H24").Activate
Selection.Cut
Range("A26").Select
End Sub
comment faire pour que cette macro soit applicable à toutes mes cellules? j'aimerai réitérer la macro sur la cellule A26 puis A28...
merci
je dois sur une feuille excel faire une tâche répétitive de coupage et collage, j'ai donc créé une macro:
Sub Macroessai()
'
' Macroessai Macro
'
'
Range("A24:D25").Select
Selection.Cut
Range("E24:H24").Select
Range("H24").Activate
Selection.Cut
Range("A26").Select
End Sub
comment faire pour que cette macro soit applicable à toutes mes cellules? j'aimerai réitérer la macro sur la cellule A26 puis A28...
merci
1 réponse
-
Bonjour,
Il manque des informations à ta demande !
Je ne vois pas le collage dans le code soumis !
Il existe plusieurs façon de faire, mais il faudrait nous en dire plus.
En attendant, voici une façon de faire :
Sub MacroEssai() Dim Cellules As Range Dim Adresse As String Set Cellules = Application.InputBox("Sélectionner la cellule de départ", Type:=8) Adresse = "A" & Cellules.Row & ":D" & (Cellules.Row + 1) Range(Adresse).Select Selection.Cut Adresse = "E" & Cellules.Row & ":H" & Cellules.Row Range(Adresse).Select Selection.Cut Range("A26").Select End Sub '
L'instruction : [ Range("H24").Activate ] me semble ici
superflus, et on ne voit pas l'instruction de collage :
Range("xy").Select
ActiveSheet.Paste
Il te faudra détailler à quel endroit tu dois coller la sélection
qui est couper.
Cdt
Lupin-
merci beaucoup pour ta réponse Lupin, en fait j'ai trouvé la solution, c'était un problème de cellules relatives et cellules absolues, voici donc mon script
ActiveCell.Offset(1, 0).Range("A1:D2").Select
Selection.Cut
ActiveCell.Offset(-1, 4).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Range("A1:D1").Select
Selection.Cut
ActiveCell.Offset(-1, 4).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(3, -8).Range("A1").Select
c'est une macro assez simple finalement!
merci encore
-