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

Macros et VBA Excel Discussion :

[Excel] Somme avec critères de plusieurs colonnes


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Par défaut [Excel] Somme avec critères de plusieurs colonnes
    Bonjour,

    J'aimerais savoir si, avec une fonction Excel comme NB.SI, il est possible de faire une somme avec, comme condition colonne1 différent de colonne2.

    Exemple :
    Colonne 1
    a
    a
    a

    Colonne 2
    a
    b
    b

    Je voudrais le nombre total de cellules où colonne1 différent de colonne2.
    Désolé si ca vous parait facile je suis débutant en VBA / Excel

  2. #2
    Membre éprouvé Avatar de cwain
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 218
    Par défaut
    Bonjour,
    Regarde peut-être avec la fonction SOMME.SI sous Excel

  3. #3
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Par défaut
    Merci
    mmm j'ai l'impression que ca marche pas en 1 seule formule... c'est possible de le faire si je mets le résultat de la condition dans une colonne en tant 0 ou 1 mais pas en 1 seule traite.

    Je m'explique :
    Je peux créer une 3e colonne qui fait le test entre la colonne 1 et 2 puis faire la somme de la colonne 3 avec la condition.

    J'aimerai éviter la colonne 3 et traiter directement dans la somme... c'est possible en sachant que la colonne 1 et 2 sont des chaines de caractères et pas des entiers?

    Merci je continue à chercher de toute manière

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    tu ajoutes une colonne et tu mets en formule =A2=B2 et tu utilises sommesi
    avec ce critère

    sinon tu utilises cette fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Function iso(ByVal un As Range, ByVal deux As Range) As Variant
    Dim x As Integer
    Dim rep As Variant
    For x = 1 To un.Count
    If un(x, 1) = deux(x, 1) Then rep = rep + deux(x, 1)
    Next x
    iso = rep
    End Function
    qui donne la somme des identiques

    If un(x, 1) <> deux(x, 1) donnera la somme des différents

  5. #5
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Par défaut
    Je voulais éviter d'utiliser du VB, c'est pour ca que je m'obstinais avec les fonctions excel bon je v voir ce que je peux faire avec VB si j'y arrive pas

    Merci

  6. #6
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Par défaut
    Ca fonctionne merci ! A ceci près que, dans le code, ce n'est pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If un(x, 1) = deux(x, 1) Then rep = rep + deux(x, 1)
    Mais , dans mon cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If un(x, 1) = deux(x, 1) Then rep = rep +1

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    tu peux ne pas utiliser vba
    soit tes deux zones en colonne
    par exemple d4:d8 et e4:e8

    la formule matricielle suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(E4:E8*(D4:D8=E4:E8))
    va te renvoyer le résulta pour d=e
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME(E4:E8*(D4:D8<>E4:E8))
    va te renvoyer le résulta pour d<>e

    nb pour une formule matricielle ctrl+maj+enter
    nb les parenthèses sont indispensables

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

Discussions similaires

  1. Somme.si multicritère dans plusieurs colonnes
    Par Jonathan Raucy dans le forum Excel
    Réponses: 3
    Dernier message: 20/12/2012, 15h56
  2. Somme avec critère
    Par peralex dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 15/07/2009, 17h15
  3. Somme d'une ou plusieurs colonnes avec Quick Report
    Par delphino7 dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/05/2008, 10h25
  4. compte valeur avec critère sur autre colonne
    Par NATOU2 dans le forum Excel
    Réponses: 3
    Dernier message: 28/01/2008, 11h02
  5. Jointure avec conditions sur plusieurs colonnes
    Par ben53 dans le forum Langage SQL
    Réponses: 9
    Dernier message: 28/11/2005, 09h27

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