Transformer une colonne de 18000 lignes en 36 colonnes de 500

Bonjour chers expert d'excel, je suis nouveau et ici par besoin, mais je penses que je resterai plus longtemps que prévu tellement ce forum est une mine d'or, alors tout d'abord merci pour votre travail !

J'ai essayé de trouver tant bien que mal la réponse à ma question même si je penses qu'elle a déjà été posée mais je ne dois pas bien la formuler...

Alors voici comme le titre l'indique : j'ai une colonne avec 18000 lignes de données, que j'aimerai diviser en 36 colonnes de 500 lignes (18K/500 = 36, jusqu'ici tout va bien)

Comment faire ? Vous m'économiserai 1h de travail en 30 sec de formule ou astuce avec vos connaissances, alors merci par avance de prêter attention à mon problème !

Bien cordialement,

Bonjour Majesticasual,

Dans une colonne, sur la première ligne, saisir la formule suivante:

=INDEX($A:$A;(COLONNES($A:A)-1)*500+LIGNE())

Recopier cette formule jusqu'à la ligne 500.

Puis recopier cette colonne sur les 35 colonnes adjacentes à droite.

nota : j'ai supposé que c'est la colonne A qui contenait les 18.000 éléments. A vous d'adapter.

Si votre colonne contenant les données est la colonne H, la formule deviendra:

=INDEX($H:$H;(COLONNES($A:A)-1)*500+LIGNE())

Bonjour à tous

Si tu as Excel 2013 et que tu peux installer l'add on PowerQuery (intégré à Excel à partir de 2016) ce sera plus rapide sur ce volume que par formule

En cas de changement, mise à jour par Données, Actualiser Tout

Bonjour tout le monde,

Une tentative par macro....

Sub test()
 Dim i As Integer, c As Integer, derlig As Integer
  With Sheets("Feuil1")
   derlig = .Range("A" & Rows.Count).End(xlUp).Row
        c = 2
        i = 1
  Application.ScreenUpdating = False
   While i <= derlig - 499
     .Range(Cells(i, 1), Cells(i + 499, 1)).Copy .Cells(1, c)
        i = i + 500
        c = c + 1
   Wend
     .Range("A:A").Delete
  End With
End Sub
8classeur1.xlsm (116.67 Ko)

ctrl + e pour exécuter la macro...

Cordialement,

Bonjour Majesticasual,

Dans une colonne, sur la première ligne, saisir la formule suivante:

=INDEX($A:$A;(COLONNES($A:A)-1)*500+LIGNE())

Recopier cette formule jusqu'à la ligne 500.

Puis recopier cette colonne sur les 35 colonnes adjacentes à droite.

nota : j'ai supposé que c'est la colonne A qui contenait les 18.000 éléments. A vous d'adapter.

Si votre colonne contenant les données est la colonne H, la formule deviendra:

=INDEX($H:$H;(COLONNES($A:A)-1)*500+LIGNE())

Je n'ai même pas eu à regarder les autres messages que tu as résolue parfaitement la problématique.

Vous êtes des tueurs, merci !

Merci de ce retour ,

Je n'ai même pas eu à regarder les autres messages que tu as résolue parfaitement la problématique.

Vous êtes des tueurs, merci !

Il serait bon, ne serait ce que par curiosité, d'aller voir les autres solutions.

Remercier tous "les tueurs" qui se sont penchés sur ta question, c'est sympa . C'est notre seule récompense à nous les répondeurs

Rechercher des sujets similaires à "transformer colonne 18000 lignes colonnes 500"