Vérifier optionbutton si c'est cliqué

BENAM69

XLDnaute Occasionnel
Bonjour à vous le forum,

La macro marche très bien. C'est juste au niveau de la vérification que cela déconne.

Sur le fichier, si un "NOK" est écrit sur une cellule, la macro détecte automatiquement et fait ouvrir un userform.
L'envoi de mail marche très bien. C'est juste au niveau du optionbutton1 jusqu'à optionbutton5.

J'ai mis en condition, si le optionbutton1 est cliqué alors quand je clique sur bouton commande "Fermer" cela envoi le mail avec à la personne concernée et le titre concernée.

Quand je tape
VB:
if optionbutton1 = True then
'le code en fonction de cette condition
end if
rien ne se passe.
Par contre quand je met False, cela fonctionne alors que j'ai cliqué sur ce bouton.
Du coup quand je veux faire plusieurs conditions,
si je clique sur le bouton qualité, je devrais recevoir que le mail avec le titre qualité et non pas 2 mails distincts avec sécurité et qualité.

La vérification en fonctionne pas.

Quelqu'un aurait une idée ? Je n'arrive pas à trouver cette condition alors que je pense qu'elle est bonne.

Voici le fichier en PJ.

Merci de votre aide

Benam
 

Pièces jointes

  • Test Niveau 2v2.xlsb
    19.9 KB · Affichages: 7

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Benam, bonjour le forum,

Ton code n'est pas lancé à partir de l'UserForm1 mais à partir d'une procédure hors UserForm1. Il te faut donc spécifier de quel OptionButton on parle...
Le code :

VB:
Dim MonOutlookS As Object
Dim MonMessage As Object
Dim corps As String
Dim MonOutlookQ As Object
Dim MonMessageQ As Object
Dim corpsQ As String

If UserForm1.OptionButton1 = True Then
    Set MonOutlookS = CreateObject("Outlook.Application")
    Set MonMessageS = MonOutlookS.createitem(0)
    'MonMessageS.to = "Mettre adresse email"
    MonMessageS.Subject = "Sécurité"
    corps = "Bonjour,"
    corps = corps & Chr(13) & Chr(10)
    corps = corps & "Remarques : " & UserForm1.TextBox1.Value & Chr(13) & Chr(10)
    corps = corps & Chr(13) & Chr(10)
    corps = corps & "Ce message est envoyé lors du XXXX en date du " & Date & " à " & " " & Format(Now(), "hh:mm:ss")
    MonMessageS.body = corps
    MonMessageS.send
    Set MonOutlookS = Nothing
End If
If UserForm1.OptionButton2 = True Then
    Set MonOutlookQ = CreateObject("Outlook.Application")
    Set MonMessageQ = MonOutlookQ.createitem(0)
    'MonMessageQ.to = "Mettre adresse email"
    MonMessageQ.Subject = "Qualité"
    corpsQ = "Bonjour,"
    corpsQ = corpsQ & Chr(13) & Chr(10)
    corpsQ = corpsQ & "Remarques : " & UserForm1.TextBox1.Value & Chr(13) & Chr(10)
    corpsQ = corpsQ & Chr(13) & Chr(10)
    corpsQ = corpsQ & "Ce message est envoyé lors du XXXX en date du " & Date & " à " & " " & Format(Now(), "hh:mm:ss")
    MonMessageQ.body = corpsQ
    MonMessageQ.send
    Set MonOutlookQ = Nothing
End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 726
Messages
2 081 955
Membres
101 852
dernier inscrit
dthi16088