Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Créer une formule qui permette de vérifier si une colonne est composée d'une ou plusieurs valeurs

Kelbret

XLDnaute Nouveau
Bonjour tout le monde,

Je vous explique mon soucis.

Je cherche à faire une formule (je souhaite que le fichier ne comporte aucune macro pour une simplicité de transfert).

La formule que je cherche à faire doit me permettre de vérifier s'il existe une ou plusieurs valeurs dans une colonne. Il faut également que le formule (si c'est possible ne prenne pas en compte les lignes masquées quand un filtre est activé.

Si dans la colonne A de la ligne 17 à 140 coexistent par exemple 1 dans A17 et 6 dans A26 alors la formule doit retourner "Plusieurs valeurs" et si dans toutes les cellules de cette colonne il y a qu'une valeur alors il faut que la formule retourne "Une seule valeur"

J'ai fait quelques tentatives dont :
=SI(NBVAL(FILTRE(A17:A140;SOUS.TOTAL(3;DECALER(A17:A140;LIGNE(A17:A140)-LIGNE(A17);0)))=1);"Une seule valeur";"Plusieurs valeurs")

Mais elle me renvoie une erreur #NOM?.

Après il y a des chances qu'elle ne soit pas bonne, mais je n'arrive pas à comprendre comment construire la formule.

Pensez-vous que c'est possible ou seule une macro peut fonctionner (ce que j'aimerais éviter)?


Je pense que c'est possible, mais je suis bloqué.

Est ce qu'une telle formule si elle existe doit forcément vérifier des valeurs numériques ou peut elle verifier des valeurs textuelles?


Merci d'avance pour votre aide !!
 
Solution
Bonjour Kelbret, R@chid,

Voyez le fichier joint et le tableau structuré.

Formule de la colonne auxiliaire Test :
Code:
=REPT([@Equipe];SOUS.TOTAL(3;[@Equipe]))
Formule en D8 :
Code:
=SI(SOMMEPROD(1/NB.SI(Tableau1[Test];Tableau1[Test]))>1+SIGNE(NB.SI(Tableau1[Test];""));"Plusieurs équipes";INDEX(Tableau1[Test];EQUIV("?*";Tableau1[Test];0)))
A+

Kelbret

XLDnaute Nouveau
Je joins un fichier pour l'exemple. Merci pour ton retour sur Excel 2016

J'ai essayé de m'orienter vers une vérification de voir s'il existait plusieurs données sur la plage souhaitée, mais je pense que j'utilise des formules non compatibles avec mon excel
 

Pièces jointes

  • exemple filtre.xlsx
    13.3 KB · Affichages: 6

job75

XLDnaute Barbatruc
Bonjour Kelbret, R@chid,

Voyez le fichier joint et le tableau structuré.

Formule de la colonne auxiliaire Test :
Code:
=REPT([@Equipe];SOUS.TOTAL(3;[@Equipe]))
Formule en D8 :
Code:
=SI(SOMMEPROD(1/NB.SI(Tableau1[Test];Tableau1[Test]))>1+SIGNE(NB.SI(Tableau1[Test];""));"Plusieurs équipes";INDEX(Tableau1[Test];EQUIV("?*";Tableau1[Test];0)))
A+
 

Pièces jointes

  • exemple filtre.xlsx
    15.8 KB · Affichages: 7
Dernière édition:

Kelbret

XLDnaute Nouveau
Bonjour @job75 !

Wouah merci la formule marche parfaitement !

A priori j'étais vraiment très très très loin du résultat.

C'est impressionnant comme tu as pu trouver rapidement la logique de la formule ! Je vais essayer de la décortiquer mais pour le coup j'ai du mal à bien la saisir !

En tout cas c'est exactement le résultat que je recherchais ! Merci beaucoup
 

job75

XLDnaute Barbatruc
Bonjour Kelbret, R@chid,

Si l'on veut pouvoir afficher "Tout le monde" il suffit d'ajouter un test en début de formule :
Code:
=SI(NB.SI(Tableau1[Test];"")=NB.SI(Tableau1[Equipe];"");"Tout le monde";SI(SOMMEPROD(1/NB.SI(Tableau1[Test];Tableau1[Test]))>2;"Plusieurs équipes";INDEX(Tableau1[Test];EQUIV("?*";Tableau1[Test];0))))
Pour "Plusieurs équipes" il y a au moins 2 équipes plus des textes vides "" en colonne "Test".

A+
 

Pièces jointes

  • exemple filtre(1).xlsx
    16.2 KB · Affichages: 2

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…