Double affichage MsgBox. Pourquoi ?

Bonjour,

Dans le fichier joint, lorsque que je suis dans certaines conditions que je détaillerai juste en dessous, j'obtiens une Msgbox vbOKonly désirée. Cependant lorsque je clique sur Ok, la MsgBox se ferme, jusque là, tout va pour le mieux dans le meilleur des mondes, puis la même message box s'affiche une seconde fois. Je ne comprends pas pourquoi.

C'est un problème mineur, mais qui serai relativement gênant au quotidien pour l'utilisateur. Avez-vous une idée du pourquoi du comment ?

Voici les conditions pour que cela arrive :

1. exécuter l'UF "ajouter_chantier"

2. cliquer sur le bouton "2ème critère" sans avoir renseigné la listbox et la textbox situé juste à gauche.

3. une Msgbox s'affiche

4. et là, c'est "le drame"....

Merci d'avance,

Cordialement,

Batoine

Bonjour

Essaie cette version légèrement modifiée :

Bye !

Bonjour batoine

le souci vient de la remise a false du bouton a bascule

donc soit changer de bouton soit tester l'état du bouton pour que la macro de se fasse pas deux fois

Private Sub bouton_critere2_Click()
If bouton_critere2.Value = True Then
    If taille1.Value <> "" And unité1.Value <> "unité" And unité1.Value <> "" Then    'On ne demande de rajouter un 2 eme critère que si le 1er est déjà renseigné

            If réhabilitation.Value = True Then
                If bouton_critere2.Value = True Then        'Réha coché et bouton enfoncé
'                    MsgBox "RC BE"
                    unité2.Visible = True
                    taille2.Visible = True
                    unité2.Top = 153
                    taille2.Top = 153
                    typ.Height = 196
 '                   ajouter_chantier.Height = 412
                Else
 '                   MsgBox "RC Br"
                    unité2.Visible = False                  'Réha coché et bouton relaché
                    taille2.Visible = False
                    unité2.Top = 125
                    taille2.Top = 125
                    typ.Height = 196
  '                  ajouter_chantier.Height = 412
                End If

            Else

                If bouton_critere2.Value = True Then            'Réha non coché et bouton enfoncé
 '                   MsgBox "RNC BE"
                    unité2.Visible = True
                    taille2.Visible = True
                    unité2.Top = 125
                    taille2.Top = 125
                    typ.Height = 168
   '                 ajouter_chantier.Height = 412
                Else
  '                  MsgBox "RNC Br"
                    unité2.Visible = False                  'Réha non coché et bouton relaché
                    taille2.Visible = False
                    typ.Height = 168
 '                   ajouter_chantier.Height = 412
                    unité2.Value = Clear
                    unité2.Value = ""
                    taille2.Value = Clear
                End If
            End If

    Else

    MsgBox "Vous ne pouvez pas rajouter un 2ème critère tant que vous n'avez pas écrit le premier.", vbOKOnly + vbExclamation, "N'allons pas trop vite..."

    End If
    bouton_critere2.Value = False
  End If
End Sub

Bonjour,

Merci à vous deux pour votre réponse.

BOB71AU, c'est exactement ce que je souhaitais, je n'y avais pas pensé !

Sujet résolu, et merci encore !

Batoine

Rechercher des sujets similaires à "double affichage msgbox pourquoi"