Ah ! les msgbox recorrigées et modifiées...

Contenu du snippet

ça t'explique beaucoup sur les msgbox !
Au fait, au lieu de vous battre à corriger des erreurs, pourquoi vous utilisez pas les constantes de VB. Ainsi on n'est plus obligé de déclarer des variables de type LONG !

Source / Exemple :


' On prépare les variables (toujours !!!) :
Dim Apparence, TypeDeBox As VbMsgBoxStyle
Dim Reponse As VbMsgBoxResult

'La variable Apparence peut prendre l'une de ces formes :
'Apparence = vbQuestion        'msgbox avec une icône question
'Apparence = vbInformation     'msgbox avec une icône information
'Apparence = vbCritical        'msgbox avec une icône critique (connue)
'Apparence = vbDefaultButton1  'msgbox sans icône

'la variable TypeDeBox peut prendre l'unes de ces formes :
'TypeDeBox = vbApplicationModal     'msgbox pour l'application
'TypeDeBox = vbSystemModal          'msgbox pour tout le système
'TypeDeBox = vbMsgBoxHelpButton     'msgbox avec un bouton d'aide

'ATTENTION : si vous utilisez comme TypeDeBox 'vbMsgBoxHelpButton
'il faudra faire comme ceci :
'MsgBox "Texte", -------, "Titre", "Fichier d'aide", "Contexte (integer)"

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'On utilisera l'Apparence suivante :
Apparence = vbInformation
'et un TypeDeBox suivant :
TypeDeBox = vbApplicationModal 'par défaut.
'pour toutes les msgbox qui vont suivre.

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton OK
'Ici, inutile de retourner une réponse, il n'y a pas de choix.
MsgBox "Texte", vbOKOnly + Apparence + TypeDeBox, "Titre"

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton OUI / NON
'On retourne la réponse dans la variable 'Reponse'
Reponse = MsgBox("Texte", vbYesNo + Apparence + TypeDeBox, "Titre")
Select Case Reponse
Case vbYes
    'il a cliqué sur OUI
Case vbNo
    'il a cliqué sur NON
End Select

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton OUI / NON / ANNULER
'On retourne la réponse dans la variable 'Reponse'
Reponse = MsgBox("Texte", vbYesNoCancel + Apparence + TypeDeBox, "Titre")
Select Case Reponse
Case vbYes
    'il a cliqué sur OUI
Case vbNo
    'il a cliqué sur NON
Case vbCancel
    'il a cliqué sur ANNULER
End Select

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton OK / ANNULER
'On retourne la réponse dans la variable 'Reponse'
Reponse = MsgBox("Texte", vbOKCancel + Apparence + TypeDeBox, "Titre")
Select Case Reponse
Case vbOK
    'il a cliqué sur OK
Case vbCancel
    'il a cliqué sur ANNULER
End Select

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton REESSAYER / ANNULER
'On retourne la réponse dans la variable 'Reponse'
Reponse = MsgBox("Texte", vbRetryCancel + Apparence + TypeDeBox, "Titre")
Select Case Reponse
Case vbRetry
    'il a cliqué sur REESSAYERs
Case vbCancel
    'il a cliqué sur ANNULER
End Select

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'Situation : Bouton ABANDON / REESSAYER / IGNORER
'On retourne la réponse dans la variable 'Reponse'
Reponse = MsgBox("Texte", vbAbortRetryIgnore + Apparence + TypeDeBox, "Titre")
Select Case Reponse
Case vbAbort
    'il a cliqué sur ABANDON
Case vbRetry
    'il a cliqué sur REESSAYER
Case vbIgnore
    'il a cliqué sur IGNORER
End Select

'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

'On peu également faire une MsgBox toute simple :
MsgBox "Texte", , "Titre"
'Ou encore :
MsgBox "Texte"
'Ou encore :
MsgBox "Texte", vbOKOnly + vbCritical, "Titre"
'Bref, on peut en créer à l'infini ! et c'est facile.

Conclusion :


J'espère que ça vous aidera mais dites-moi franchement si je dois faire moins compliqué !

Druide à 'w_druide@voila.fr'

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.