Qu'est-ce que la fonction CHOISIRCOLS ?
CHOISIRCOLS (CHOOSECOLS en anglais) te sert quand tu dois présenter une partie seulement d'une base large sans exposer les colonnes sensibles ou inutiles, ou remettre les colonnes dans l'ordre qu'attend un outil externe. Tu obtiens cette vue sans toucher au tableau source ni casser une seule liaison.
Concrètement, c'est elle qui te permet de générer en quelques secondes une vue RH avec seulement le nom et le salaire depuis une base de 12 colonnes, d'extraire les 3 dernières périodes d'un tableau de bord en temps réel grâce aux numéros négatifs, ou de préparer un fichier d'import e-mailing dans l'ordre exact qu'attend ton outil marketing.
Syntaxe
=CHOISIRCOLS(tableau; num_col1; [num_col2]; [num_col3]; ...)Clique sur un argument pour aller à son explication.
Disponible uniquement dans Microsoft 365 et Excel 2021+. Le résultat est un tableau dynamique : assure-toi que la zone de destination est vide, sinon Excel affiche #DÉBO!.

Comprendre chaque paramètre de la fonction CHOISIRCOLS
Tu donnes d'abord le tableau à découper, puis la liste des colonnes que tu veux, par leur numéro. L'ordre dans lequel tu les listes est exactement l'ordre dans lequel elles s'affichent : 2; 3; 7 te sort le prénom, le nom puis le salaire, peu importe leur place d'origine.
Seule la première colonne est obligatoire après le tableau ; les suivantes sont facultatives, à empiler autant que tu veux séparées par des points-virgules. Tu peux même réclamer deux fois la même.
tableau
: le tableau source d'où tu veux extraire les colonnesÇa peut être une plage de cellules comme A1:E100, une référence à un tableau structuré comme TableVentes, ou même le résultat d'une autre fonction comme FILTRE(A1:E100; C1:C100="Paris").
Le tableau doit contenir au moins deux colonnes pour que CHOISIRCOLS ait un intérêt. Si tu passes une seule cellule, Excel retournera une erreur #VALEUR!. Les tableaux structurés sont particulièrement recommandés car la formule s'adapte automatiquement quand le tableau s'agrandit.
num_col1
: le numéro de la première colonne à extraireLes numéros commencent à 1 (première colonne du tableau) et tu peux utiliser des numéros positifs ou négatifs. Les numéros positifs comptent depuis le début : 1 = première colonne, 2 = deuxième, etc. Les numéros négatifs comptent depuis la fin : -1 = dernière colonne, -2 = avant-dernière, etc.
Attention : tu ne peux pas utiliser 0 comme numéro de colonne, Excel retournera une erreur #VALEUR!. Les numéros négatifs sont particulièrement utiles quand tu travailles avec des tableaux évolutifs : -1 pointera toujours vers la dernière colonne, même si tu en ajoutes de nouvelles.
Attention : Si tu spécifies un numéro de colonne qui n'existe pas dans ton tableau (par exemple, la colonne 10 alors que ton tableau n'en a que 8), Excel retourne #VALEUR!. Vérifie le nombre de colonnes avec =COLONNES(tableau).
num_col2, num_col3, ...
: les numéros des colonnes supplémentaires à extraire(facultatif)Tu peux en spécifier autant que tu veux, séparés par des points-virgules. Les colonnes seront affichées dans l'ordre où tu les listes.
Par exemple, =CHOISIRCOLS(A1:E10; 5; 3; 1) affichera d'abord la colonne 5, puis la 3, puis la 1. C'est parfait pour réorganiser tes données selon tes besoins sans toucher au tableau source. Tu peux même répéter la même colonne plusieurs fois si tu veux créer des comparaisons côte à côte.

