Transformer ligne en colonne selon condition

Bonjour à tous,

J'ai un fichier de données "brutes". Ces données sont inscrites dans un tableau sous forme de ligne

Afin de pouvoir les retraiter correctement, je suis obligé de les mettre sous forme de colonne.

Le copier-coller spéciale (valeurs + transposer) à l'air de fonctionner avec ma macro.

Mais je n'arrive pas à inscrire autant de fois le nom que j'ai de cellules copiées dans la destination...

Vous trouverez ci-joint le fichier lignesToColonnes.xlsm,

Merci d'avance de m'avoir lu,

Bonne journée à vous

Bonjour Cocouette, le forum,

Un essai....pas optimisé...

Sub Bouton1_Cliquer()
 Dim col As Integer, dercol As Integer
 Dim dl As Integer, derlig As Integer

 Application.ScreenUpdating = False

 Sheets("résultat").Range("A1").CurrentRegion.Offset(1, 0).ClearContents

  With Sheets("donnéesBrutes")
       dl = .Range("A" & Rows.Count).End(xlUp).Row
   dercol = .Cells(1, Cells.Columns.Count).End(xlToLeft).Column
    i = 2
   Do While i <= dl
     For col = 3 To dercol
      derlig = Sheets("résultat").Range("A" & Rows.Count).End(xlUp).Row + 1
       If .Cells(i, col) <> "" Then
        Sheets("résultat").Range("A" & derlig) = .Range("A" & i)
        Sheets("résultat").Range("B" & derlig) = .Cells(1, col)
        Sheets("résultat").Range("B" & derlig).NumberFormat = "dd/mm/yy;@"
        Sheets("résultat").Range("C" & derlig) = .Cells(i, col)
       End If
      derlig = derlig + 1
     Next col
    i = i + 1
   Loop
  End With
    Sheets("résultat").Activate
End Sub

Cordialement,

Bonjour @xorsankukai,

Merci de ton retour rapide !

Ca fonctionne parfaitement, je viens de finir de l'adapter sur mon fichiers avec mes milliers de lignes, tout est nickel !

Merci encore l'expert,

a++

Rechercher des sujets similaires à "transformer ligne colonne condition"