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 :

Vérifier si USERFORM est vide [XL-2007]


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
    Novembre 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2009
    Messages : 104
    Par défaut Vérifier si USERFORM est vide
    Bonjour le Forum

    J'ai un userform avec 18 TextBox et Combobox.
    Il y aussi un bouton Valider et un bouton cancel.

    J'essai de vérifier si l'utilisateur a fait au moins une entrée lorsqu'il a pressé sur le bouton Valider.

    Je peux le faire en vérifiant chacune des boites, mais il y a t-il un moyen plus rapide de type Isempty(userform) ?

    Merci pour intérêt

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Bugzy1963 le forum "brut comme cela " je suppose que tu as renommme tes textboxs pour simplifier !!! autrement une boucle dans ce style est suffisante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim x As Byte, i As Byte
    For x = 1 To 18
    If Controls("textbox" & x) <> "" Then
    i = i + 1
    Next x
    'ect...
    autrement dans ce style je suppose un seul combobox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub valider_Click()
    Dim j As Control, i As Byte
    For Each j In Controls
    If TypeOf j Is MSForms.TextBox Then
     If j <> "" Then
     i = i + 1
     End If: End If: Next
    If i > 0 Or ComboBox1 <> "" Then
    MsgBox "renseignee"
    Else
    MsgBox "pas renseignee"
    End If
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2009
    Messages : 104
    Par défaut
    Merci Laetitia

    Je n'ai pas renommé les Texbox car j'utilise Cstr pour retirer les valeurs numériques.

    Je ne connais pas la fonction Controls, mais je vais chercher,

    J'imagine qu'il y aura une autre boucle pour les Combobox.

    merci

  4. #4
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    re, en complement pour les combobox je suppose nb..=4

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub valider_Click()
     Dim x As Byte, i As Byte
     For x = 1 To 18
     If Controls("textbox" & x) <> "" Then i = i + 1
     Next x
     For x = 1 To 4
     If Controls("combobox" & x) <> "" Then i = i + 1
     Next x
     If i > 0 Then
     MsgBox "renseignee"
     Else
     MsgBox "pas renseignee"
     End If
    End Sub
    ou encore renommee ou pas!!! plus simple dans certains cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub valider_Click()
     Dim j As Control, i As Byte
     For Each j In Controls
     If TypeOf j Is MSForms.TextBox Or TypeOf j Is MSForms.ComboBox Then
     If j <> "" Then i = i + 1
     End If: Next
     If i > 0 Then
     MsgBox "renseignee"
     Else
     MsgBox "pas renseignee"
     End If
    End Sub

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

Discussions similaires

  1. Sortir un txt en une string et vérifier si il est vide
    Par loic.keysoft dans le forum ASP
    Réponses: 5
    Dernier message: 12/05/2008, 17h38
  2. Vérifier qu'un dossier est vide
    Par coincoin22 dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 26/07/2007, 16h58
  3. vérifier qu'un champ est vide dans un formulaire
    Par dr_feelgood dans le forum IHM
    Réponses: 3
    Dernier message: 08/06/2007, 07h21
  4. Réponses: 2
    Dernier message: 21/02/2007, 10h27
  5. [Tableaux] Vérifier si un champ est vide !
    Par Tr@nkill dans le forum Langage
    Réponses: 9
    Dernier message: 16/05/2006, 16h11

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