VBA : Erreur Msgbox

Résolu/Fermé
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - Modifié par Villette54 le 21/03/2013 à 15:27
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - 25 mars 2013 à 15:00
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 vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
22 mars 2013 à 08:47
Bonjour à tous,

Je réitère ma demande,

Merci d'avance
0
f894009 Messages postés 17205 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 19 octobre 2024 1 709
22 mars 2013 à 09:54
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 vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
25 mars 2013 à 15:00
C'est parfait, je te remercie :)
0