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 des caracteres [XL-2003]


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
    Avril 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 85
    Par défaut Compter des caracteres
    Bonjour à toutes et à tous,

    Alors une petite question, j'utilise application.counta pour compter le nombre de case remplis sur une zone donnée (par exemple de A1 à D1). Mais quand je fais ca ca me retourne un ou zero alors qu'il y a plus de case que ca qui sont remplis.
    Dans mes cases se trouvent des caractères et je voulais savoir s'il y a une autre fonction qui existe pour faire ces calculs.

    Merci d'avance

    Cordialement

  2. #2
    Membre chevronné
    Inscrit en
    Décembre 2003
    Messages
    434
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 434
    Par défaut
    Salut,

    A mon avis tu utilises mal la fonction
    Tu fais surement ceci, l'argument en chaine:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.WorksheetFunction.CountA("A1:D1")
    Il faut faire ceci, l'argument doit etre une plage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.WorksheetFunction.CountA(Range("A1:D4"))
    ++
    Minick

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    CountA est une fonction excel..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NB = Application.WorksheetFunction.CountA(Range("A1:D1"))
    A+

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 85
    Par défaut
    OK merci, mais comme j'ai plusieurs classeur ouvert je l'ecris comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.WorksheetFunction.CountA(classeur.Worksheets("1er sem " & annee).[case_debut & i:case_fin & i])
    et ca me compte toujours pas toutes les valeurs dans les cases sur l'intervalle.

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Si tu mettais exactement la formule que tu a dans ton code ont pourrais peut-être mieux comprendre !!

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 85
    Par défaut
    Oui c'est vrai désolé.
    et ceci est dans une double boucle for.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    travail.Worksheets("Stat").Range("AC" & j) = Application.WorksheetFunction.CountA(classeur.Worksheets("1er sem " & annee).[case_debut & i:case_fin & i])
    je stocke dans case d'un classeur le nombre de case rempli sur un intervalle se trouvant dans un autre classeur.

  7. #7
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    1ère remarque, vu que tu change de feuille ton code devrait se trouver dans un module général et non dans un module de feuille ! Est-ce le cas ?
    2°) la fonction CountA ne supporte pas le nom de la feuille, faut..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("Feuil" & 1).Select
    NB = Application.WorksheetFunction.CountA(Range(Cells(1, 1), Cells(3, 12)))

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 28/05/2005, 11h19
  2. [langage] Compter des chaines de caractères
    Par julfra dans le forum Langage
    Réponses: 2
    Dernier message: 26/05/2004, 17h42
  3. [langage] compter des caracteres dans une chaine
    Par louisis dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2004, 22h39
  4. trier un tableau et compter des elements du tableau
    Par remi51 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 17/06/2002, 16h51
  5. Réponses: 3
    Dernier message: 12/06/2002, 21h15

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