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 :

compter avec condition


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 165
    Points : 68
    Points
    68
    Par défaut compter avec condition
    bonjour,

    j'ai un petit souci avec la fonction compter , j'ai cherchée dans le forum mais je n'arrive pas à trouver l'aide attendu,,,,

    j'ai une feuil 1 ou j'ai mon bouton de commande et mon taleau ou je desire rentrer les cellules compter de la feuil2

    j'ai plusieur colonnes dans ma feuil 2, je souhaiterai donc compter le nombre de fois le mot"voiture dans la colonne D si dans la colonne B il y a le mot "france" et en meme temps compter le mot vélo toujours dans la colonne D sil il y a le mot "hollande " dans la colonne b
    et afficher le nombre pour voiture en C10 et vélo en C11 feuil 1

    ce n'est pas compliqué mais je patoge

  2. #2
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour stéphanie123 le forum pour simplifier tu peus utiliser l'instruction with

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Option Explicit
    Sub es()
    Dim i As Long, x As Long, y As Long
    Application.ScreenUpdating = False
       Sheets("feuil2").Activate
       For i = 1 To Cells(Rows.Count, 4).End(xlUp).Row
         If Cells(i, 4) = "voiture" And Cells(i, 2) = "france" Then x = x + 1
         If Cells(i, 4) = "velo" And Cells(i, 2) = "hollande" Then y = y + 1
       Next i
         Sheets("feuil1").Activate
       [c10] = x: [c11] = y
    End Sub

  3. #3
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 165
    Points : 68
    Points
    68
    Par défaut
    bonjour,

    j'ai placé ton code dns mon programme et sa ne m'affiche 0 aors que la colonne d est bien fourni,,
    je continue à regarder ou sa coince

  4. #4
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    re, bizarre je viens de tester pas de souci

    tu es sur que le nom des feuilles est bien ecrit idem voiture velo hollande france ?? MAJUSCULE ?minuscule ?
    essai comme cela avec with +option compare text au debut du module

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Option Explicit
    Option Compare Text
    Sub es()
    Dim i As Long, x As Long, y As Long
    Application.ScreenUpdating = False
      With Feuil2
       For i = 1 To .Cells(Rows.Count, 4).End(xlUp).Row
         If .Cells(i, 4) = "voiture" And .Cells(i, 2) = "france" Then x = x + 1
         If .Cells(i, 4) = "velo" And .Cells(i, 2) = "hollande" Then y = y + 1
       Next i
         With Feuil1
       .Cells(10, 3) = x
       .Cells(11, 3) = y
      End With: End With
    End Sub
    eventuellement passer par une formule beaucoup plus simple

    en cell c10 feuil1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((Feuil2!D1:D65000="voiture")*(Feuil2!B1:B65000="france"))
    en cell c11 feuil1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD((Feuil2!D2:D65001="velo")*(Feuil2!B2:B65001="hollande"))

  5. #5
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut
    Pour completer les fomules données par Leati (coucou) tu peux mettre a la place du mot voiture et france des references a des cellules, ainsi dans les cellules pointées tu mets 2 listes (créées par validation).
    A l'utilisation tu choisi ce que tu souhaites rechercher via les listes, les formules font le reste.
    A++
    Qwaz

  6. #6
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 165
    Points : 68
    Points
    68
    Par défaut compter avec condition
    merci pour votre aide

    ça marche inpécablement bien,,,,

    pour la possibilité de mettre des liste type combox c'est inutile pour ce que je veux faire là,,,

    maintenant j'ai un autre programme à finaliser avec des listes type combox,,,voilà

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

Discussions similaires

  1. Compter le nombre de champs avec condition
    Par 73brunette73 dans le forum IHM
    Réponses: 3
    Dernier message: 31/05/2010, 06h27
  2. Compter le nombre d'entrées dans une BDD avec condition
    Par iFlo1 dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 29/03/2009, 21h33
  3. Compter le nombre d'entrée avec condition
    Par Seta-san dans le forum Langage
    Réponses: 5
    Dernier message: 17/02/2009, 12h20
  4. Compter avec condition dans une requête
    Par CHINAILLON dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 10/04/2008, 14h50
  5. [XSLT] Compter avec conditions
    Par r.bartom dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 02/10/2007, 17h06

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