Fonction UNIQUE sur plusieurs colonnes

Fonction UNIQUE sur plusieurs colonnes
Dernière mise à jour le 05/02/2024
Temps de lecture : 2 minutes

Comment utiliser la fonction UNIQUE sur plusieurs colonnes d'un tableau ?

Extraire sans doublon sur une colonne

La fonction UNIQUE permet d'extraire les valeurs uniques d'une colonne sélectionnée.

Fonction UNIQUE

Extraire sur 2 colonnes contiguës

Si l'extraction concerne 2 colonnes contiguës (c'est à dire, l'une à coté de l'autre), la fonction UNIQUE retourne également l'unicité mais sur l'association des 2 colonnes.

La marque "Noke" est présente plusieurs fois car nous avons plusieurs couleurs de chaussures en stock pour cette marque mais chaque association (Marque + Couleur), est unique.

La formule avec un tableau est

=UNIQUE(Table1[[Col1]:[Col2]])

Et avec des références de cellules classiques c'est

=UNIQUE($A$1:$B$12)

UNIQUE sur 2 colonnes contiguës

Extraction sur des colonnes séparées

Maintenant, pour utiliser la fonction UNIQUE sur plusieurs colonnes qui sont séparées, la construction de la fonction est beaucoup plus hardues.

Il faut tout d'abord comprendre que le premier paramètre attendu par la fonction UNIQUE n'est pas une colonne mais un tableau. Il faut comprendre ici un tableau comme un tableau en mémoire. Et une colonne, ce n'est ni plus ni moins qu'un tableau mais sur une seule dimension.

Et la fonction FILTRE, retourne un tableau de données ???? Donc, la solution c'est de construire le tableau de données dans lequel nous allons extraire les données grâce à la fonction FILTRE.

Nous avons vu dans cet article comment se servir des opérateurs logiques pour réaliser des extractions complexes dans la fonction FILTRE. Et nous allons utiliser la même logique pour construire notre tableau. IL EST IMPORTANT DE SUIVRE LE LIEN POUR COMPRENDRE LA LOGIQUE.

Si par exemple, nous voulons "construire" un tableau en mémoire avec seulement le modèle et la couleur, nous allons écrire la formule suivante

