Boucle

Bonjour,

bonjour, j'ai crée une macro qui copie colle les cellules de mon tableau, avec un autre positionnement, dans la deuxieme feuille de ce meme classeur.
j'ai fait ma macro avec l'enregistreur de macro. donc je n'ai fait que sur la premiere ligne.

En fait il faut maintenant que je rajoute une derniere chose pour que ma macro s'exécute tout seul dans tout mon tableau qui doit faire quelques centaines de lignes.
donc en fait que ma macro, une fois les cellules de la premiere ligne copiées-collées passe a la deuxieme ligne en répétant exactement la meme opération, etc etc etc.

Comment puis je faire ?

merci d'avance pour votre réponse.

roni77300

2 réponses

  1. Modérateur
    Bonjour,

    Il faut que tu mettes l'action DANS la boucle...

    Une boucle de type :

    For Each cellule in ActiveSheet.Range("ta plage de cellule sur laquelle tu boucles)
    
    tu fais ton copier coller en prenant la variable "cellule"
    
    Next cellule


    m@rina

    Sans voir ton code, ce n'est pas facile de t'en dire plus.
    Sache aussi que l'enregistreur de macro est ton ami, mais il ne faut pas en attendre trop. Il faut ensuite nettoyer le code...

    m@rina
    1. voila pour le moment j'ai ce tableau la

      A B C D E C .... N
      1 ex1 ex1 ex1 ex1 ex4 ex8.....
      2 ex1 ex1 ex1 ex1 ex5 ex9.....
      ...
      ...
      .
      .
      .

      Range("A1:E1").Select
      Selection.Copy
      Sheets("Feuil2").Select
      ActiveSheet.Paste
      Sheets("Feuil1").Select
      Range("F1:J1").Select
      Application.CutCopyMode = False
      Selection.Copy
      Sheets("Feuil2").Select
      Range("A2").Select
      ActiveSheet.Paste
      Sheets("Feuil1").Select
      Range("K1:N1").Select
      Application.CutCopyMode = False
      Selection.Copy
      Sheets("Feuil2").Select
      Range("A3").Select
      ActiveSheet.Paste
      Sheets("Feuil1").Select
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      Range("A2:E2").Select
      Application.CutCopyMode = False
      Selection.Copy
      Sheets("Feuil2").Select
      Range("A4").Select
      ActiveSheet.Paste
      Sheets("Feuil1").Select
      Range("F2:J2").Select
      Application.CutCopyMode = False
      Selection.Copy
      Sheets("Feuil2").Select
      Range("A4:E4,A5").Select
      Range("A5").Activate
      ActiveSheet.Paste
      Sheets("Feuil1").Select
      Range("K2:N2").Select
      Application.CutCopyMode = False
      Selection.Copy
      Sheets("Feuil2").Select
      Range("A6").Select
      ActiveSheet.Paste
      Range("C9").Select

      j'aimerai que la macro fasse toutes les lignes de la meme facon.
  2. bonjour

    Du genre :

    Range
    For each cell in selection

    a effectuer
    next cell
    1. merci qmike,

      mais vois tu, mes connaissances en macro sont vraiment naze.

      peux tu expliciter s'il te plait.

      merci bien