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
118

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote