Vérifier une condition sur VBA
Résolu
flodu64
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
flodu64 Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
flodu64 Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai créé plusieurs boîtes de dialogue dans lesquelles j'ai des textbox et des listbox essentielles.
J'ai mis en place les formules suivantes afin qu'Excel vérifie que je ne pas valide pas la boite de dialogue sans avoir complété les textbox et listbox essentielles.
Voici le début du code :
If INTERVENANT = "" Then
MsgBox ("Attention vous n'avez pas sélectionné d'intervenant")
Else
If CHANTIER = "" Then
MsgBox ("Attention vous n'avez pas sélectionné de chantier")
Else
If LIVRAISON = "" Then
MsgBox ("Attention vous n'avez pas renseigné le lieu de livraison ")
Else
If...
Le code fonctionne très bien. Cependant, si par exemple j'oublie de remplir la Texbox INTERVENANT, je valide la MSG Box qui me fait remarquer mon oubli.
Lorsque je valide à nouveau ma boîte de dialogue avec l'erreur corrigée, excel ne vérifie plus cette condition, il reprend donc à If CHANTIER...
J'aimerais qu'Excel vérifie à chaque fois toutes les conditions si une d'entre elles n'est pas rempli.
Merci par avance.
J'ai créé plusieurs boîtes de dialogue dans lesquelles j'ai des textbox et des listbox essentielles.
J'ai mis en place les formules suivantes afin qu'Excel vérifie que je ne pas valide pas la boite de dialogue sans avoir complété les textbox et listbox essentielles.
Voici le début du code :
If INTERVENANT = "" Then
MsgBox ("Attention vous n'avez pas sélectionné d'intervenant")
Else
If CHANTIER = "" Then
MsgBox ("Attention vous n'avez pas sélectionné de chantier")
Else
If LIVRAISON = "" Then
MsgBox ("Attention vous n'avez pas renseigné le lieu de livraison ")
Else
If...
Le code fonctionne très bien. Cependant, si par exemple j'oublie de remplir la Texbox INTERVENANT, je valide la MSG Box qui me fait remarquer mon oubli.
Lorsque je valide à nouveau ma boîte de dialogue avec l'erreur corrigée, excel ne vérifie plus cette condition, il reprend donc à If CHANTIER...
J'aimerais qu'Excel vérifie à chaque fois toutes les conditions si une d'entre elles n'est pas rempli.
Merci par avance.
A voir également:
- Vérifier une condition sur VBA
- Excel cellule couleur si condition texte - Guide
- Verifier compatibilite windows 11 - Guide
- Verifier un lien - Guide
- Vérifier si une phrase est correcte - Accueil - Google
- Vérifier si mot de passe piraté - Guide
2 réponses
Bonjour,
Généralement, plutôt que d'afficher des messages qui deviennent rapidement agaçants pour l'utilisateur, on désactive le bouton Valider tant que les conditions ne sont pas remplies.
On peut éventuellement utiliser un label pour informer l'utilisateur des manquements
Généralement, plutôt que d'afficher des messages qui deviennent rapidement agaçants pour l'utilisateur, on désactive le bouton Valider tant que les conditions ne sont pas remplies.
On peut éventuellement utiliser un label pour informer l'utilisateur des manquements
Comment fait-on pour désactiver un bouton ? J'ai essayé ton idée mais j'ai le même problème pour l'instant. Voici le code entier (le label se nome ERREUR) :
rivate Sub VALIDER_Click()
If INTERVENANT = "" Then
ERREUR = "Attention vous n'avez pas sélectionné d'Intervenant"
Else
If CHANTIER = "" Then
ERREUR = "Attention vous n'avez pas sélectionné un chantier"
Else
If LIVRAISON = "" Then
ERREUR = "Attention vous n'avez pas renseigné le lieu de livraison "
Else
Range("N3") = INTERVENANT
Range("C8") = CHANTIER
Range("C9") = LIVRAISON
Range("C7") = DEVIS
LIVRAISON = ""
DEVIS = ""
Unload Données_BC
Données_BC.Hide
End If
End If
End If
End Sub
Mieux qu'un discours, un exemple :
https://mon-partage.fr/f/6M2ajo5d/
Merci.
je vais modifier toutes mes boites de dialogue, c'est plus ergonomique comme ça.
Je souhaite créer une macro qui me permet d'exporter la feuille active (Excel 2007) en PDF et renommer ce fichier PDF avec le nom de la feuille active.
Ma formule ne fonctionne pas.
Attention j'ai voulu renommer mon dossier PDF avec la cellule N2 qui porte le nom de la feuille active car je ne sais pas comment récupérer le nom d'une feuille dont le nom change à chaque création d'un nouveau bon de commande.
Sub Valider_BC_PDF()
' Enregistrer en PDF
Dim fichier As String
'adaptez le nom de la feuille
With ActiveSheet.Select
fichier = Range("N2").pdf
'pensez a ecrire le chemin
CHEMIN = fichier
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=CHEMIN, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
End With
End Sub
Sheets("ACCUEIL").Select
End Sub