petite macro???

llpc

XLDnaute Nouveau
Bonsoir à tous,

j'ai un tableau de 6 colonnes et plein de lignes à convertir en tableau de 2 colonnes mais 3 fois plus de lignes... mais en intercalant les lignes;

Je m'explique: les cellules An:Bn doivent se retrouver en A(3n-2):B(3n-2), les cellule Cn:Dn doivent se retrouver en A(3n-1):B(3n-1) et enfin les cellules En:Fn doivent se retrouver en A(3n):B(3n)...

Je suppose qu'une macro pourrait me faire cette opération qui est très longue à effectuer manuellement (du moins, au vu de ma maîtrise d'excel).

Une âme charitable pourrait-elle m'aider?

merci d'avance.

Loïc
 

ROGER2327

XLDnaute Barbatruc
Re : petite macro???

Bonsoir llpc
  1. Faites une copie de la feuille à traiter.
  2. Appliquez la procédure
    Code:
    [COLOR="DarkSlateGray"]Sub toto()
    Dim i As Long
       For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
          Rows(i).Insert Shift:=xlDown
          Rows(i).Insert Shift:=xlDown
          Cells(i + 2, 1).Resize(1, 2).Cut Destination:=Cells(i, 1).Resize(1, 2)
          Cells(i + 2, 3).Resize(1, 2).Cut Destination:=Cells(i + 1, 1).Resize(1, 2)
          Cells(i + 2, 5).Resize(1, 2).Cut Destination:=Cells(i + 2, 1).Resize(1, 2)
       Next i
    End Sub[/COLOR]
    à la feuille copiée.
Il faut impérativement faire une copie de la feuille à traiter, sinon c'est votre feuille d'origine qui sera transformée.​
ROGER2327
 
Dernière édition:

ledzepfred

XLDnaute Impliqué
Re : petite macro???

Bonsoir llpc, bonsoir roger,

une autre solution : ce code copie les données comme tu le souhaites mais renvoit les données en colonne J, K (à adapter si pas vide), je suppose à la base que les données commence en ligne 1 (d'où for n=1 to...), à adapter si c'est pas le cas

Code:
Sub copie()
For n = 1 To [A65536].End(xlUp).Row
Range(Cells(n, 1), Cells(n, 2)).Copy Cells(3 * n - 2, 10)
Range(Cells(n, 3), Cells(n, 4)).Copy Cells(3 * n - 1, 10)
Range(Cells(n, 5), Cells(n, 6)).Copy Cells(3 * n, 10)
Next
End Sub

voir fichier joint

A+
 

Pièces jointes

  • Classeur1.xls
    27 KB · Affichages: 47
  • Classeur1.xls
    27 KB · Affichages: 46
  • Classeur1.xls
    27 KB · Affichages: 44

Discussions similaires

Réponses
10
Affichages
598
Réponses
5
Affichages
434

Statistiques des forums

Discussions
312 843
Messages
2 092 753
Membres
105 521
dernier inscrit
Chercheur d'excel