IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Compter le nombre d'occurrences d'une colonne


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 805
    Par défaut Compter le nombre d'occurrences d'une colonne
    Bonjour,

    Dans la colonne B j'ai plusieurs données identiques.

    J'aimerai afficher en colonne A le nombre d'occurrences trouvée, s’il n'y a qu'une seule occurrence trouvée, afficher 1, s’il y a des doublons, afficher le nombre d'occurrences trouvées, mais que dans une des occurrences. Les doublons ne doivent rien afficher.

    J'ai trouvé plusieurs formules, mais elles ne correspondent pas à ma demande, si par exemple j'ai 14x les mêmes données une seule ligne devrait afficher 14

    Est-ce possible ?

    Je vous remercie pour votre aide.
    Meilleures salutations
    Philippe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI($B$5:$B$102; B5)

  2. #2
    Membre Expert Avatar de excfl
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    690
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 690
    Par défaut
    Bonsoir le forum,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(SI(A1:A1000<>"";1/NB.SI(A1:A1000;A1:A1000)))
    Formule matricielle.

  3. #3
    Membre éclairé Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 805
    Par défaut
    Je vous remercie, mais la proposition ne correspond pas du tout à ma demande

  4. #4
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 476
    Par défaut
    Bonjour goninph,

    Pour avoir le résultat en face de la première occurrence, essaies :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(NB.SI($B$5:$B5; $B5)=1;NB.SI($B$5:$B$102; $B5);"")

  5. #5
    Membre éclairé Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 805
    Par défaut
    Bonsoir Patrice,

    C'est juste génial mille merci

    la colonne B est une concaténation de plusieurs colonnes, j'ai ajouté une petite modif.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(E5="";"";SI(NB.SI($B$5:$B5; $B5)=1;NB.SI($B$5:$B$102; $B5);""))

  6. #6
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour à tous

    J'arrive après la bataille il me semble mais sinon tu peux aussi utiliser les formules BD …

    =BDNBVAL() correspond parfaitement à ta demande à la condition de créer une zone de critère.

    Tu peux même customiser cette zone avec des listes de validation par exemple pour la rendre plus pratique.

    Bonne journée

  7. #7
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 476
    Par défaut
    Bonjour Igloobel,

    Tu as très probablement mal lu la question ...

    Citation Envoyé par goninph Voir le message
    Dans la colonne B j'ai plusieurs données identiques.
    J'aimerai afficher en colonne A le nombre d'occurrences trouvée, s’il n'y a qu'une seule occurrence trouvée, afficher 1, s’il y a des doublons, afficher le nombre d'occurrences trouvées, mais que dans une des occurrences. Les doublons ne doivent rien afficher.
    Citation Envoyé par Igloobel Voir le message
    ... =BDNBVAL() correspond parfaitement à ta demande à la condition de créer une zone de critère.
    Pas impossible, il faudrait utiliser des critères formulés, mais c'est vraiment compliqué à comprendre et à mettre en place ....
    A part quelques exemples que j'utilsais pour mes cours, je n'ai quasiment jamais vu utiliser des critères formulés en pratique.

  8. #8
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour à tous,
    Citation Envoyé par Patrice740 Voir le message
    Dans la colonne B j'ai plusieurs données identiques.
    J'aimerai afficher en colonne A le nombre d'occurrences trouvée, s’il n'y a qu'une seule occurrence trouvée, afficher 1, s’il y a des doublons, afficher le nombre d'occurrences trouvées, mais que dans une des occurrences. Les doublons ne doivent rien afficher.
    Effectivement je n'ai pas lu cette partie en gras et rouge que tu soulignes si justement. donc cela implique une colonne qui dénombrerait les occurrences.


    Citation Envoyé par Patrice740 Voir le message
    ... A part quelques exemples que j'utilsais pour mes cours, je n'ai quasiment jamais vu utiliser des critères formulés en pratique.
    Dans l'industrie où je travaille Un grand nombre de tableau Excel sont créer par le R&D avec à l'intérieur des BDLIRE (ils sont nombreux). Ces classeurs (une trentaine qui se succède en cascades avec chacun en moyenne plus d'une dizaine de tableaux constitué de BDLIRE) sont lu par l'ERP et sortent des valeurs pour la fabrication en fonctions de paramètres d'entrées.

    il y a quelques années nous sommes passé de Windows 7 à 10 et depuis peu de temps (deuxième semestre 2020) on vient de passé du Pack Office 2010 (sans power query) à 365

    ces tableaux ne sont pas de ma fabrication mais ils permettent de planter l'ordre de fab. en cas de paramètres omis ou non connus. (je le sais c'est moi qui corrige dans ces cas là)

    ceci juste pour illustrer que dans certains cas c'est bien utile et n'ayant pas eu les "power query" de dispos le R&D a gardé la même façon de travailler. De plus lors de monté de versions c'est plus simple que de tout refaire et certains classeurs qui n'ont pas bougé sont encore en version 2003.

    Perso j'aime beaucoup les formules BD que je trouve facile d'utilisation (plus facile que SOMMEPROD() avec le quel j'ai un peu de mal) même si "power query" peut sans doute en faire autant.

    A bientôt

  9. #9
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 476
    Par défaut
    Citation Envoyé par Igloobel Voir le message
    ... Un grand nombre de tableau Excel sont créer par le R&D avec à l'intérieur des BDLIRE ...
    J'ai aussi beaucoup utilisé les fonctions BD, mais très rarement avec des critères formulés comme c'est nécessaire pour résoudre le problème de goninph.

    Comme je l'ai écrit avec BDNBVAL c'est pas impossible mais c'est pas simple à mettre en œuvre et à comprendre, sans compter qu'utilise quand même NB.SI() ....
    Pour le Fun :
    Nom : BDNBVAL.jpg
Affichages : 456
Taille : 112,5 Ko

    Citation Envoyé par Pierre Fauconnier Voir le message
    ... revient pour moi à ne pas systématiser son approche, et perso, je suis pour la systématisation.
    Je préfère choisir la solution la plus adaptée, ici ce n'était ni BDNBVAL, ni SOMMEPROD.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Patrice740 Voir le message
    [...]il faudrait utiliser des critères formulés, mais c'est vraiment compliqué à comprendre et à mettre en place ....
    A part quelques exemples que j'utilsais pour mes cours, je n'ai quasiment jamais vu utiliser des critères formulés en pratique.
    C'est notamment à cause de la relative complexité des critères formulés (enfin, quand je l'explique aux gens que je forme, ils comprennent quand même vite) que je préfère SOMMEPROD et autres matricielles aux fonctions BDxxx...

    Se dire "sans critères formulés, j'utilise BDxxx et avec critères formulés, j'utilise SOMMEPROD" revient pour moi à ne pas systématiser son approche, et perso, je suis pour la systématisation car c'est là qu'on gagne du temps et qu'on utilise des techniques que l'on a éprouvées, testées et validées.

    Passer d'une technique à l'autre pour un résultat identique selon des critères vagues ne me paraît pas être une approche raisonnable et rentable. C'est juste mon avis, évidemment.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  11. #11
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Par rapport à des SOMMEPROD et autres, je n'ai jamais bien compris l'utilité des fonctions BDxxx qui imposent le plus souvent la création d'une zone de critères ^^
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  12. #12
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 476
    Par défaut
    Bonjour Pierre,
    Citation Envoyé par Pierre Fauconnier Voir le message
    ... je n'ai jamais bien compris l'utilité des fonctions BDxxx qui imposent le plus souvent la création d'une zone de critères ^^
    Je les ai très souvent utilisées dans le passé. Si la nécessité d'une zone de critères est effectivement un inconvénient pour les cas simples, les fonctions BD sont très avantageuses et bien plus simples à écrire lorsque les critères sont multiples (comme pour les filtres élaborés).
    Depuis Power Query elles ont perdu de leur utilité.

  13. #13
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Peut-être, Patrice.

    Perso, je ne sais pas ce que veut dire "bien plus simple", car ce qui est "bien plus simple" pour les uns peut paraître "bien plus compliqué" pour les autres. Il n'y a pas une grille de critères universelle qui détermine ce qui est simple et ce qui est compliqué. Dès lors, "bien plus simple" ne veut rien dire pour moi et n'est certainement pas un argument technique dont je vais tenir compte. Ces "arguments" de simplicité permettent de jouer au ping pong sur nos forums dans des joutes techniques qui peuvent ouvrir des pistes de réflexion pour le lecteur, mais la simplicité est loin d'être universelle et définie une fois pour toutes, et elle est à mon sens indéfinissable de façon objective.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  14. #14
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 476
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Perso, je ne sais pas ce que veut dire "bien plus simple", car ce qui est "bien plus simple" pour les uns peut paraître "bien plus compliqué" pour les autres.
    Attention, je ai écrit « bien plus simple à écrire ».
    Et pour SOMMEPROD vs BDNBVAL c'est aussi plus simple à comprendre : il est évidemment plus simple d'employer une fonction dans sa syntaxe basique que de détourner une fonction pour faire des calculs booléens.

    Prenons un exemple que tu connais bien avec SOMMEPROD :
    Code formule : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((((T[X]="A")+(T[X]="B")+(T[X]="C"))>0)*(T[Y]="D")*(T[Z]="E"))
    Nom : SP vs BD.jpg
