Diviser une colonne de valeurs avec Excel
L'astuce présentée ici vous permettra de diviser une colonne de valeurs en plusieurs colonnes (sans modifier la colonne d'origine), par exemple pour répartir une liste de noms sur 4 colonnes.
Cette formule fonctionne même si la longueur de la colonne de données est variable.
Notez que bien que la formule puisse sembler complexe ici, vous n'avez pas besoin de la comprendre pour pouvoir l'utiliser.
Exemple d'utilisation
L'objectif ici est de diviser en 4 colonnes les valeurs présentes dans la colonne A :
Copiez la formule suivante :
=LET(p;A:A;c;4;l;NBVAL(p);lc;ARRONDI.SUP(l/c;0);MAP(TRANSPOSE(SEQUENCE(c;lc));LAMBDA(v;SI(v<=l;INDEX(p;v);""))))
Si nécessaire, remplacez la plage (A:A) et le nombre de colonnes souhaitées (4) dans la formule.
Pour obtenir les 4 colonnes :

Si vous souhaitez plutôt répartir les valeurs ligne par ligne (au lieu de colonne par colonne), utilisez cette formule :
=LET(p;A:A;c;4;l;NBVAL(p);lc;ARRONDI.SUP(l/c;0);MAP(SEQUENCE(lc;c);LAMBDA(v;SI(v<=l;INDEX(p;v);""))))
Pour obtenir alors :

Fonction personnalisée
Pour simplifier son utilisation, vous pouvez créer une fonction personnalisée pour pouvoir ensuite l'utiliser très facilement :
=DIVISER_COLONNE(A:A;4)

Dans ce cas, créez une nouvelle fonction personnalisée, entrez DIVISER_COLONNE dans le premier champ, puis la formule suivante dans le dernier champ :
=LAMBDA(plage;colonnes;LET(l;NBVAL(plage);lc;ARRONDI.SUP(l/colonnes;0);MAP(TRANSPOSE(SEQUENCE(colonnes;lc));LAMBDA(v;SI(v<=l;INDEX(plage;v);"")))))
Pour pouvoir utiliser ensuite une formule bien plus simple :

Ou entrez cette formule pour la version ligne par ligne :
=LAMBDA(plage;colonnes;LET(l;NBVAL(plage);lc;ARRONDI.SUP(l/colonnes;0);MAP(SEQUENCE(lc;colonnes);LAMBDA(v;SI(v<=l;INDEX(plage;v);"")))))
