Insérer MsgBox si erreur

Bonjour à tous,

Je travaille actuellement sur un projet de location d'auto, et j'aimerai insérer une MsgBox avec pour message "Informations incomplètes" par exemple si l'utilisateur valide un formulaire mais qu'il n'a pas saisi les données.

Car actuellement quand je valide le formulaire ça me met un message de débogage, c'est pas très beau

EDIT : Dans mon cas, c'est le formulaire de RETOUR des autos

Dans mon cas voici le code :

Private Sub Btn_Retour_OK_Click()
Dim nb As Integer
Dim j As Integer, nj As Integer
Dim prop As Integer, pos As Integer
init
nom = ComboBox1.Text
num_employe = CInt(TextBox1.Text)
num_voiture = CInt(TextBox2.Text)
verif_num_employe
verif_num_voiture
If vbool = 0 Then
    prop = 0
    pos = 4
    nb = ce.Offset(ne, 3).Value
    For j = 4 To 3 + nb
        If num_voiture = ce.Offset(ne, j).Value Then
            prop = 1
            pos = j
        End If
    Next j
    If prop = 1 Then
        cvoiture.Offset(nk, 2).Value = "oui"
        For nj = pos To 2 + nb
            ce.Offset(ne, nj).Value = ce.Offset(ne, nj + 1).Value
        Next nj
        ce.Offset(ne, 3 + nb).Value = ""
        nb = nb - 1
        ce.Offset(ne, 3).Value = nb
        ce.Offset(ne, 5).Value = ""
        MsgBox "Le RETOUR du " & auto & " n°" & num_voiture & " est enregistre"
        Unload Me
   End If
End If
End Sub

Je ne sais pas où exactement insérer la MsgBox à chaque fois ça me fait une erreur 1004

Merci d'avance !

Bonjour Chankla

Pour ton bouton Valider retour , tu mets ce code :

Private Sub Btn_Retour_OK_Click()
Dim nb As Integer
Dim j As Integer, nj As Integer
Dim prop As Integer, pos As Integer
init
nom = ComboBox1.Text
If nom = "" Then
    MsgBox "Veuillez sélectionner le nom de l'employé !!"
    Exit Sub
End If
num_employe = CInt(TextBox1.Text)
num_voiture = CInt(TextBox2.Text)
verif_num_employe
verif_num_voiture
If vbool = 0 Then
    prop = 0
    pos = 4
    nb = ce.Offset(ne, 3).Value
    For j = 4 To 3 + nb
        If num_voiture = ce.Offset(ne, j).Value Then
            prop = 1
            pos = j
        End If
    Next j
    If prop = 1 Then
        cvoiture.Offset(nk, 2).Value = "oui"
        For nj = pos To 2 + nb
            ce.Offset(ne, nj).Value = ce.Offset(ne, nj + 1).Value
        Next nj
        ce.Offset(ne, 3 + nb).Value = ""
        nb = nb - 1
        ce.Offset(ne, 3).Value = nb
        ce.Offset(ne, 5).Value = ""
        MsgBox "Le RETOUR du " & auto & " n°" & num_voiture & " est enregistre"
        Unload Me
   End If
End If
End Sub

Bon courage

A+

Salut Chankla,

Voici un essai :

Private Sub Btn_Retour_OK_Click()
Dim nb As Integer
Dim j As Integer, nj As Integer
Dim prop As Integer, pos As Integer
init
If ComboBox1.Text = "" Then GoTo erreur

        nom = ComboBox1.Text
        num_employe = CInt(TextBox1.Text)
        num_voiture = CInt(TextBox2.Text)
        verif_num_employe
        verif_num_voiture
        If vbool = 0 Then
            prop = 0
            pos = 4
            nb = ce.Offset(ne, 3).Value
            For j = 4 To 3 + nb
                If num_voiture = ce.Offset(ne, j).Value Then
                    prop = 1
                    pos = j
                End If
            Next j
            If prop = 1 Then
                cvoiture.Offset(nk, 2).Value = "oui"
                For nj = pos To 2 + nb
                    ce.Offset(ne, nj).Value = ce.Offset(ne, nj + 1).Value
                Next nj
                ce.Offset(ne, 3 + nb).Value = ""
                nb = nb - 1
                ce.Offset(ne, 3).Value = nb
                ce.Offset(ne, 5).Value = ""
                MsgBox "Le RETOUR du " & auto & " n°" & num_voiture & " est enregistre"
                Unload Me
           End If
        End If
Exit Sub

erreur:
MsgBox "Enregistrement abandonné, formulaire non-renseigné"
Unload Me
End Sub

Merci beaucoup pour votre aide à vous deux, ça a marché !!

Bonjour,

personnellement j'éviterais de faire un "Unload Me" si le combobox1 est vide...

Le message d'erreur avec la sortie de la sub est idéal, cela évite de "re lancer" le USF.

Mais je trouve que le message est de trop, vu que le reste des informations sont remplies automatiquement.

Moi je ne mettrais jusque :

If nom = "" Then Exit Sub

En gros on clique sur valider et rien ne se passe... Et alors soit on "touche" à la liste de choix, soit on quitte.

@ bientôt

LouReeD

Rechercher des sujets similaires à "inserer msgbox erreur"