envois PDF via code VB

zizan

XLDnaute Nouveau
Bonjour,

J'ai créé un code pour sauvegarder une feuille en PDF dans un dossier spécifique, puis l'envoyer via ma boite mail. ce code fonctionne, mais l'application outlook, met automatiquement le compte par défaut, chose que je veux pas. Voici le code:
Sub Enreg_Pdf_Imprimer_Envoyer()
'fonction permettant d'enregistrer au format PDF
Dim Mois As String, Chemin As String, Loc As String
Mois = Format(Now(), "mmmm yyyy")
Chemin = "C:\Users\Quittance de "
Loc = Range("E5").Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Mois & Loc & ".pdf"
Set olApp = CreateObject("Outlook.application")
Set mail = olApp.CreateItem(olMailItem)
With mail
MsgBox "ATTENTION: Avant l'envoi du mail, modifier l'expéditeur"
.To = "xxxxxx@orange.fr"
.Subject = "Quittance " & Mois
.Body = "Bonjour," & vbCrLf & vbCrLf & "Veuillez trouver en piéce jointe votre quittance du mois écoulé" & vbCrLf & vbCrLf & "Cordialement" & vbCrLf & vbCrLf & "xxxxxxxxxxxxxxxx"
.Attachments.Add Chemin & Mois & Loc & ".pdf"
.display True 'affiche le mail prêt à l'envoi, pour vérification
End With
End Sub
 

Sylvain

XLDnaute Occasionnel
Bonsoir,

set .SendUsingAccount = OutApp.Session.Accounts.Item(1)
avant .send ou .display

mettre le bon numéro à la place de 1
Vous pouvez trouver le numéro avec ce code :
Sub Which_Account_Number()
'Don't forget to set a reference to Outlook in the VBA editor
Dim OutApp As Outlook.Application
Dim I As Long

Set OutApp = CreateObject("Outlook.Application")

For I = 1 To OutApp.Session.Accounts.Count
MsgBox OutApp.Session.Accounts.Item(I) & " : This is account number " & I
Next I
End Sub

voir pour plus d'infos : https://www.rondebruin.nl/win/s1/outlook/account.htm
 

Discussions similaires

Réponses
2
Affichages
113

Statistiques des forums

Discussions
312 206
Messages
2 086 202
Membres
103 157
dernier inscrit
youma