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 :

Valeur d'une plage de données


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 52
    Points : 38
    Points
    38
    Par défaut Valeur d'une plage de données
    Bonjour,

    J'aimerais tester la valeur d'une plage de données.
    Concrètement j'aimerais tester si une plage contient une valeur <> ""

    Est ce que c'est possible en évitant un classique parcours de toutes les cases ?

    J'ai tenté un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A4:AU4").Value <> ""
    mais je me suis pris une erreur dans la face

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

    Peut etre avec quelque chose de ce style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        If Application.Evaluate("=COUNT(A4:AU4)") <> 0 Then
            MsgBox "Il y a des données."
        Else
            MsgBox "Il n'y a pas de donnée."
        End If
    ++
    Minick

    EDIT:
    Petite erreur, j'avais mis un COUNTA a la place d'un COUNT
    ++
    Minick

  3. #3
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Voici une solution a ton probleme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Dim Targ As Range
    Dim Cel As Range
     
    Set Targ = Range("A4:AU4")
     
    For Each Cel In Targ.Cells
     
        If Cel.Value = "" Then MsgBox "erreur"
     
     
    Next
    Bon courage
    Jérôme

  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
    bonjour nicolav Minick re jfontaine le forum
    3 autres facons de l' ecrire avec CountA a adapter!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub es()
    MsgBox Application.WorksheetFunction.CountA([a4:au4], "") - 1
    MsgBox Application.WorksheetFunction.CountA(Range("$a4:$au4"))
    MsgBox Application.WorksheetFunction.CountA([a4:au4])
    End Sub
    SALUTATIONS

Discussions similaires

  1. récupérer les valeurs uniques d'une plage de données
    Par Calimero33 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/07/2010, 21h40
  2. [XL-2003] Tester présence d'une valeur sur une plage donnée
    Par Monsieur Peck dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 05/04/2010, 18h51
  3. Réponses: 1
    Dernier message: 23/09/2009, 03h23
  4. Réponses: 4
    Dernier message: 11/08/2008, 15h29
  5. [VBA-E] tester la valeur d'une plage de données sans boucle
    Par bibi5883 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/04/2007, 08h36

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