La fonction WRAPCOLS dans Google Sheets

Lorsqu’il s’agit de transformer une ligne ou une colonne en plusieurs colonnes dans Google Sheets, la fonction WRAPCOLS est là pour nous faciliter la tâche. Plus besoin d’utiliser des OFFSETs multiples, une QUERY ou une combinaison de VLOOKUP et SEQUENCE pour obtenir un tableau bidimensionnel. Avec WRAPCOLS, tout devient plus simple et efficace.

Syntaxe et arguments

La syntaxe de la fonction WRAPCOLS est la suivante : WRAPCOLS(plage, nombre_de_colonnes, [valeur_par_défaut]).

Les arguments de la fonction WRAPCOLS sont les suivants :

  • plage : L’ensemble ou la plage à transformer. Il peut s’agir d’une seule colonne ou d’une seule ligne.
  • nombre_de_colonnes : Un nombre représentant le nombre maximum de cellules pour chaque colonne dans le résultat.
  • valeur_par_défaut : Il s’agit d’un argument facultatif dans la fonction WRAPCOLS pour remplacer #N/A dans les cellules vides par une valeur donnée.

Comment utiliser la fonction WRAPCOLS dans Google Sheets

Prenons l’exemple suivant : nous avons des valeurs de ventes mensuelles pour les trimestres Q1, Q2, Q3 et Q4, entrées dans une colonne sous les libellés correspondants.

EXEMPLE

Pour transformer ces données en plusieurs colonnes, nous pouvons utiliser la formule WRAPCOLS suivante dans la cellule D3 :

=WRAPCOLS(B3:B18, 4)

Ici, la plage est B3:B18 et le nombre de colonnes est 4.

La fonction WRAPCOLS est l’une des nouvelles fonctionnalités de Google Sheets, qui simplifie grandement ce processus.

Il est également possible d’utiliser une formule alternative pour obtenir le même résultat :

=ArrayFormula(vlookup(transpose(sequence(4,4,row(B3))),{row(B3:B18),B3:B18},2,0))

Il suffit de modifier la référence de plage pour s’adapter à une ligne au lieu d’une colonne.

L’argument pad_with

Lorsque l’argument nombre_de_colonnes ne correspond pas exactement au nombre de cellules dans la plage, la fonction WRAPCOLS renvoie #N/A dans les cellules vides.

Il est possible de remplacer cette valeur par défaut avec une autre valeur en utilisant la formule suivante :

=WRAPCOLS(A1:A5, 3, "no value")

La fonction WRAPCOLS et le tri d’un tableau bidimensionnel

Supposons que nous avons les valeurs de ventes sous les colonnes Q1, Q2, Q3 et Q4 dans les cellules D3:G6.

Comment pouvons-nous trier les ventes mensuelles sous chaque colonne en utilisant un seul code ?

Voici comment procéder :

  1. Copiez les libellés des colonnes D3:G3 et collez-les dans les cellules D10:G10.
  2. Utilisez la formule MAKEARRAY suivante pour générer une matrice de même taille :

=makearray(3,4,lambda(r,c,c+0))

  1. Aplatissez cette matrice en une seule colonne :

=flatten(makearray(3,4,lambda(r,c,c+0)))

  1. Aplatissez les valeurs à l’exception des libellés de colonne :

=flatten(D4:G6)

  1. Combinez les deux formules précédentes pour obtenir un tableau à deux colonnes :

={flatten(makearray(3,4,lambda(r,c,c+0))),flatten(D4:G6)}

  1. Triez ce tableau en fonction de la première colonne (les libellés de colonne) dans l’ordre croissant et de la deuxième colonne (les chiffres de vente) dans l’ordre croissant :

=sort({flatten(makearray(3,4,lambda(r,c,c+0))),flatten(D4:G6)},1,1,2,1)

  1. Extrayez la deuxième colonne en utilisant la fonction INDEX :

=index(sort({flatten(makearray(3,4,lambda(r,c,c+0))),flatten(D4:G6)},1,1,2,1),0,2)

  1. Enfin, utilisez la fonction WRAPCOLS pour transformer ce tableau à une dimension en un tableau à deux dimensions :

=wrapcols(index(sort({flatten(makearray(3,4,lambda(r,c,c+0))),flatten(D4:G6)},1,1,2,1),0,2),3)

C’est tout ce qu’il faut pour utiliser la fonction WRAPCOLS dans Google Sheets. Profitez bien de cette fonctionnalité !

Pour en savoir plus sur Google Sheets et d’autres outils, visitez Crawlan.com.

Articles en lien