TRANSPOSE retourne une plage : les lignes deviennent des colonnes et les colonnes deviennent des lignes. C'est la solution quand des données sont arrivées dans le mauvais sens, ou quand une fonction attend une ligne alors que vous avez une colonne.
Syntaxe
=TRANSPOSE(array_or_range)
array_or_range: La plage ou le tableau à faire pivoter. La première ligne de l'entrée devient la première colonne du résultat, et ainsi de suite.
Le résultat se déverse : les cellules dont il a besoin doivent donc être vides.
Exemple de base
Avec ce tableau en A1:C2 :
A B C
1 Nom Service Salaire
2 Ana Ventes 52000
=TRANSPOSE(A1:C2)
Renvoie un tableau de 3 lignes et 2 colonnes :
Nom Ana
Service Ventes
Salaire 52000
Une ligne de 3 cellules devient une colonne de 3 cellules, et une plage 3x2 devient une plage 2x3.
Quand l'utiliser
Transformer une colonne en ligne (ou l'inverse)
=TRANSPOSE(A2:A13)
Cette formule dispose à l'horizontale une colonne de 12 éléments, utile pour des en-têtes construits à partir d'une liste.
Construire une ligne d'en-têtes à partir d'une liste
Si votre liste de catégories est dans une colonne mais que vous la voulez en haut d'un tableau, =TRANSPOSE(Listes!A2:A8) garde les en-têtes synchronisés avec la liste.
Trier ou filtrer à l'horizontale
SORT, FILTER et UNIQUE travaillent sur des lignes. Pour les utiliser sur une plage horizontale, faites pivoter, appliquez la fonction, puis refaites pivoter :
=TRANSPOSE(SORT(TRANSPOSE(A1:H1)))
Cette formule trie une seule ligne de valeurs.
Combiner avec d'autres fonctions
- Laisser
VLOOKUPlire un tableau horizontal :=VLOOKUP(E2, TRANSPOSE(A1:H2), 2, FALSE)fait pivoter le tableau pour qu'une recherche verticale fonctionne dessus. - Faire correspondre les orientations : quand un tableau est une ligne et un autre une colonne, appliquez
TRANSPOSEà l'un des deux pour qu'ils s'alignent avant de les combiner.
Opérations matricielles
TRANSPOSE est une brique du calcul matriciel avec MMULT. Par exemple =MMULT(A1:C3, TRANSPOSE(E1:G1)) multiplie une matrice par un vecteur colonne.
TRANSPOSE ou Collage spécial > Transposé
Edition > Collage spécial > Coller transposé copie les valeurs une seule fois et laisse des données statiques. TRANSPOSE reste vivante : si la source change, le résultat change. Utilisez le collage transposé pour un remodelage ponctuel, et TRANSPOSE quand la mise en page doit suivre la source.
Erreurs courantes
#REF!: le résultat de la matrice n'a pas été développé car il écraserait des données. Des cellules de la zone de résultat ne sont pas vides. Videz-les ou déplacez la formule.#VALUE!. L'entrée n'était pas une plage ou un tableau valide, par exemple une valeur seule passée là où une plage est attendue.- Cellules vides inattendues. La plage source contient des cellules vides, qui ressortent comme des cellules vides. Réduisez la plage ou utilisez d'abord
FILTER. - Mauvaise orientation après combinaison avec d'autres fonctions. Rappelez-vous que des fonctions comme
SPLITrenvoient une ligne, et queTRANSPOSE(SPLIT(A1, ","))renvoie une colonne.
Questions fréquentes
TRANSPOSE fonctionne-t-elle avec des colonnes entières ? Oui, mais TRANSPOSE(A:A) produit plus d'un million de colonnes et échoue. Utilisez une plage bornée comme A1:A100.
Peut-on modifier les cellules transposées ? Non. Ce sont des résultats de formule. Modifiez plutôt les cellules sources.
Quelle différence entre TRANSPOSE et FLATTEN ? TRANSPOSE fait pivoter en gardant la forme. FLATTEN rassemble tout dans une seule colonne.
Fonctions associées
FLATTEN: Rassembler une plage dans une seule colonne.SORT: Trier les lignes d'une plage.SPLIT: Diviser du texte sur plusieurs cellules.SEQUENCE: Générer un tableau de nombres.ARRAYFORMULA: Appliquer une formule à toute une plage.