msbox avec 2 boutons "non ne marche pas

Y

Yvon

Guest
Voici mon problème sof m'a indiqué une solution qui ne marche pas quelqu'un aurait une suggestion je vous livre l'intégralité de l'échange, je suis bloqué et jtourne en rond

Merci d'avance
Yvon

Bonjour, à tous,

J'ai un enième souci de syntaxe, j'ai crée un useform pour lancer une impression, durant cette impression l'utilisateur doit changer de style de papier, si il répond oui à toute les questions cela se passe nickel, si'il répond nous la prcédure ne se déroule pas comme prévue, je vous livre le code si quelqu'un à une propo à ce problème je suis preneur

bon week-end à tous
Yvon

Private Sub OK_Click()

'Impression de : synthèse, fiche satisfaction client, fiche controle salle'

Sheets(Array(6, 12, 13)).PrintOut
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')
If intresponse = vbYes Then MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
If intresponse = vbYes Then Sheets(14).PrintOut
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')
If intresponse = vbNo Then MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
If intresponse = vbNo Then Sheets(14).PrintOut
If intresponse = vbYes Then Unload Me

End Sub


soft


Utilisateur

XLDnaute Nouveau
Messages: 19


Re:msgbox ok tout va bien non ça foire - 23/10/2005 18:21
La réponse Non de la première question n'est pas interprétée, donc le code contine et pose la 2e question.

Pour plus de clarté dans ton code écris plutôt directement tout ce qu'il faut faire si c'est oui sans répéter si réponse Oui à chaque ligne

Private Sub OK_Click()

'Impression de : synthèse, fiche satisfaction client, fiche controle salle'

Sheets(Array(6, 12, 13)).PrintOut
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')
If intresponse = vbYes Then
MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
Sheets(14).PrintOut
Else
'c'est ici qu'il faut indiquer quoi faire si c'est non à la 1ère question
End If
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')

If intresponse = vbNo Then
MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
Sheets(14).PrintOut
Else
Unload Me
End If
End Sub


Yvon

Visiteur

Re:msgbox ok tout va bien non ça foire - 23/10/2005 19:07
Cela ne march pas le debogueur en voi un message

Erreur de compilation
Else sans If
 

Watson

XLDnaute Nouveau
Bonne nuit Yvon, le forum,

Est-ce que tu as essayé quelque chose du genre :

If MsgBox('Est-ce que l'impression est correct ?', vbYesNo + vbQuestion, 'Avertissement : impression correct ?') = vbyes Then
else
MsgBox 'Insérez dans l'imprimante la fiche bienvenue !', vbExclamation, _
'ERREUR ... La fiche bienvenue S.V.P. ?'
Exit Sub
Exit Sub
...
 
Y

Yvon

Guest
En fait je souhaite que la MSGbox libère l'écran pour que l'on puisse avoir accès à l'user form, un nouvelle fois, et ainsi de suite jusqu'à ce que la réponse soit oui, dans le genre:

Userform: Impression
Impression correcte ! non
Userform: Impression
Impression correcte ! oui
Insérez la fiche 'Bienvenue'
Impression
Impression correcte ! non
Insérez la fiche 'Bienvenue'
Impression correcte ! oui
userform ferme

C'est peu être plus clair comme ça

Merci
a++
Yvon
 
Y

Yvon

Guest
Bonjour DG62,

Dans le principe je suis pleinement d'accord avec toi, Soft n'a peut être pas que cela a faire, et je pensais qu'un autre sur le formum pouvait trouvr la réponse à ma question.

Bonne journée
Yvon
 
Y

Yvon

Guest
Le code qui rend fou est vaincu, 3500 impressions plus tard, et grace à toi Watson, j'ai réussi à faire ce qque je voulais, l'expression exit sub, est la bonne pour fermer le msgbox, par contre le Else, je cherche à quoi il peut servir, la suite n'était qu'un problème dans la priorité d'expression, je te livre le code si cela t'interresse ou un autre

Sheets(Array(6, 12, 13)).PrintOut
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')
If intresponse = vbNo Then Exit Sub
If intresponse = vbYes Then MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
Sheets(14).PrintOut
intresponse = MsgBox('L 'impression est elle correcte ?', vbYesNo + vbQuestion + vbDefaultButton2, 'Impression')
If intresponse = vbNo Then MsgBox 'Insérez dans l'imprimante la fiche bienvenue', vbExclamation, 'Impression'
Sheets(14).PrintOut
Unload Me
If intresponse = vbYes Then Unload Me
End Sub

Grace au forum j'ai de super menu d'impression sur mon appli, merci à tous ceux qui m'ont aider à y arriver et c'était pas gagné vu le niveau :)

a++
Yvon
 

soft

XLDnaute Occasionnel
Re:msbox avec 2 boutons

Yvon écrit:
Bonjour DG62,

Dans le principe je suis pleinement d'accord avec toi, Soft n'a peut être pas que cela a faire, et je pensais qu'un autre sur le formum pouvait trouvr la réponse à ma question.

Bonne journée
Yvon

Ben non j'ai pas que ça à faire !
Mais ça serait sympa de prévenir... je continuais à te répondre de l'autre côté ...
Démarrer un nouveau Fil parce qu'on est pas pleinement satisfait de la réponse reçue, c'est encourager à te répondre à l'avenir !
 
Y

Yvon

Guest
Re:msbox avec 2 boutons

Bonjour soft,

Ne le prend pas mal, je ne souhaitais te vexer, je ne remet en rien tes compétences et ta culture VBA, sur un fil personne n'a d'obligation de suivi, et il me semblait correcte d'inclure ta première réponse dans le fil suivant, j'ai continué à suivre le premier fil.

Si je t'ai blessé accepte mes plus plates excuses, et j'espère sans rancune

A bientot Soft

Yvon
 

Discussions similaires

Réponses
2
Affichages
752
Réponses
10
Affichages
2 K

Statistiques des forums

Discussions
312 329
Messages
2 087 331
Membres
103 519
dernier inscrit
Thomas_grc11