Bonjour à tous,

j'utilise le code suivant afin d'envoyer un mail a une liste de contact predefini.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Private Sub Command1_Click()
 
Dim arrayRecipient() As MapiRecip
Dim arrayFile() As MapiFile
 
    '-- Liste des destinataires
    ReDim arrayRecipient(0 To 7) As MapiRecip
 
    arrayRecipient(0).Name = "Destinataire1"
    arrayRecipient(0).Address = "Destinataire1@truc.com"
    arrayRecipient(0).RecipClass = mapToList
 
    arrayRecipient(1).Name = "Destinataire2"
    arrayRecipient(1).Address = "Destinataire2@truc.com"
    arrayRecipient(1).RecipClass = mapToList
 
    arrayRecipient(2).Name = "Destinataire3"
    arrayRecipient(2).Address = "Destinataire3@truc.com"
    arrayRecipient(2).RecipClass = mapToList
 
    arrayRecipient(3).Name = "Destinataire4"
    arrayRecipient(3).Address = "Destinataire4@truc.com"
    arrayRecipient(3).RecipClass = mapToList
 
    arrayRecipient(4).Name = "Destinataire5"
    arrayRecipient(4).Address = "Destinataire5@truc.com"
    arrayRecipient(4).RecipClass = mapCcList
 
    arrayRecipient(5).Name = "Destinataire6"
    arrayRecipient(5).Address = "Destinataire6@truc.com"
    arrayRecipient(5).RecipClass = mapCcList
 
    arrayRecipient(6).Name = "Destinataire7"
    arrayRecipient(6).Address = "Destinataire7@truc.com"
    arrayRecipient(6).RecipClass = mapCcList
 
    arrayRecipient(7).Name = "Destinataire8"
    arrayRecipient(7).Address = "Destinataire8@truc.com"
    arrayRecipient(7).RecipClass = mapCcList
 
 
    MAPISession1.SignOn
    'On Error GoTo Erreur
 
    MAPIMessages1.SessionID = MAPISession1.SessionID
    MAPIMessages1.Compose
 
    For i = 0 To UBound(arrayRecipient)
        MAPIMessages1.RecipIndex = i
        MAPIMessages1.RecipType = arrayRecipient(i).RecipClass
        MAPIMessages1.RecipAddress = arrayRecipient(i).Address
    Next
 
     '-- Liste des fichiers attachés
 
    MAPIMessages1.MsgNoteText = MAPIMessages1.MsgNoteText & "  "
    'ReDim arrayFile(0 To 1) As MapiFile
    'arrayFile(0).FileName = "C:\complement"
    'arrayFile(0).Position = Len(MAPIMessages1.MsgNoteText) - 1
    'arrayFile(1).FileName = "C:\imp ecran"
    'arrayFile(1).Position = Len(MAPIMessages1.MsgNoteText)
 
    'For I = 0 To UBound(arrayFile)
    '    MAPIMessages1.AttachmentIndex = MAPIMessages1.AttachmentCount
    '    MAPIMessages1.AttachmentPathName = arrayFile(I).FileName
    '    MAPIMessages1.AttachmentPosition = CLng(arrayFile(I).Position)
    '    MAPIMessages1.AttachmentType = mapData
    'Next
 
    MAPIMessages1.ResolveName
    MAPIMessages1.MsgSubject = "probleme" 
    MAPIMessages1.MsgNoteText = "Bonjour," 
 
    MAPIMessages1.Send True
    MAPISession1.SignOff
 
    Unload Me
   Exit Sub
 
Erreur:
   Select Case Err
    Case mapUserAbort
    Case Else
        MsgBox "Erreur " & Err.Number & " : " & Err.Description, vbExclamation
    End Select
    Err.Clear
    MAPISession1.SignOff
End Sub
jusque la tout va bien.
maintenant je souhaiterai envoyer ce meme mail mais pas a toute la liste de contact. pour cela j'ai creer dans ma form une douzaine de checkbox, et je souhaiterai envoyer le mail seulement au personne que j'ai cocher sur ma form.
comment puis je m'y prendre??
j'ai essayer de mettre un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
If Check1.Value = Checked Then
    arrayRecipient(0).Name = "Destinataire1"
    arrayRecipient(0).Address = "Destinataire1@truc.com"
    arrayRecipient(0).RecipClass = mapToList
End If
mais dans le cas ou je ne coche pas la case cela mais fait une erreur.ça ne m'etonne pas, mais etant donné que je ne maitrise pas du tout les checkbox je ne sais pas comment m'y prendre.

je vous remercie d'avance.