Signaler une erreur dans un formulaire

  • Initiateur de la discussion Initiateur de la discussion tomy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

tomy

XLDnaute Nouveau
bonjour,

j'ai creer un formulaire avec des chmaps texte A,B,C et D

quand l'utilisateur valide sa saisie ( boutton 'Ajouter')
je lance un test voir si les chmaps sont vides :

Private Sub cmdAjouter_Click()
'ERREUR si un champs vide
If A = "" Then
MsgBox "Erreur le champ 'A' est vide"
ElseIf B = "" Then
MsgBox "Erreur le champ 'B' est vide"
ElseIf C = "" Then
MsgBox "Erreur le champ 'C' est vide"
ElseIf D = "" Then
MsgBox "Erreur D est vide"
End If

D'ailleur Meme si je rentre une infos dans la cellule ca me dit encore cellule vide ????

j'aimerai pouvoir integre une petite fonction pour :
- faire que l'utlisateur revienne au formulaire
- faire que les champs non vides restent non vide ( reprise des valeurs deja entrées, sachant qu'au demarrage de mon formulaire j'ai un script qui remet tout à Zéro par commodité)

optionnel :
- faire que le titre du champ vide devienne rouge

Merci de votre aide.
tomy
 
Re : Signaler une erreur dans un formulaire

Bonjour

tu as nommé tes textbox A B C et D c'est bien cela ??

Si tu rajoutes un exit sub après ton message d'erreur et bien il ne se passera rien donc ton Uf restera dans l'état

Pour mettre ton libellé en rouge un petit bout de fichier serait plus simple
 
Re : Signaler une erreur dans un formulaire

Pour ce qui est du EXIT SUB c'est exactement ce que je voulais merci !

sinon pour le bout de fichier c pas possible ... désolé

mais c'est juste un userform avec :
- 4 textbox nommée A B C et D
- 4 titre de textbox nommé TXT_A,TXT_B....

voila

Merci
 
Re : Signaler une erreur dans un formulaire

RE

Essaies ainsi
Code:
Private Sub cmdAjouter_Click()
'ERREUR si un champs vide
If A = "" Then
    MsgBox "Erreur le champ 'A' est vide"
    TXT_A.ForeColor = &HFF&
    Exit Sub
Else
    TXT_A.ForeColor = &H80000012
End If
If B = "" Then
    MsgBox "Erreur le champ 'B' est vide"
    TXT_B.ForeColor = &HFF&
    Exit Sub
Else
    TXT_B.ForeColor = &H80000012
End If
If C = "" Then
    MsgBox "Erreur le champ 'C' est vide"
    TXT_C.ForeColor = &HFF&
    Exit Sub
Else
    TXT_C.ForeColor = &H80000012
End If
If D = "" Then
    MsgBox "Erreur le champ 'D' est vide"
    TXT_D.ForeColor = &HFF&
    Exit Sub
Else
    TXT_D.ForeColor = &H80000012
End If
 
Re : Signaler une erreur dans un formulaire

Re

autre solution

Code:
Private Sub cmdAjouter_Click()
'ERREUR si un champs vide

Dim meschamps As String

meschamps = ""
If A = "" Then
    meschamps = "A"
    TXT_A.ForeColor = &HFF&
Else
    TXT_A.ForeColor = &H80000012
End If
If B = "" Then
    meschamps = IIf(meschamps = "", "B", meschamps & "-B")
    TXT_B.ForeColor = &HFF&
Else
    TXT_B.ForeColor = &H80000012
End If
If C = "" Then
    meschamps = IIf(meschamps = "", "C", meschamps & "-C")
    TXT_C.ForeColor = &HFF&
Else
    TXT_C.ForeColor = &H80000012
End If
If D = "" Then
    meschamps = IIf(meschamps = "", "D", meschamps & "-D")
    TXT_D.ForeColor = &HFF&
Else
    TXT_D.ForeColor = &H80000012
End If
If meschamps <> "" Then
    MsgBox "Erreur le(s) champ(s) " & meschamps & " est(sont) vide(s)"
    Exit Sub
End If
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

D
Réponses
49
Affichages
9 K
D
L
Réponses
3
Affichages
899
Laurent97310
L
H
Réponses
3
Affichages
1 K
HugoB99
H
K
Réponses
5
Affichages
2 K
N
Réponses
5
Affichages
2 K
Nicko29
N
N
Réponses
23
Affichages
5 K
Retour