Affichages : 430
Taille : 76,8 Ko

    Avec BDNBVAL ça s'écrit :
    Code formule : Sélectionner tout - Visualiser dans une fenêtre à part
    =BDNBVAL(T[#Tout];"X";Critères[#Tout])
    Nom : BD vs SP.jpg
Affichages : 428
Taille : 77,0 Ko

    Et là il n'y a que quelques critères, avec de multiples critères le SOMMEPROD devient rapidement difficile à écrire (et à comprendre).
    Avec BDNBVAL la formule reste la même.

  15. #15
    Membre éclairé Avatar de goninph
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2013
    Messages : 805
    Par défaut
    Merci à tous pour vos suggestions et solutions
    Meilleures salutations
    Philippe

  16. #16
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut Patrice,

    C'est vrai que ton exemple est parlant, surtout que normalement, les critères du SOMMEPROD seront aussi repris dans des cellules, et donc, que ce soit ces cellules pour SOMMEPROD ou une plage de critères pour BD..., on en arrive peu ou prou à la même construction, avec effectivement une concision de formule devant laquelle je m'incline ( => )

    Cela dit, les BDxx sont plus limitatives que SOMMEPROD puisqu'elles se limitent à 12 fonctions et n'évitent pas la formule à l'intérieur du critère lorsqu'il doit être calculé, comme dans le cas suivant. La nouvelle fonction FILTRE (exclusivité 365) reprend d'ailleurs la syntaxe de SOMMEPROD lors de critères combinés.


    Nom : 2020-11-03_071748.png
Affichages : 463
Taille : 109,8 Ko

    Dès lors, à l'utilisateur, qui a les trois solutions devant lui, à se faire une idée et à choisir ce qui lui convient le mieux (en pouvant d'ailleurs choisir selon les circonstances)
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

Discussions similaires

  1. Compter le nombre d’occurrences d'une valeur dans une colonne
    Par yaya_la_rafale dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 23/09/2015, 14h29
  2. Réponses: 5
    Dernier message: 28/06/2013, 20h11
  3. Réponses: 6
    Dernier message: 04/11/2008, 22h35
  4. Compter un nombre de date dans une colonne
    Par MASK55 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 07/11/2007, 11h17
  5. Réponses: 2
    Dernier message: 06/05/2007, 23h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo