OVH Cloud OVH Cloud

Commande sendmail avec VBA ?

2 réponses
Avatar
lematou
Bonjour à tous,
depuis XLS2000 sous XP pro
je voudrais savoir s'il est possible d'utiliser dans une macro VBA une
commande du style "sendmail ...." pour envoyer des mails à une liste de
destinataires en fonction des résultats ?
merci pour vos réponses qui sont tres enrichissantes pour un débutant comme
moi.
merci et à bientot
Jacks

2 réponses

Avatar
Jacques \(Be\)
Bonjour,

Voici une petite fonction d'envoi de mail (de base).
Tu lui passes en paramètre l'objet et le corps du courriel.


Public Function EnvoiEmail( Objet As String, Corps As String)

Dim MyOutlook As Outlook.Application
Dim MonMail As Outlook.MailItem

Dim db As Database
Dim rs As Recordset
Dim sqlEtat As String


sqlEtat = "Select * FROM Ma_Table"
Set db = CurrentDb
Set rs = db.OpenRecordset(sqlEtat)
rs.MoveFirst

' Ouverture de Outlook
Set MyOutlook = New Outlook.Application


Do While Not rs.EOF

' Création du courriel
Set MonMail = MyOutlook.CreateItem(olMailItem)


' Adresse d'envoi
MonMail.To = rs.Fields("COURRIEL") ' champ contenant l'adresse de
courriel

'Copie Conforme
'MonMail.CC = "" '

'Objet du message
MonMail.Subject = Objet

'Corps du message
MonMail.Body = Corps


MonMail.Send


rs.MoveNext
Loop

'destruction
Set MyMail = Nothing
Set MyOutlook = Nothing

End Function

"lematou" a écrit dans le message de
news:
Bonjour à tous,
depuis XLS2000 sous XP pro
je voudrais savoir s'il est possible d'utiliser dans une macro VBA une
commande du style "sendmail ...." pour envoyer des mails à une liste de
destinataires en fonction des résultats ?
merci pour vos réponses qui sont tres enrichissantes pour un débutant
comme

moi.
merci et à bientot
Jacks


Avatar
lematou

Bonjour,

Voici une petite fonction d'envoi de mail (de base).
Tu lui passes en paramètre l'objet et le corps du courriel.


Public Function EnvoiEmail( Objet As String, Corps As String)

Dim MyOutlook As Outlook.Application
Dim MonMail As Outlook.MailItem

Dim db As Database
Dim rs As Recordset
Dim sqlEtat As String


sqlEtat = "Select * FROM Ma_Table"
Set db = CurrentDb
Set rs = db.OpenRecordset(sqlEtat)
rs.MoveFirst

' Ouverture de Outlook
Set MyOutlook = New Outlook.Application


Do While Not rs.EOF

' Création du courriel
Set MonMail = MyOutlook.CreateItem(olMailItem)


' Adresse d'envoi
MonMail.To = rs.Fields("COURRIEL") ' champ contenant l'adresse de
courriel

'Copie Conforme
'MonMail.CC = "" '

'Objet du message
MonMail.Subject = Objet

'Corps du message
MonMail.Body = Corps


MonMail.Send


rs.MoveNext
Loop

'destruction
Set MyMail = Nothing
Set MyOutlook = Nothing

End Function

"lematou" a écrit dans le message de
news:
Bonjour à tous,
depuis XLS2000 sous XP pro
je voudrais savoir s'il est possible d'utiliser dans une macro VBA une
commande du style "sendmail ...." pour envoyer des mails à une liste de
destinataires en fonction des résultats ?
merci pour vos réponses qui sont tres enrichissantes pour un débutant
comme

moi.
merci et à bientot
Jacks


Bonjour,
cela fonctionne t il également avec notes? ou tout autre type de

messageries du style exchange par exemple ?
merci