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
7
Affichages
538
Réponses
2
Affichages
586

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
314 628
Messages
2 111 337
Membres
111 104
dernier inscrit
JEMADA