Msg box oui non

chnook

XLDnaute Junior
Bonjour à tous,

J'ai un gros problème avec les macros et leur logique. Je souhaite faire un msgbox oui/non.
Si la réponse est "oui", la macro permet d'effacer le contenu de certaines cellules
Si la réponse est "non", la macro n'efface rien.
J'ai pour l'instant tapé le code suivant :

Sub qmax()
'
' qmax Macro

'Question à l'utilisateur

Dim Rep As Integer

Rep = MsgBox("Etes vous sur de vouloir commencer une nouvelle étude ? Ceci entraînera la suppression de toutes les données renseignées. Cliquez sur oui si vous confirmer, sinon sur non pour fermer cette fenêtre et retourner sur la page d'acceuil", vbYesNo + vbQuestion, "Nouvelle étude ???")
If Rep = vbYes Then
' Réponse +++
Sheets("Dim. fondations").Select
Range("F8:G8").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlDouble
.Weight = xlThick
.ColorIndex = 1
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlDouble
.Weight = xlThick
.ColorIndex = 1
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlDouble
.Weight = xlThick
.ColorIndex = 1
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlDouble
.Weight = xlThick
.ColorIndex = 1
End With
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("F8").Select
ActiveCell.FormulaR1C1 = "Qmax = "
Range("G8").Select
ActiveCell.FormulaR1C1 = ""
Range("G8").Select
Else
' Réponse ---
Sheets("Acceuil").Select

End If


End Sub


Mais lorsque je lance cette macro, les cellules s'effacent toutes correctement mais la msgbox n'apparaît pas.

Le fichier Xcel est trop lourd pour le joindre mais si vous n'avez pas tout compris je peux essayer de répondre.

En espérant que quelqu'un puisse m'aider.

Bonne journée
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Msg box oui non

Bonjour le fil, bonjour le forum,

Tu ne daignes même pas répondre quand on te propose de l'aide (ici). Ça donne pas envie de continuer... La lecture de la Lien supprimé devrait te faire le plus grand bien...
 

latour

XLDnaute Nouveau
Re : Msg box oui non

Bonsoir,
Voici un exemple de ce que je fais dans ces cas là:
Dim Msg, Style, Title, Mystring, Réponse
Style = vbYesNoCancel
Msg = "Lancement du traitement_1 ou du traitement_2"
Réponse = MsgBox(Msg, Style, Title)
If Réponse = vbYes Then ' L'utilisateur a choisi Oui.

Mystring = "On lance le traitement 1"
Réponse = MsgBox(Mystring, vbOKOnly, Title)
Call Traitement_1
Else ' L'utilisateur a choisi Non ou Annuler
Mystring = "On lance le traitement 2 ou on ne fait rien"
Réponse = MsgBox(Mystring, vbOKOnly, Title)
Call Traitement_2
End If
 

Fo_rum

XLDnaute Accro
Re : Msg box oui non

Bonsoir,

autre possibilité :
Code:
Sub t()
    If MsgBox("traitement_1 ?" & Chr(10) & "(si non, traitement 2 !)", vbYesNo) = vbYes Then
        MsgBox "on appelle la première macro !", vbOKOnly, ""
        'Traitement_1
    Else
        MsgBox "on appelle la seconde macro !", vbOKOnly, ""
        'Traitement_2
    End If
End Sub
 

Discussions similaires

Réponses
2
Affichages
124

Statistiques des forums

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