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 :

dénombrer et lister


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2011
    Messages : 115
    Par défaut dénombrer et lister
    Bonjour à tous,
    Voici un exemple simple, je veux lister les différents types dans la colonne A et le nombre de chaque type trouvé:
    x
    x
    y
    x
    z
    y
    t
    t

    résultat:ici il ya:
    x:3
    u:2
    z:1
    t:2
    mais vous comprenez que syr une colonne de 25000 lignes et xxx types, ça devien pénible de faire des filtres et compter:
    merci.

  2. #2
    Membre éclairé Avatar de jawed
    Homme Profil pro
    Comptable
    Inscrit en
    Mars 2004
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : Comptable
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 506
    Par défaut
    Bonsoir moi244
    en créant une table avec toute tes références tu peut utiliser la fonction Nb.Si et tu est sous 2007 tu peut utiliser la fonction Nb.Si.Ens
    Cordialement

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2011
    Messages : 115
    Par défaut
    oui mai nb.si c'est une fonction qui doit faire référence à une cellule (critère).
    Avec un code VBA, il va lister tous les différents types dans la colonne A, et dénombrer ensuite.
    Merci.

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Fais un Tableau Croisé Dynamique et sans vba.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2011
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2011
    Messages : 115
    Par défaut
    C'est juste que je suis un débutant en programmation, alors j'essaie de voir comment je pourrais faire ça en VBA. Je suis sur qu'il ya un expert qui pourrait me donner un coup de main.

  6. #6
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonsoir,

    Vu ainsi, tu as raison, on va pouvoir jouer à te donner des approches différentes

    Toutes versions :

    Dans un premier temps, tu utilises l'enregistreur de macros en faisant un filtre avancé pour extraire les valeurs uniques de ta liste et les coller à un autre emplacement (cf aide Excel si besoin).

    Tu nommes la liste des valeurs uniques "MaPlage" ou tu adaptes...

    Tu lances ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Gogo()
    Dim cell As Range
    Dim dblNombre As Double
    Dim I As Long
     
    I = 1
    For Each cell In Range("MaPlage") 'parcourt la collection des cellules de la plage
       'sur l'ensemble de la colonne visée A ici...
       dblNombre = WorksheetFunction.CountIf(Worksheets(1).Columns("A:A"), cell.Value) 'utilise NBSI à travers le VBA
       Cells(I, 4) = cell.Value 'écrit les valeurs
       Cells(I, 5) = dblNombre
       I = I + 1
    Next cell
    End Sub
    Résultat : Nom : OrmonthDatawx1.jpg
Affichages : 109
Taille : 28,2 Ko

    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

    Didier

  7. #7
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    Vois aussi ce fil récent...

    http://www.developpez.net/forums/d11...tence-colonne/

    Cordialement,

    Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

    Didier

Discussions similaires

  1. Lister les softs installés sur un Pc
    Par Jflgb dans le forum C++Builder
    Réponses: 18
    Dernier message: 23/06/2004, 18h34
  2. [VB6] [Réseau] Lister les ordinateurs du réseau
    Par CYFL dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 17/12/2002, 10h25
  3. Réponses: 8
    Dernier message: 17/10/2002, 13h52
  4. [TP]Lister les fichiers d'un répertoire
    Par nvtitan dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 21/06/2002, 12h22

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