Exemples pratiques pas à pas
Comment extraire seulement les colonnes utiles avec la fonction CHOISIRCOLS
La direction tranche les augmentations lundi matin et ta base employés compte huit colonnes, dont l'e-mail, le téléphone et le département dont personne n'a besoin en réunion. Tu veux un document qui montre le prénom, le nom et le salaire, rien d'autre. La fonction CHOISIRCOLS pioche ces trois colonnes et les affiche dans un tableau à part, sans que tu touches à ta base.
- 1Dans une cellule, écris
=CHOISIRCOLS(. - 2En 1er argument : sélectionne la base entière à découper,
A1:H13. La sélection démarre en ligne 1 pour emmener la ligne d'en-tête avec les données, si bien que la vue obtenue affiche ses propres titres de colonnes. Les huit colonnes y entrent, même celles que tu ne veux pas montrer, car ce sont les numéros suivants qui font le ménage. - 3En 2ᵉ argument : saisis le rang de la colonne
Prénom,2. Le comptage part de la première colonne de la sélection et non des lettres de la feuille. Les deux repères coïncident ici parce que la sélection commence en colonne A, mais ils se décalent dès qu'elle démarre ailleurs. - 4En 3ᵉ argument : saisis le rang de la colonne
Nom,3. Elle se range juste derrière le prénom, parce que les colonnes sortent dans l'ordre où tu listes leurs numéros et non dans celui de la base. - 5En 4ᵉ argument : saisis le rang de la colonne
Salaire,7. Elle se trouve à l'autre bout de la base, séparée du nom parEmail,TéléphoneetDépartement. Ces trois colonnes n'ont pas leur numéro dans ta liste, elles ne sortiront donc pas. - 6Ferme la parenthèse et appuie sur Entrée. Les trois colonnes s'affichent d'un coup, sur les treize lignes de la sélection.
=CHOISIRCOLS(A1:H13; 2; 3; 7)Comment réorganiser l'ordre des colonnes avec la fonction CHOISIRCOLS
Ta campagne e-mailing part demain et l'outil d'import refuse ton fichier tant que les colonnes ne sont pas dans l'ordre qu'il attend : l'adresse e-mail, puis le contact, puis l'entreprise. Ta base range évidemment ces informations dans un tout autre ordre. La fonction CHOISIRCOLS te sort les colonnes dans l'ordre où tu les demandes, ce qui te donne un fichier prêt à importer sans un seul copier-coller.
- 1Dans une cellule, écris
=CHOISIRCOLS(. - 2En 1er argument : sélectionne la base de contacts à réordonner,
A1:F4. La ligne d'en-tête entre dans la sélection, donc le fichier obtenu garde des noms de colonnes lisibles au lieu de démarrer sur une adresse. - 3En 2ᵉ argument : saisis le rang de la colonne
Email,3. C'est la première information que ton outil d'import attend, et ce numéro placé en tête de liste la fait sortir en première position. - 4En 3ᵉ argument : saisis le rang de la colonne
Contact,6. Elle occupe la dernière des six colonnes de la base et remonte ici en deuxième, sans qu'une seule cellule bouge dans le fichier source. - 5En 4ᵉ argument : saisis le rang de la colonne
Entreprise,2. Elle passe de la deuxième place dans la base à la troisième dans la vue, ce qui montre bien que la position du numéro dans ta liste commande tout. - 6Ferme la parenthèse et appuie sur Entrée. Le fichier obtenu tient sur quatre lignes, l'en-tête et les trois contacts.
=CHOISIRCOLS(A1:F4; 3; 6; 2)Email sort en premier alors qu'il est la troisième colonne de la base). Ton fichier source, lui, reste intact.Comment garder les dernières colonnes d'un tableau avec la fonction CHOISIRCOLS
Ton suivi gagne une colonne de chiffre d'affaires à chaque trimestre et le comité de direction ne regarde jamais que les deux derniers. Tu en as assez de rouvrir ta formule pour décaler les numéros de colonnes à chaque fois. La fonction CHOISIRCOLS sait compter à partir de la fin, donc ta vue suit d'elle-même le tableau qui s'allonge.
- 1Dans une cellule, écris
=CHOISIRCOLS(. - 2En 1er argument : écris le nom du tableau structuré qui porte le suivi,
SuiviCA. Une sélection figée commeA1:E4resterait bloquée sur ces cinq colonnes. Le nom du tableau, lui, suit son extension à chaque trimestre ajouté. - 3En 2ᵉ argument : saisis le rang de la colonne à garder en tête de la vue,
1. LeDépartementsert d'étiquette aux montants, et une ligne de chiffres sans son libellé ne se lit pas en réunion. - 4En 3ᵉ argument : saisis le rang de l'avant-dernière colonne,
-2. Un numéro négatif se compte depuis le bord droit du tableau, ce qui désigne aujourd'huiCA Q3. - 5En 4ᵉ argument : saisis le rang de la dernière colonne,
-1. Il pointe surCA Q4tant que le suivi s'arrête là, et sur la colonne du trimestre suivant dès qu'elle est saisie. - 6Ferme la parenthèse et appuie sur Entrée. La vue tient en trois colonnes, et l'arrivée d'un nouveau trimestre déplace
-2et-1sur les deux périodes les plus récentes sans que tu rouvres la formule.
=CHOISIRCOLS(SuiviCA; 1; -2; -1)Comment combiner la fonction CHOISIRCOLS avec FILTRE pour un rapport ciblé
Le responsable de l'entrepôt de Paris te réclame l'état de son stock, pas celui de Lyon, et surtout pas la référence ni la catégorie qui ne lui parlent pas. Ton catalogue mélange les deux entrepôts sur six colonnes. La fonction CHOISIRCOLS emboîtée autour de FILTRE te donne les lignes de Paris réduites aux seules colonnes utiles, en une formule.
- 1Dans une cellule, écris
=CHOISIRCOLS(. - 2En 1er argument : écris le filtre qui sélectionne les lignes et referme-le,
FILTRE(A2:F7; D2:D7="Paris"). La sélectionA2:F7démarre en ligne 2 pour laisser la ligne d'en-tête dehors, sinon le titreEntrepôtserait examiné comme une ligne de données. La conditionD2:D7="Paris"parcourt la colonne des entrepôts et ne laisse remonter que les trois produits stockés à Paris. - 3En 2ᵉ argument : saisis le rang de la colonne
Produit,2. Ce rang se compte sur le résultat de FILTRE, qui a gardé les six colonnes de départ et n'a réduit que le nombre de lignes. - 4En 3ᵉ argument : saisis le rang de la colonne
Prix vente,5. C'est le premier des deux chiffres attendus, et les colonnesRéf,CatégorieetEntrepôtrestent dehors faute d'avoir leur numéro dans ta liste. - 5En 4ᵉ argument : saisis le rang de la colonne
Stock,6. Elle ferme le tableau filtré, si bien que-1donnerait ici exactement le même résultat. - 6Ferme la parenthèse et appuie sur Entrée. Celle de la fonction FILTRE a déjà été refermée dans l'étape du 1er argument.
=CHOISIRCOLS(FILTRE(A2:F7; D2:D7="Paris"); 2; 5; 6)
Les erreurs fréquentes avec la fonction CHOISIRCOLS
Tout tourne autour du numéro de colonne que tu réclames. Demande une colonne qui n'existe pas (la 10e d'un tableau qui en compte 8), ou tape 0 qui n'est tout simplement pas un numéro valide, et tu récoltes #VALEUR!, comme quand tu nourris CHOISIRCOLS avec uneplage d'une seule colonne, où elle n'a rien à choisir.
L'autre famille d'ennuis vient du résultat lui-même : c'est un tableau dynamique qui a besoin de place pour s'étaler, donc une cellule voisine occupée déclenche #DÉBO!.
Numéro de colonne hors limites : erreur #VALEUR!
Si tu spécifies un numéro de colonne qui n'existe pas dans ton tableau (par exemple, la colonne 10 pour un tableau qui n'en contient que 8), Excel retourne #VALEUR!. C'est l'erreur la plus fréquente avec CHOISIRCOLS.
Solution : Vérifie le nombre total de colonnes dans ton tableau source avec =COLONNES(tableau). Pour éviter cette erreur avec des tableaux dynamiques, utilise des numéros négatifs pour référencer les dernières colonnes : -1 pour la dernière, -2 pour l'avant-dernière.
Utilisation de 0 comme numéro de colonne
Excel n'accepte pas 0 comme numéro de colonne. Les colonnes commencent à 1 (ou -1 pour la dernière). Si tu écris =CHOISIRCOLS(A1:E10; 0), tu obtiendras #VALEUR!.
Solution : Utilise 1 pour la première colonne ou -1 pour la dernière. Il n'y a jamais de cas où 0 serait valide dans CHOISIRCOLS.
Tableau source avec une seule colonne
CHOISIRCOLS nécessite un tableau avec au moins deux colonnes. Si tu passes une plage à une seule colonne comme A1:A10, Excel retournera #VALEUR!.
Solution : Assure-toi que ton premier argument est bien une plage contenant plusieurs colonnes, comme A1:D10 et non A1:A10. Si ton tableau n'a qu'une colonne, CHOISIRCOLS n'apporte rien : utilise directement la plage.
Débordement de tableau : erreur #DÉBO!
Comme CHOISIRCOLS est une fonction tableau dynamique, elle renvoie un résultat qui peut s'étendre sur plusieurs cellules. Si les cellules adjacentes ne sont pas vides, Excel affiche #DÉBO!.
Solution : Vide les cellules autour de ta formule ou déplace-la vers une zone vide. Excel a besoin d'espace pour afficher tout le tableau résultant. Tu peux aussi utiliser =SIERREUR(CHOISIRCOLS(...); "") pour protéger ta formule si le tableau source peut être vide.

CHOISIRCOLS vs CHOISIRLIGNES vs INDEX vs FILTRE
Prends CHOISIRCOLS quand tu veux garder certaines colonnes et les remettre dans l'ordre qui t'arrange ; sa jumelle CHOISIRLIGNES fait pareil mais sur les lignes. Si c'est plutôt « ne montre-moi que les lignes qui respectent telle condition », c'est FILTRE qu'il te faut, et tu peux d'ailleurs enchaîner les deux.
INDEX sait aussi piocher, mais une seule valeur à la fois et sans numéros négatifs : pour attraper la dernière colonne d'un tableau qui grandit, CHOISIRCOLS et son -1 restent imbattables. Côté version, garde en tête que CHOISIRCOLS exige Microsoft 365 ou Excel 2021+, là où INDEX tourne partout.
| Critère | CHOISIRCOLS | CHOISIRLIGNES | INDEX | FILTRE |
|---|---|---|---|---|
| Sélection de colonnes | ✅ Oui (multiple) | ❌ Non | ⚠️ Limitée (1 à la fois) | ❌ Non |
| Sélection de lignes | ❌ Non | ✅ Oui (multiple) | ⚠️ Limitée (1 à la fois) | ✅ Oui (par condition) |
| Résultat | ✅ Tableau dynamique | ✅ Tableau dynamique | ❌ Valeur unique | ✅ Tableau dynamique |
| Réorganisation | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non |
| Numéros négatifs | ✅ Oui (-1 = dernière) | ✅ Oui (-1 = dernière) | ❌ Non | ❌ Non |
| Disponibilité | ⚠️ Microsoft 365 / 2021+ | ⚠️ Microsoft 365 / 2021+ | ✅ Toutes versions | ⚠️ Microsoft 365 / 2019+ |

Astuces avancées avec CHOISIRCOLS
Extraire plusieurs colonnes consécutives avec SEQUENCE
Au lieu d'écrire =CHOISIRCOLS(A1:Z10; 5; 6; 7; 8; 9), utilise =CHOISIRCOLS(A1:Z10; SEQUENCE(1; 5; 5)) pour extraire les colonnes 5 à 9 automatiquement. SEQUENCE génère ici un tableau {5; 6; 7; 8; 9} que CHOISIRCOLS interprète directement.
Résultat identique, formule plus courte et moins de risque d'erreur de saisie.
Combiner FILTRE et CHOISIRCOLS pour des rapports dynamiques ciblés
La combinaison FILTRE puis CHOISIRCOLS est redoutablement efficace : =CHOISIRCOLS(FILTRE(Ventes; Région="Nord"); 1; 3; 5) filtre d'abord les lignes (région Nord), puis extrait uniquement les colonnes pertinentes. Tu obtiens un rapport à la fois filtré et épuré en une seule formule.
Si le filtre ne retourne aucune ligne, protège la formule avec SIERREUR pour éviter un #CALC!.
Utiliser les numéros négatifs pour un tableau de bord toujours à jour
Pour un tableau de bord qui affiche toujours les 3 dernières périodes, utilise =CHOISIRCOLS(A1:Z10; 1; -3; -2; -1). Quand tu ajoutes de nouvelles colonnes chaque mois, les numéros négatifs pointent automatiquement vers les bonnes périodes.
C'est la clé pour des rapports mensuels ou trimestriels qui se mettent à jour sans jamais modifier la formule.
Questions fréquentes
Oui, c'est l'un des super-pouvoirs de CHOISIRCOLS. Tu peux réorganiser les colonnes comme tu veux. Par exemple, =CHOISIRCOLS(A1:D10; 3; 1; 2) affichera d'abord la colonne 3, puis 1, puis 2.
C'est parfait pour créer des rapports personnalisés à partir d'un tableau existant sans modifier la source, ou pour préparer un fichier d'export dans l'ordre attendu par un outil externe.
Utilise des numéros négatifs : -1 représente la dernière colonne, -2 l'avant-dernière, etc. =CHOISIRCOLS(A1:D10; -1) retourne toujours la dernière colonne.
Si ton tableau s'agrandit avec de nouvelles colonnes, ta formule restera toujours valide sans aucune modification. C'est la technique clé pour les tableaux de bord qui accueillent régulièrement de nouvelles données.
CHOISIRCOLS sélectionne des colonnes par leur position, tandis que FILTRE sélectionne des lignes selon une condition. Elles sont complémentaires : utilise CHOISIRCOLS pour choisir quelles colonnes afficher, et FILTRE pour choisir quelles lignes afficher.
Tu peux même les combiner : =CHOISIRCOLS(FILTRE(tableau; condition); col1; col2) filtre d'abord les lignes puis extrait uniquement les colonnes utiles.
Oui, et c'est même recommandé. Tu peux écrire =CHOISIRCOLS(TableVentes; 1; 3) au lieu de =CHOISIRCOLS(A1:Z100; 1; 3). Si ton tableau s'agrandit ou se déplace, la formule reste valide et se met à jour automatiquement.
Les tableaux structurés rendent aussi la formule plus lisible : le nom du tableau documente lui-même les données source.
Oui, c'est possible et parfois utile. =CHOISIRCOLS(A1:D10; 1; 1; 2) affichera la colonne 1 deux fois, puis la colonne 2.
C'est pratique pour créer des comparaisons côte à côte ou pour des mises en page spécifiques dans des rapports automatisés, par exemple afficher l'étiquette d'identification à gauche et à droite d'un tableau de valeurs.
Pour aller plus loin
Continue sur ta lancée après la fonction CHOISIRCOLS : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir




