Boucle et transposition de colonne en une cellule

Bonjour, je débute en macroVBA et j'aurais besoin de votre avis chers EXCELIENS :)

J'ai une seule colonne A et 3507 lignes contenant des chaines de caractères (exemple : 0062T00001FSp28, )

Je souhaiterais avoir une macro qui boucle et chaque 20 lignes, elle transpose de la colonne A, les 20 cellules ( des lignes précédentes) en une seule cellule (idéalement dans une autre feuille)

EXEMPLE ->

0062T00001EAFP8,
0062T00001EgSCP,
0062T00001Ej8eA,
0062T00001Ei6YF,
0062T00001FUcly,
0062T00001IAf0X,
0063n00000vTnlI,
0062T00001Eekh2,
0062T00001Elu1n,
0062T00001Elu1s,
0062T00001IAPnQ,
0062T00001IAvWp,
0063n00000vTC80,
0062T00001FRzrw,
00634000014nRlW,
00634000019Sewe,
0063n00000vTGwR,
0063n00000vmKSt,
0062T00001CTEHj,
0062T00001CSCAZ,
0062T00001CSCGN,
0062T00001CSFyK,
0062T00001CSay0,
0062T00001CSn87,
0062T00001E7T4P,
0062T00001E7T6B,
0062T00001E7U36,
0062T00001E7UHs,
0062T00001E7X3k,
0062T00001E7fog,
0062T00001E7nxp,
0062T00001E83Te,
0062T00001E87Kw,
0062T00001E8BXe,
0062T00001E8BXj,
0062T00001E8LKX,
0062T00001E8jkg,
0062T00001E8x07,
0062T00001E9DvK,
0062T00001E9I1l,

Je souhaiterais que ca devienne sous la forme

Ligne 1 :

0062T00001EAFP8, 0062T00001EgSCP, 0062T00001Ej8eA, 0062T00001Ei6YF, 0062T00001FUcly, 0062T00001IAf0X, 0063n00000vTnlI, 0062T00001Eekh2, 0062T00001Elu1n, 0062T00001Elu1s, 0062T00001IAPnQ, 0062T00001IAvWp, 0063n00000vTC80, 0062T00001FRzrw, 00634000014nRlW, 00634000019Sewe, 0063n00000vTGwR, 0063n00000vmKSt, 0062T00001CTEHj, 0062T00001CSCAZ,

Ligne 2 :

les 20 lignes suivantes

ECT ...

J'espère que c'est faisable ? Pouvez-vous m'aider svp ?

Merci d'avance

Bonjour

Faisable par PowerQuery, intégré à Excel

Salut Meriembelk,
Salut 78chris,

faisable avec VBA, intégré à Excel depuis 1993... on se demande bien pourquoi...
Soyons moderne, svp !

Un double-clic sur la feuille démarre la macro
- les données démarrent en [A1] ;
- TU auras créé la feuille 'Extract'

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
Dim iRow%, sItem$
'
Cancel = True
With Worksheets("Extract")
    .Cells.Delete
    For x = 1 To Range("A" & Rows.Count).End(xlUp).Row
        sItem = sItem & IIf(sItem <> "", ", ", "") & Replace(Range("A" & x).Value, ",", "")
        If x Mod 20 = 0 Then _
            iRow = iRow + 1: _
            .Range("A" & iRow).Value = sItem: _
            sItem = ""
    Next
    .Activate
End With
'
End Sub
6meriembelk.xlsm (18.31 Ko)


A+

RE

faisable avec VBA, intégré à Excel depuis 1993... on se demande bien pourquoi...

Soyons moderne, svp !

6meriembelk.xlsm (18.31 Ko)
Ce n'est pas un problème de modernité mais de profiter des avancées quand cela apporte un plus
En 27 ans même VBA a évolué et je ne doute pas que tu ne l'utilises pas exactement comme en 1993 (où il était en français d'ailleurs)

Salut Chris,

je m'attendais à une réaction mais pas aussi rapide !
Sache que je ne critique pas PowerTruc et ne sous-estime encore moins vos compétences dans ce domaine qui m'est complètement inconnu.

Je voulais te titiller, bien gentiment, juste pour le fun !

Bien vu, hein ?


A+, dans d'autres aventures...

RE

Tu n'es pas le premier à gratter ce point donc il a du se sensibiliser au fil des des grattages.

Pas de souci. Comme je l'ai dit il y a peu à ThauThème qui comme toi s’éclate en VBA, je m'éclate plus avec PowerQuery mais n'ai rien contre Vba tant qu'on ne réinvente pas l'eau tiède (ce qui n'est pas le cas ici)

@plus sur un fil

Merciiiiiiiiiii CURULIS57 et à tous, la macro fonctionne super bien ! vous m'avez grandement aidé ! ;)

Rechercher des sujets similaires à "boucle transposition colonne"