=FILTRE(Chaussures;(Chaussures[#En-têtes]="Modèle")+(Chaussures[#En-têtes]="Couleur"))

La fonction FILTRE construit un tableau personnalisé

Il ne reste plus qu'à intégrer cette formule, dans la formule UNIQUE pour extraire les colonnes séparées.

=UNIQUE(FILTRE(Chaussures;(Chaussures[#En-têtes]="Modèle")+(Chaussures[#En-têtes]="Couleur")))

Extraction sur des colonnes séparées

Ou, si nous n'utilisons pas les références d'un tableau, nous écrivons la formule comme ceci.

=UNIQUE(FILTRE($A$2:$E$199;($A$1:$E$1="Modèle")+($A$1:$E$1="Couleur")))

10 Comments

  1. Doncamelo
    14/10/2023 @ 20:40

    Bonjour,
    Un grand merci pour ce tuto !!
    J'aurai une question.
    Dans votre exemple, est-il possible d'avoir la colonne qté en stock avec
    le résultat ci-dessous en exemple :
    Sportif Marron 52
    Sportif Noir 10

    Reply

  2. Noemie
    20/07/2023 @ 09:57

    Bonjour,
    Merci pour ce tuto.
    Est-il possible d'ajouter à cette formule d'extraction des colonnes non contigües, une condition permettant d'extraire seulement certaines valeurs dans ces colonnes séparées?

    Reply

    • Frédéric LE GUEN
      20/07/2023 @ 10:19

      Oui, c'est la fonction FILTRE

      Reply

      • Noemie
        20/07/2023 @ 14:12

        Rebonjour,
        Merci pour votre réponse. J'ai testé avec une formule de ce type, sur la base de ce que avez expliqué dans votre tuto FILTRE. Mais malheureusement ça ne fonctionne pas. Savez-vous ce qui peux poser problème dans cette formule?

        =UNIQUE(FILTRE(Incorporations;((Incorporations[#En-têtes]=$U$5)+(Incorporations[#En-têtes]=$V$5)+(Incorporations[#En-têtes]=$W$5))*(Incorporations[Date d''entrée]=$C$2);))

      • Frédéric LE GUEN
        20/07/2023 @ 14:48

        Déjà Incorporations[#En-têtes], ce n'est pas bon, #En-têtes signifie que vous sélectionnez TOUS les entêtes de votre tableau. Ca devrait plus ressembler à Incorporations[Date d''entrée]
        Mais même, votre formule me semble bien, bien, bien compliquée. Il doit y avoir plus simple ; genre avec un tableau croisé dynamique avec des segments

  3. LA
    24/03/2021 @ 11:53

    Bonjour,
    Est-il possible d'utiliser UNIQUE sur plusieurs colonnes, non pas comme il est expliqué ci-dessus, mais avec des données de même type.
    Je m'explique, j'ai 6 feuilles qui reprennent dans la 1ère colonne un identifiant et cet identifiant peut apparaître ou pas dans chacune de ces feuilles.
    J'aimerais utiliser UNIQUE pour chacune des 1ères colonnes de chaque feuille et ainsi obtenir la liste unique de tous les identifiants, toutes feuilles cofondues.
    Je sais que je peux copier tous les 1ères colonnes les unes à la suite des autres et d'utiliser UNIQUE sur ce résultat de copie, mais si je pouvais éviter la manip de copie ...
    Si vous avez une idée, je suis preneur et encore merci pour votre site qui est une mine d'or pour tous les utilisateurs Excel, novices comme avancés.

    Reply

    • Trevax
      06/12/2021 @ 15:50

      J'ai le mêe soucis

      Reply

      • Frédéric LE GUEN
        06/12/2021 @ 16:21

        Non, avec UNIQUE ce n'est pas possible. Par contre avec Power Query, il est très facile de regrouper vos données et ensuite d'appliquer une suppression des doublons

  4. Lb
    12/01/2021 @ 09:38

    Bonjour,
    J'ai un problème car je ne trouve pas la fonction UNIQUE sur Excel 2020, lorsque je tape unique, Excel me propose UNICODE ou UNICAR.

    Reply

    • Frédéric LE GUEN
      12/01/2021 @ 09:47

      Normal, c'est seulement avec Excel 365 ou Excel Online

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

MVP_logo_2017

Fonction UNIQUE sur plusieurs colonnes

Reading time: 2 minutes
Dernière mise à jour le 05/02/2024

Comment utiliser la fonction UNIQUE sur plusieurs colonnes d'un tableau ?

Extraire sans doublon sur une colonne

La fonction UNIQUE permet d'extraire les valeurs uniques d'une colonne sélectionnée.

Fonction UNIQUE

Extraire sur 2 colonnes contiguës

Si l'extraction concerne 2 colonnes contiguës (c'est à dire, l'une à coté de l'autre), la fonction UNIQUE retourne également l'unicité mais sur l'association des 2 colonnes.

La marque "Noke" est présente plusieurs fois car nous avons plusieurs couleurs de chaussures en stock pour cette marque mais chaque association (Marque + Couleur), est unique.

La formule avec un tableau est

=UNIQUE(Table1[[Col1]:[Col2]])

Et avec des références de cellules classiques c'est

=UNIQUE($A$1:$B$12)

UNIQUE sur 2 colonnes contiguës

Extraction sur des colonnes séparées

Maintenant, pour utiliser la fonction UNIQUE sur plusieurs colonnes qui sont séparées, la construction de la fonction est beaucoup plus hardues.

Il faut tout d'abord comprendre que le premier paramètre attendu par la fonction UNIQUE n'est pas une colonne mais un tableau. Il faut comprendre ici un tableau comme un tableau en mémoire. Et une colonne, ce n'est ni plus ni moins qu'un tableau mais sur une seule dimension.

Et la fonction FILTRE, retourne un tableau de données ???? Donc, la solution c'est de construire le tableau de données dans lequel nous allons extraire les données grâce à la fonction FILTRE.

Nous avons vu dans cet article comment se servir des opérateurs logiques pour réaliser des extractions complexes dans la fonction FILTRE. Et nous allons utiliser la même logique pour construire notre tableau. IL EST IMPORTANT DE SUIVRE LE LIEN POUR COMPRENDRE LA LOGIQUE.

Si par exemple, nous voulons "construire" un tableau en mémoire avec seulement le modèle et la couleur, nous allons écrire la formule suivante

=FILTRE(Chaussures;(Chaussures[#En-têtes]="Modèle")+(Chaussures[#En-têtes]="Couleur"))

La fonction FILTRE construit un tableau personnalisé

Il ne reste plus qu'à intégrer cette formule, dans la formule UNIQUE pour extraire les colonnes séparées.

=UNIQUE(FILTRE(Chaussures;(Chaussures[#En-têtes]="Modèle")+(Chaussures[#En-têtes]="Couleur")))

Extraction sur des colonnes séparées

Ou, si nous n'utilisons pas les références d'un tableau, nous écrivons la formule comme ceci.

=UNIQUE(FILTRE($A$2:$E$199;($A$1:$E$1="Modèle")+($A$1:$E$1="Couleur")))

10 Comments

  1. Doncamelo
    14/10/2023 @ 20:40

    Bonjour,
    Un grand merci pour ce tuto !!
    J'aurai une question.
    Dans votre exemple, est-il possible d'avoir la colonne qté en stock avec
    le résultat ci-dessous en exemple :
    Sportif Marron 52
    Sportif Noir 10

    Reply

  2. Noemie
    20/07/2023 @ 09:57

    Bonjour,
    Merci pour ce tuto.
    Est-il possible d'ajouter à cette formule d'extraction des colonnes non contigües, une condition permettant d'extraire seulement certaines valeurs dans ces colonnes séparées?

    Reply

    • Frédéric LE GUEN
      20/07/2023 @ 10:19

      Oui, c'est la fonction FILTRE

      Reply

      • Noemie
        20/07/2023 @ 14:12

        Rebonjour,
        Merci pour votre réponse. J'ai testé avec une formule de ce type, sur la base de ce que avez expliqué dans votre tuto FILTRE. Mais malheureusement ça ne fonctionne pas. Savez-vous ce qui peux poser problème dans cette formule?

        =UNIQUE(FILTRE(Incorporations;((Incorporations[#En-têtes]=$U$5)+(Incorporations[#En-têtes]=$V$5)+(Incorporations[#En-têtes]=$W$5))*(Incorporations[Date d''entrée]=$C$2);))

      • Frédéric LE GUEN
        20/07/2023 @ 14:48

        Déjà Incorporations[#En-têtes], ce n'est pas bon, #En-têtes signifie que vous sélectionnez TOUS les entêtes de votre tableau. Ca devrait plus ressembler à Incorporations[Date d''entrée]
        Mais même, votre formule me semble bien, bien, bien compliquée. Il doit y avoir plus simple ; genre avec un tableau croisé dynamique avec des segments

  3. LA
    24/03/2021 @ 11:53

    Bonjour,
    Est-il possible d'utiliser UNIQUE sur plusieurs colonnes, non pas comme il est expliqué ci-dessus, mais avec des données de même type.
    Je m'explique, j'ai 6 feuilles qui reprennent dans la 1ère colonne un identifiant et cet identifiant peut apparaître ou pas dans chacune de ces feuilles.
    J'aimerais utiliser UNIQUE pour chacune des 1ères colonnes de chaque feuille et ainsi obtenir la liste unique de tous les identifiants, toutes feuilles cofondues.
    Je sais que je peux copier tous les 1ères colonnes les unes à la suite des autres et d'utiliser UNIQUE sur ce résultat de copie, mais si je pouvais éviter la manip de copie ...
    Si vous avez une idée, je suis preneur et encore merci pour votre site qui est une mine d'or pour tous les utilisateurs Excel, novices comme avancés.

    Reply

    • Trevax
      06/12/2021 @ 15:50

      J'ai le mêe soucis

      Reply

      • Frédéric LE GUEN
        06/12/2021 @ 16:21

        Non, avec UNIQUE ce n'est pas possible. Par contre avec Power Query, il est très facile de regrouper vos données et ensuite d'appliquer une suppression des doublons

  4. Lb
    12/01/2021 @ 09:38

    Bonjour,
    J'ai un problème car je ne trouve pas la fonction UNIQUE sur Excel 2020, lorsque je tape unique, Excel me propose UNICODE ou UNICAR.

    Reply

    • Frédéric LE GUEN
      12/01/2021 @ 09:47

      Normal, c'est seulement avec Excel 365 ou Excel Online

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.