VBA : Erreur Msgbox

Résolu
Villette54 Messages postés 300 Date d'inscription   Statut Membre Dernière intervention   -  
Villette54 Messages postés 300 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Voilà je m'entraîne comme je peux sur VBA, et du coup actuellement j'essaye de faire une suite de fenêtre pour demander X confirmation avant l'ouverture d'une fichier.

Cependant j'ai un soucis et je n'arrive pas à le régler par moi même. Je n'arrive pas à fermer le fichier en cas de clique sur "Non" regarder par vous même :

Private Sub Workbook_Open()


Application.WindowState = xlMinimized
If MsgBox("Es-tu sûr de vouloir ouvrir ce fichier ?", vbQuestion + vbYesNo, "Confirmation-1") = vbYes Then


If MsgBox("Es-tu certain de vouloir ouvrir ce fichier ?", vbQuestion + vbYesNo, "Confirmation-2") = vbYes Then


If MsgBox("Es-tu sûr et certain du coup ?", vbQuestion + vbYesNo, "Confirmation-3") = vbYes Then


If MsgBox("T'as pas froid au yeux toi, tu veux vraiment faire ça ?", vbQuestion + vbYesNo, "Confirmation-4") = vbYes Then


If MsgBox("C'est peut-être une perte de temps, peut-être un piège ou peut-être un trésor caché. T'es vraiment vraiment sur de vouloir tenter le coup ?", vbQuestion + vbYesNo, "Confirmation-5") = vbYes Then


MsgBox "Bon, aller va tu l'as bien mérité"
Application.WindowState = xlMaximized
Else: Workbooks("Fichier Fabien.xlsm").Close savechanges:=False


End If
End If
End If
End If
End If
End Sub


J'ai essayé comme ça (si je clique sur Non le fichier reste quand même ouvert), j'ai essayé en mettant un Else après chaque If dans ce cas la, je n'avais qu'une seule boite de dialogue qui apparaissait les autres ne suivent pas..

Je ne vois pas comment faire d'autre, si vous avez des idées pour mon problème (ou même pour simplifier mon code, toute info est bonne à prendre dans mon cas)

Merci d'avance.

3 réponses

Villette54 Messages postés 300 Date d'inscription   Statut Membre Dernière intervention   28
 
Bonjour à tous,

Je réitère ma demande,

Merci d'avance
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

Private Sub Workbook_Open()

Application.WindowState = xlMinimized
If MsgBox("Es-tu sûr de vouloir ouvrir ce fichier ?", vbQuestion + vbYesNo, "Confirmation-1") = vbYes Then
    If MsgBox("Es-tu certain de vouloir ouvrir ce fichier ?", vbQuestion + vbYesNo, "Confirmation-2") = vbYes Then
        If MsgBox("Es-tu sûr et certain du coup ?", vbQuestion + vbYesNo, "Confirmation-3") = vbYes Then
            If MsgBox("T'as pas froid au yeux toi, tu veux vraiment faire ça ?", vbQuestion + vbYesNo, "Confirmation-4") = vbYes Then
                If MsgBox("C'est peut-être une perte de temps, peut-être un piège ou peut-être un trésor caché. T'es vraiment vraiment sur de vouloir tenter le coup ?", vbQuestion + vbYesNo, "Confirmation-5") = vbYes Then
                    MsgBox "Bon, aller va tu l'as bien mérité"
                    Application.WindowState = xlMaximized
                Else
                    x = "Confirmation-5"
                    GoTo fin
                End If
            Else
                x = "Confirmation-4"
                GoTo fin
            End If
        Else
            x = "Confirmation-3"
            GoTo fin
        End If
    Else
        x = "Confirmation-2"
        GoTo fin
    End If
Else
    x = "Confirmation-1"
    GoTo fin
End If

Exit Sub
fin:
    MsgBox x
    
    Workbooks("Fichier Fabien.xlsm").Close savechanges:=False
End Sub


Bonne suite
0
Villette54 Messages postés 300 Date d'inscription   Statut Membre Dernière intervention   28
 
C'est parfait, je te remercie :)
0