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 :

Si une cellule est vide [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Retraité 72 ans
    Inscrit en
    Mai 2011
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité 72 ans

    Informations forums :
    Inscription : Mai 2011
    Messages : 244
    Par défaut Si une cellule est vide
    Bonsoir ou Bonjour
    Je cherche un code pour si feuil3 en B10:C12 une de ces cellules est vide ("") ça affiche un Msgbox "Vous devez obligatoirement renseigner ces cellules"
    En vous remerciant

  2. #2
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 732
    Par défaut
    Bonjour,
    Deux choses:
    1) Ce code devra s'appliquer quand, suivant quelle action ou quel évènement
    2) C'est pas compliqué à faire, avez vous seulement essayé?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub test()
    If Range("B10") = "" Or Range("B11") = "" Or Range("B12") = "" Or Range("c10") = "" Or Range("c11") = "" Or Range("C12") = "" Then: MsgBox "Vous devez remplir les cases!"
    End Sub
    Cordialement

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut
    re
    bonjour jean30
    @transitoire!! allons heureusement que sa plage de test n'a que 6 cellule
    comment ferait il si sa plage contiendrait 100 cellule (or..or..or..or..or..or..,a ne plus finir )

    c'est comme chez renault (c'est simple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Application.CountA(Range("B10:C12")) = 0
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #4
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 732
    Par défaut
    Salut Patrick,
    Je voulais montrer que sans partir dans du compliqué, pour des gens qui ignorent des principes de programmeur (et c'est mon cas), on peut le faire de manière relativement incarné. Je répond à sa demande d'une plage de 6 cellules.
    J'aurais pu le faire avec une boucle, mais pour 6 cellules, c'était plus long que ce que j'ai fait.
    Mais, je te remercie, aujourd'hui j'ai encore appris une nouvelle chose.
    Cordialement

    Par contre, je viens de tester ton système, ça semble fonctionner à l'envers de ce qui est demandé ? Et ce n'est pas moi qui t'as mis un pouce rouge!!!

  5. #5
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Patrick voulait probablement parler de CountBlank de la classe WorksheetFunction

    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If Application.WorksheetFunction.CountBlank(LaPlage) > 0 Then 
        Msgbox "La plage contient au moins une cellule vide"
        Exit Sub
    End If
    Après, on peut aussi indiquer combien de cellules sont vides ... et en complexifiant un peu le traitement (via la propriété SpecialCells (xlCellTypeBlanks) de l'objet Range) on peut même indiquer les coordonnées des cellules vides

    EDIT : et pour améliorer l'expérience utilisateur, une Mise En Forme Conditionnelle sur les Cellules vides afin qu'elles lui sautent aux yeux

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    non joe c'est bien countA que j'ai voulu direq
    ui te donne le nombre de cellules pleine d'une plage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub test()
    Set plage = Range("B10:C12")
    MsgBox plage.Cells.Count - Application.CountA(plage)
    End Sub
    mais countblank c'est bien aussi prut etre plus simple meme
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  7. #7
    Membre éclairé
    Homme Profil pro
    Retraité 72 ans
    Inscrit en
    Mai 2011
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité 72 ans

    Informations forums :
    Inscription : Mai 2011
    Messages : 244
    Par défaut
    Bonsoir Transitoire, Patrick, Joe,
    Je vous remercie pour votre partage de vos connaissances.
    Bonne soirée.

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

Discussions similaires

  1. [E-07] copier la ligne si au moins une cellule est vide
    Par jawed dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 24/10/2008, 16h29
  2. Réponses: 1
    Dernier message: 23/06/2008, 18h57
  3. [VBA-E]Tester si une cellule est vide dans un cas particulier
    Par tonnick dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/09/2007, 10h12
  4. Réponses: 2
    Dernier message: 06/04/2007, 13h31
  5. Tester si une cellule est vide
    Par amka dans le forum Access
    Réponses: 1
    Dernier message: 09/08/2006, 15h58

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