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 le nombre de cellules différentes dans une colonne VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut Compter le nombre de cellules différentes dans une colonne VBA
    Bonjour à tous!

    J'ai une colonne avec un grand nombre de cellules et j'aimerais savoir combien il y a d'éléments différents. J'ai fait quelques recherches mais je n'ai pas trouvé un code VBA qui me permet de faire cela.

    Merci de votre aide!

    Classeur1.xlsx

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par psg7835 Voir le message
    Bonjour,

    Regardez du côté des tableaux croisés dynamiques sans VBA ou l'utilisation des variables dictionnaires avec VBA.

  3. #3
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Bonjour,

    Il est mal venu de mettre une pièce jointe des le premier post, ct règles du forum,
    Surtout que quasi personne va l'ouvrir.

    Je ne vois pas ce que tu entends par nombre d'éléments, si c'est le nombre de valeurs différentes,
    Tu peux passer par une collection, on aura pas de doublons et le nombre de valeur pris dans ta collection (en utilisant la propriété Count) te donnera le nombre exact.

    Edit : coucou Eric on s'est croisé
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

  4. #4
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    Bonjour
    voir avec ça :
    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
    16
    Sub rechercher()
     
    Dim plage As Range
    Dim Dernligne As Long
    Dim Valrech As String
    With Sheets("feuil1")
    Dernligne = .Range("A" & Rows.Count).End(xlUp).Row
    Set plage = .Range("A2:A" & Dernligne)
     
    For Each cel In plage
    Valrech = cel.Value
    c = WorksheetFunction.CountIf(plage, Valrech)
    Cells(cel.Row, 2) = c
    Next cel
    End With
    End Sub

  5. #5
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Regardez du côté des tableaux croisés dynamiques
    coucou Eric on s'est croisé
    Dynamiquement

  6. #6
    Membre averti
    Inscrit en
    Septembre 2003
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 27
    Par défaut
    Bonjour,

    Perso, j'utiliserais simplement la fonction sommeprod s'il n'y a pas de cellule vides dans la sélection :

    Résultat en B1 pour compter les valeurs sans doublon de A1 à A20 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Range("B1").FormulaR1C1 = "=SUMPRODUCT(1/COUNTIF(R1C1:R20C1,R1C1:R20C1))"

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    Citation Envoyé par coup dur Voir le message
    Bonjour,

    Perso, j'utiliserais simplement la fonction sommeprod s'il n'y a pas de cellule vides dans la sélection :

    Résultat en B1 pour compter les valeurs sans doublon de A1 à A20 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Range("B1").FormulaR1C1 = "=SUMPRODUCT(1/COUNTIF(R1C1:R20C1,R1C1:R20C1))"
    Merci pour cette piste mais dans mon cas, les colonnes seront à taille variable. Donc comment adapter cette formule afin que ça marche pour toutes les tailles de colonnes?

    Merci

  8. #8
    Membre Expert
    Homme Profil pro
    PAO
    Inscrit en
    Octobre 2014
    Messages
    2 576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PAO
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Octobre 2014
    Messages : 2 576
    Par défaut
    Salut Jacques,
    Citation Envoyé par unparia Voir le message
    Bonjour


    Dynamiquement
    C'est sur quand on écrit de son téléphone depuis le RER et que l'on s’arrête dans un tunnel il se passe un temps (oupps j'ai perdu ma 4G)
    Cordialement
    Ryu

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. – Albert Einstein

    Pensez à la Balise [ CODE][/CODE ] - à utiliser via le bouton # => Exemple

    Une fois votre problème solutionné pensez à mettre :resolu: en n'oubliant pas d'indiquer qu'elle est la solution finale choisie ;)

Discussions similaires

  1. [XL-2010] Compter le nombre de noms différents dans une colonne
    Par mcog2 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 02/12/2015, 08h34
  2. [XL-2007] Compter le nombres de cellules différentes d'une colonne en fonction de date
    Par lorin.maxime dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/09/2013, 11h31
  3. [XL-2007] Compter le nombre de valeurs différente dans une colonne
    Par Mist-e-Fire dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/04/2013, 09h01
  4. Réponses: 1
    Dernier message: 22/05/2012, 19h15
  5. Réponses: 28
    Dernier message: 11/10/2006, 22h36

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