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 :

SOMMEPROD avec du texte "contient" [XL-2010]


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 8
    Par défaut SOMMEPROD avec du texte "contient"
    Bonjour,

    Je rencontre un petit problème d'utilisation de la formule SOMMEPROD avec du texte, c'est-à-dire que j'aimerais savoir si il est possible de combiner SOMMEPROD avec un filtre "contient".

    Exemple avec deux colonnes:
    A--------------B
    PARIS-----Niveau trop bas
    PARIS-----Niveau trop haut
    PARIS-----Comm.
    LYON------Intrusion
    LYON------Intrusion
    LYON------Etat haut

    Et j'aimerais compter combien ont en colonne A "PARIS" ET en colonne B contienne "Niveau".

    Pour le moment je me sert de la formule =SOMMEPROD((A:A="PARIS")*(B:B="Niveau trop bas")), qui me compte bien qu'il y en a un seul.
    Mais dans mon cas ayant plus de 10 000 lignes, et bien trop de cellules différentes mais contenant le mot "Niveau" en commun, j'aurais aimer savoir si il existe une solution.

    D'avance merci, pour votre aide.

  2. #2
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Sommeprod((A:A="PARIS")*(gauche(B:B;6)="Niveau"))

  3. #3
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2009
    Messages
    1 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 86
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 794
    Par défaut
    Bonjour,
    A tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A:A="Paris")*(B:B=TROUVE("Niveau";B11;1)>0))

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 8
    Par défaut
    Tout d'abord merci, mais il arrive que le mot clef soit au milieu c'est à dire "Attente niveau trés haut". Dans ce cas "niveau" se trouve au milieu d'autres mots.

  5. #5
    Membre Expert Avatar de QuestVba
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2012
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 2 475
    Par défaut
    Bonjour,

    Tu peux essayer ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A:A="PARIS")*(NON(ESTERREUR(TROUVE("niveau";B:B)))))

    • TROUVE("niveau";B:B) : renvoie une erreur #VALEUR lorsque la cellule ne contient pas "niveau"
    • ESTERREUR(TROUVE("niveau";B:B)) : renvoie VRAI lorsque la cellule ne contient pas "niveau"
    • NON(ESTERREUR(TROUVE("niveau";B:B))) : renvoie donc VRAI lorsque la cellule contient "niveau"


    Du coup, SOMMEPROD en tient compte

  6. #6
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 8
    Par défaut
    Citation Envoyé par QuestVba Voir le message
    Bonjour,

    Tu peux essayer ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((A:A="PARIS")*(NON(ESTERREUR(TROUVE("niveau";B:B)))))

    • TROUVE("niveau";B:B) : renvoie une erreur #VALEUR lorsque la cellule ne contient pas "niveau"
    • ESTERREUR(TROUVE("niveau";B:B)) : renvoie VRAI lorsque la cellule ne contient pas "niveau"
    • NON(ESTERREUR(TROUVE("niveau";B:B))) : renvoie donc VRAI lorsque la cellule contient "niveau"


    Du coup, SOMMEPROD en tient compte
    Merci beaucoup QuestVba, cela fonctionne a merveille, est il possible d'ajouter plus "d'objet" a la recherche ? C'est-à-dire rajouter dans la colonne B, "trop" avec en plus "Réservoir" a savoir que ces deux objets ne sont pas dans la même cellule.

    J'ai essayé de doubler la deuxième partie de la fonction, mais sans succès.

  7. #7
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Une autre proposition avec la formule NB.SI.ENS (à partir d'Excel 2007) et le caractère générique *
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI.ENS(A:A;"PARIS";B:B;"*niveau*")
    Cordialement
    Claude

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] Sommeprod avec filtre contient que des lettres d'un texte
    Par iliesss dans le forum Excel
    Réponses: 4
    Dernier message: 01/10/2014, 09h53
  2. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59

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