Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Envoie d-email avec pièce jointe

Aucune réponse
Avatar
DylanJc
Bonjour,

Je suis débutant sur Access VBA mais je souhaiterais pouvoir émettre des e-mails avec pièces jointes.

Le code que j'ai actuellement me permet juste d'envoyer un email simple aux destinataires qui sont dans une table. Mais moi j'aimerais en plus de sélectionner les champs "Objet", "Date", etc, de sélectionné le champ "Pièce jointe". Quelqu'un pourrait m'aider s'il vous plaît :

Private Sub Commande219_Click()


'Déclaration des variable
Dim rst As DAO.Recordset
Dim StrSQL As String
Dim strMessageType As String
Dim strTitre As String
Dim strMsg As String
Dim strJst As





' Titre du message
strTitre = "e;{Objet} -- Résolu"e; _

' Message type à expédier
' Les signes {...} seront remplacés plus loin par
' les infos Client
strMessageType = "e;Bonjour,"e; _
& vbCrLf & vbCrLf _
& "e;En date du {Date}, Nous avons reçu du client {Nom_Client} la réclamation en objet."e; & vbCrLf & vbCrLf _
& "e;Nous vous écrivons pour vous informer que cela a été pris en compte et désormais clôt."e; & vbCrLf _
& vbCrLf & "e;Nous vous souhaitons une bonne réception"e; _
& vbCrLf & vbCrLf & "e;~~ Service de Réclamations - UGB ~~"e;

' Ouverture de la requête
' (seuls les gestionnaire ayant un email sont concernés ici)
StrSQL = "e; SELECT * FROM [Reclamations] WHERE (((Reclamations.Etat)='Clôturée')) "e; _

Set rst = CurrentDb.OpenRecordset(StrSQL, dbOpenSnapshot)

' Parcourir la liste des clients
While Not rst.EOF
' Construire un message personnalisé
' (on remplace chaque {...} du message par les champs
' équivalents de la requête
strMsg = Replace(strMessageType, "e;{Nom_Client}"e;, rst("e;Nom_Client"e;))
strMsg = Replace(strMsg, "e;{Date}"e;, rst("e;Date"e;))
strTitre = Replace(strTitre, "e;{Objet}"e;, rst("e;Objet"e;))
strJst = Replace(strJst, "e;{Justificatif}"e;, rst("e;Justificatif"e;))

'strMessageType.Attachments.Add Reclamations("e;Justificatif"e;)



' Expédier le mail
SendMail rst("e;E-mail_gest"e;), strTitre, strMsg, True

' Client suivant
rst.MoveNext
Wend

' On libère les ressources
rst.Close
Set rst = Nothing


CurrentDb.Execute ("e;UPDATE Reclamations SET Reclamations.Etat = 'Archivée' WHERE (((Reclamations.Etat) = 'Clôturée')) "e;)

' Un petit message de confirmation
MsgBox "e;Un e-mail a été envoyé chez le gestionnaire!"e;, vbInformation, "e;UGB -- Service de Réclamations"e;
End Sub

Réponses