pb avec 2 msgbox dans procédure évènementielle

M

michel

Guest
bonjour le forum,
j'ai crée la procédure suivante:
Private Sub Worksheet_Deactivate()
If Range('L28').Value = '' Then
MsgBox 'Merci de rappeler le montant total des LMT ou CB demandés.' _
& Chr(10) & 'Voulez-vous le compléter maintenant ?', vbYesNo, 'Attention'
Sheets('NDE').Select
Range('L28').Select
End If
If Range('J30,M30,S30, S31').Value = '' Then
MsgBox 'Veuiller compléter les cellules Caisse, Blanc et Partages même avec la valeur 0 le cas échéant'
Sheets('NDE').Select
Range('J30').Select
End
End If
End If
End Sub

le pb : la 1ère msgbox apparait bien mais je n'ai pas la possibilité de répondre car aussitot la 2ième msgbox arrive.
Et quand j'ai fini de traiter la 2 ième, la procédure me ramène à la première.
Comment arrêter cette machine infernale ?
Merci à tous pour votre aide
 

deudecos

XLDnaute Impliqué
Bonsoir Michel, le forum,

Peut etre qu'un petit exit sub bien place...

du genre :
Private Sub Worksheet_Deactivate()
If Range('L28').Value = '' Then
MsgBox 'Merci de rappeler le montant total des LMT ou CB demandés.' _
& Chr(10) & 'Voulez-vous le compléter maintenant ?', vbYesOnly, 'Attention'
Exit Sub
Sheets('NDE').Select
Range('L28').Select
End If
If Range('J30,M30,S30, S31').Value = '' Then
MsgBox \\'Veuiller compléter les cellules Caisse, Blanc et Partages même avec la valeur 0 le cas
échéant\\'
Exit Sub
Sheets('NDE').Select
Range('J30').Select
End

End If
End Sub

Bonne soiree

Olivier

Ps. a mettre au conditionel quand meme, puisque je n'ai pas verifie mes dires.

Message édité par: Deudecos, à: 04/09/2005 22:42
 
L

laM

Guest
Bonjour à vous

Ce doit être un problème de If ... End If

Car cela marche ainsi :

Private Sub Worksheet_Deactivate()
If Range('L28').Value = '' Then
MsgBox 'Merci de rappeler le montant total des LMT ou CB demandés.' _
& vbLf & 'Voulez-vous le compléter maintenant ?', vbYesNo, 'Attention'
'Sheets('NDE').Select Range('L28').Select
End If
If Range('J30,M30,S30, S31').Value = '' Then
MsgBox 'Veuiller compléter les cellules Caisse, Blanc et Partages même avec la valeur 0 le cas échéant'
'Sheets('NDE').Select Range('J30').Select
End If
End Sub

le range().select provoque une erreur chez moi, puisque ma cellule est vide et je n'ai pas de feuille NDE, donc par fainéantise j'ai foutu le 'bazar' en remarque ;-)

Au revoir, à bientôt
 
M

michel

Guest
merci pour ton aide mais ça ne marche pas.
Le second msgbox s'affiche toujours tout de suite aprés le premier sans que j'ai la possibilité de saisir la réponse dans la cellule.
En revanche je peux bien dérouler ma seconde procédure jusqu'au bout.
C'est alors que , curieusement (pour moi ) le contrôle du premier if then me ramène vers ma première procédure que je peux achever.
Au bout du compte donc, je traite ma seconde procédure en premier et la première en second. Et ça ne me va pas du tout...
Il y a sans doute un truc pour faire les choses dans l'ordre.
Je débute, c'est passionnant mais les nuits sont courtes.

Merci encore de ton aide
 

Discussions similaires

Statistiques des forums

Discussions
312 515
Messages
2 089 235
Membres
104 074
dernier inscrit
Romuald MORVAN