Sortir d'une input box avec le bouton annuler

Bonjour,

Je n'arrive pas à trouver la syntaxe qui me permet de sortir de la commande inputbox si je clique sur le bouton annuler. Tout fonctionne bien si je n'active pas le contrôle du bouton annulé. Un détail que je ne vois pas dans la syntaxe, visiblement la fonction IF VBCANCEL n'est pas la bonne.

Merci par avance de votre réponse

Impression:

NomBudget = InputBox("Saisir le nom de votre fichier !", "Nom du fichier avec extension PDF")

' If vbCancel Then

' Exit Sub

' End If

MsgBox NomBudget

If NomBudget = "" Then

MsgBox "Vous devez entrer un nom", vbInformation + vbOKOnly

GoTo Impression

End If

MsgBox "La procédure se poursuit"

Bonjour,

Comme l'indique l'aide Excel, le bouton "annuler" ou la fermeture de l'InputBox renvoie une chaine de caractères vide ("").

Si vous devez contrôler que votre InputBox contient bien quelque chose, il faudrait plutôt utiliser un code du genre :

Sub Test()

Dim NomBudget As String

Do
    NomBudget = InputBox("Saisir le nom de votre fichier !", "Nom du fichier avec extension PDF")
    If NomBudget = "" Then MsgBox "Vous devez entrer un nom", vbInformation + vbOKOnly
Loop While NomBudget = ""

End Sub

Bonjour Bruce, bonjour le forum,

Peut-être comme ça :

impression:
Dim NomBudget As Variant
NomBudget = Application.InputBox("Saisir le nom de votre fichier !", "Nom du fichier avec extension PDF", Type:=2)
If NomBudget = False Then Exit Sub
If NomBudget = "" Then
    MsgBox "Vous devez entrer un nom", vbInformation + vbOKOnly
    GoTo impression
End If
MsgBox "La procédure se poursuit"

Le type 2 signifie que la réponse doit être du texte....

Bonjour,

Bonjour Pedro22, ThauThème

Bruce21130, je ne pense pas qu'il faille absolument obliger l'utilisateur à entrer quelque chose car si il vient de s'apercevoir d'une petite erreur, il va vouloir la modifier avant l'impression et dans ton cas, il n'a pas le choix que de tourner en boucle ou d'imprimer le document avec l'erreur !

A partir du code de Pedro22 :

Sub Test()

    Dim NomBudget As String

    Do

        NomBudget = InputBox("Saisir le nom de votre fichier !", "Nom du fichier avec extension PDF")

        If NomBudget = "" Then

            If MsgBox("Vous n'avez pas entrer de nom !" _
                      & vbCrLf & _
                      "Voulez-vous vraiment annuler ?", vbQuestion + vbYesNo) = vbYes Then Exit Do 'ou Exit Sub

        End If

    Loop While NomBudget = ""

End Sub

Bonjour, j'ai mis en application vos réponses, j'ai résolu mon problème, merci beaucoup, merci à tous

Bonjour et merci pour ton retour

Rechercher des sujets similaires à "sortir input box bouton annuler"