Boucle

roni77300 Messages postés 34 Statut Membre -  
roni77300 Messages postés 34 Statut Membre -
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. m@rina Messages postés 27633 Date d'inscription   Statut Modérateur Dernière intervention   11 564
     
    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
    0
    1. roni77300 Messages postés 34 Statut Membre
       
      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.
      0
  2. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    bonjour

    Du genre :

    Range
    For each cell in selection

    a effectuer
    next cell
    0
    1. roni77300 Messages postés 34 Statut Membre
       
      merci qmike,

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

      peux tu expliciter s'il te plait.


      merci bien
      0