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
| Public Sub SendMail(Compte As String)
'envoi du mail
Dim strTemp As String
Dim Liste As Variant
Dim iPnt As Integer
'raz des elements du mail dans le composant
SmtpCli1.InitMail
'Initialisation de JnlDirectory
SmtpCli1.JnlDirectory = App.Path & "\EML"
'niveau de priorité
SmtpCli1.Priority = Normal
'sujet du mail
SmtpCli1.Subject = "Fichier de " & Format(Date, "MM/YYYY")
'message (peut être au format HTML)
SmtpCli1.Message = lire_corps("Echelles")
'chargement de la liste des destinataires
Dim rec As Recordset
Set rec = New ADODB.Recordset
rec.Open "select mailcli from abonne where comptecli='" & Compte & "'", Cnech, adOpenForwardOnly, adLockReadOnly
If rec.EOF = True Then
strLog = Now & " : Envoi des avis du compte " & Compte & ": Echec : Adresse d'envoi inexistante"
Call fPrintInLogFile(strLog)
Exit Sub
Else
'ajout d'un destinataire
'la methode add utilise deux parametres
' SmtpCli1.Receipts.Add NomDestinataireEnClair, AdresseEmail
SmtpCli1.Receipts.Add " ", GetTok(rec!mailcli, 1, ";")
'chargement de la liste des destinataires de copie conforme
If GetTok(rec!mailcli, 2, ";") <> "" Then
SmtpCli1.CCReceipts.Add " ", GetTok(rec!mailcli, 2, ";")
'chargement de la liste des destinataires de copie conforme aveugle
If GetTok(rec!mailcli, 3, ";") <> "" Then
SmtpCli1.BCCReceipts.Add " ", GetTok(rec!mailcli, 3, ";")
End If
End If
'ajout des pieces jointes
Dim aResultat() As String
Dim lRet As Long
Dim i As Long
lRet = GetFilesPathFromDirectory(strSendDir, aResultat())
If lRet <> -1 Then
For i = 0 To lRet
'Debug.Print "Fichier " & i + 1 & " = " & aResultat(i)
SmtpCli1.Attachments.Add aResultat(i)
Next i
End If
'Envoi du Mail
If SmtpCli1.SendMail Then
strLog = Now & " : Envoi avis du compte " & Space(8) & Compte & " Destinataires : " & rec!mailcli & " succès "
Call fPrintInLogFile(strLog)
Else
strLog = Now & " : Echec lors de l'envoi des avis du compte " & Space(8) & comptecli & " à : " & adr!mailcli & " succès "
Call fPrintInLogFile(strLog)
End If
End If
End Sub |
Partager