Fonction if

Fermé
cox188026 Messages postés 14 Date d'inscription samedi 3 décembre 2016 Statut Membre Dernière intervention 21 juin 2017 - 9 déc. 2016 à 12:44
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 9 déc. 2016 à 16:18
Bonjour,

en fonction de la lettre qui se trouve dans la case C9 (optionButton) d'un tableau, je voudrait envoyer une mail a la personne A ou B...
malheureusement j'ai un message d'erreur de compilation: "déclaration existante dans la portée en cours"

If [C9] = OptionButton1.Caption Then
'envoi automatique de mail
Dim Destinataires(3) As String, Sujet As String
Dim AccuseReception As Boolean
'Modifier les mails des destinataires
Destinataires(1) = ""
Destinataires(2) = "personne A@gmail.com"
Destinataires(3) = ""
Sujet = "mail pour la personne A"
AccuseReception = True
'Nom de la feuille
ThisWorkbook.Sheets("aperçu avant impression").Copy
ActiveWorkbook.SendMail Destinataires, Sujet, AccuseReception
ActiveWorkbook.Close False
End If

If [C9] = OptionButton3.Caption Then
'envoi automatique de mail
Dim Destinataires(3) As String, Sujet As String
Dim AccuseReception As Boolean
'Modifier les mails des destinataires
Destinataires(1) = ""
Destinataires(2) = "personneB@gmail.com"
Destinataires(3) = ""
Sujet = "mail pour la personne B"
AccuseReception = True
'Nom de la feuille
ThisWorkbook.Sheets("aperçu avant impression").Copy
ActiveWorkbook.SendMail Destinataires, Sujet, AccuseReception
ActiveWorkbook.Close False
End If


merci

A voir également:

1 réponse

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
9 déc. 2016 à 16:18
Bonjour,

Normal vous declarez deux fois vos variables

Sub test()
    Dim Destinataires(3) As String, Sujet As String
    Dim AccuseReception As Boolean
    
    If [C9] = OptionButton1.Caption Then
        'Modifier les mails des destinataires
        Destinataires(1) = ""
        Destinataires(2) = "personne A@gmail.com"
        Destinataires(3) = ""
        Sujet = "mail pour la personne A"
        AccuseReception = True
    ElseIf [C9] = OptionButton3.Caption Then
        'envoi automatique de mail
        'Modifier les mails des destinataires
        Destinataires(1) = ""
        Destinataires(2) = "personneB@gmail.com"
        Destinataires(3) = ""
        Sujet = "mail pour la personne B"
        AccuseReception = True
    Else
    End If
    If AccuseReception = True Then
        'envoi automatique de mail
        'Nom de la feuille
        ThisWorkbook.Sheets("aperçu avant impression").Copy
        ActiveWorkbook.SendMail Destinataires, Sujet, AccuseReception
        ActiveWorkbook.Close False
    End If
End Sub
0