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 :

CountA comptabilise les "": comment contourner? [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 15
    Par défaut CountA comptabilise les "": comment contourner?
    Bonjour,

    J'ai une fonction qui prends 3 arguments de type String. Je chercher à évaluer si ces arguments sont vides ou non. J'ai utilisé ceci où

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    rtg1=""
    rtg2=AA
    rtg2=BB
     
    nbr_de_rtg = WorksheetFunction.CountA(rtg1, rtg2, rtg3)
    Si j'utilise NBVAL directement dans la feuille le résultat est bien 2 alors qu'avec COUNTA, le résultat est 3. Auriez-vous une indication pour éviter ce problème?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    salut,

    si tu utilises : WorksheetFunction.CountA ds l'aide en ligne ils disent que les textes vides sont compté mais pas les cellules vides (je connais pas la différence, ou alors j'ai mal lu)

    tu peux utiliser : WorksheetFunction.Count si tes arguments sont des chiffres (equivalence de =NB)

    efin tu as également WorksheetFunction.CountBlank qui compteque les vides (equivalence de =NB.vide)

    voilà j'espère qui cela suffira

    @ +

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 15
    Par défaut
    Merci mais j'avais déjà lu la doc

    si tu utilises : WorksheetFunction.CountA ds l'aide en ligne ils disent que les textes vides sont compté mais pas les cellules vides (je connais pas la différence, ou alors j'ai mal lu)
    Merci mais j'avais déjà lu la doc et c'est effectivement un comportement normal de la fonction mais je cherche un moyen de résoudre ce problème

    tu peux utiliser : WorksheetFunction.Count si tes arguments sont des chiffres (equivalence de =NB)
    C'est du texte et non des chiffres comme je le mettais dans mon post:

    efin tu as également WorksheetFunction.CountBlank qui compteque les vides (equivalence de =NB.vide)
    J'ai essayé aussi mais cette fonction fonctionne avec un range de cellules. Or je fonctionne ici avec 3 variables (3 arguments qui servent à ma fonction).

    Merci néanmoins pour ces pistes

  4. #4
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    bonsoir,
    Pour que je t'aide plus il me faut plus d'info.
    Tu dis
    Or je fonctionne ici avec 3 variables (3 arguments qui servent à ma fonction).
    c'est quoi tes variables? des cellules nommées ? des variables dans du code VBA ?
    Et puis c'est quoi le but du jeu ? c'est quoi cette fonction mystérieuse ?

    à bientôt

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 15
    Par défaut
    Bonjour,

    Il s'agit des variables dans le code VBA. Il s'agit simplement d'une fonction qui doit prendre la 2ème valeure la plus élevée de 3 variables numérique (chaque champs texte est initialement transformer en poids numérique au début de ma fonction).

    Mais mon problème est d'abord de compter combien de variables ne sont pas vides.

    Merci

  6. #6
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    voici un petit bout de code qui test tes variables (je l'ai ai mis dans un tableau je trouve cela plus simple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Public nbr_de_rtg, i As Byte
    Public Rtg(1 To 3) As String
     
    Sub test_Rtg()
        Rtg(1) = ""
        Rtg(2) = "AA"
        Rtg(3) = "BB"
        For i = 1 To 3
            If Rtg(i) <> "" Then
                nbr_de_rtg = nbr_de_rtg + 1
            End If
        Next i
        MsgBox "Il y a " & nbr_de_rtg & " rtg valide sur 3"
    End Sub
    Tu dis si cela te conviens

    @ bientôt

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 04/01/2012, 09h54
  2. [XML]/[DocBook] Les entités &quot; &lt; etc.
    Par ykerb2 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 08/05/2007, 20h25
  3. Sudo problème avec les simples quotes
    Par Tronche dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 23/03/2007, 12h02
  4. Les doubles quotes dans les fprintf
    Par Changedman dans le forum C
    Réponses: 30
    Dernier message: 22/02/2007, 12h07

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