Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA pb avec macro d'envoi d'un pdf par email via gmail

  • Initiateur de la discussion Initiateur de la discussion superbog
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

superbog

XLDnaute Occasionnel
Bonsoir,

Voilà j'ai fait une macro pour enregister une feuille sous pdf puis l'envoyer par email via gmail (en webmail) mais ca ne marche pas
pourriez vous m'aider à corriger ma macro, la voici

Code:
Sub email_pdf()

 Dim dossier As String
Dim nomNewClasseur As String
Dim CdoMessage As Object
Dim email As String
Dim Cdo_Message As Object

dossier = Range("A9")
email =Range("E15")
nomNewClasseur = Range("A9") & "-" & Format(Range("F2"), "ddmmyy") & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\\ecap\" & nomNewClasseur, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
  
Set Cdo_Message.Configuration = GetSMTPServerConfig()

    Set CdoMessage = CreateObject("CDO.Message")
    With CdoMessage
        .Subject = "Etat financier de votre dossier"
        .From = "moi@moi.com"
        .To = email
        .cc = ""
        .BCC = ""
        .TextBody = "Vous trouverez ci-joint un état "
        .AddAttachment "C:\Users\recap\" & nomNewClasseur
        .Send
    End With
    
    Set CdoMessage = Nothing


End Sub

Function GetSMTPServerConfig() As Object

Dim Cdo_Config As Object
Dim Cdo_Fields As Object
Dim Cdo_Config As Object

Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "smtp.gmail.com"
.Item(cdoSMTPServerPort) = 465
.Item(cdoSendUserName) = "monadresse"
.Item(cdoSendPassword) = "mon paswword"
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSMTPUseSSL) = True
.Update
End With
Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function
 
End Sub

je précise que je n'ai aucun logiciel de courrier, je n'utilise que gmail en webmail

je vous joins aussi le classeur test, si vous pouviez m'aider, je suis perdue

merci d'avance
 

Pièces jointes

Re : VBA pb avec macro d'envoi d'un pdf par email via gmail

c'est un fichier test, cette erreur ne change rien, la macro ne fonctionne pas

Code:
Sub email_pdf()

 Dim dossier As String
Dim nomNewClasseur As String
Dim CdoMessage As Object
Dim email As String
Dim Cdo_Message As Object

dossier = Range("A9")
email =Range("E15")
nomNewClasseur = Range("A9") & "-" & Format(Range("F2"), "ddmmyy") & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\ecap\" & nomNewClasseur, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
  
Set Cdo_Message.Configuration = GetSMTPServerConfig()

    Set CdoMessage = CreateObject("CDO.Message")
    With CdoMessage
        .Subject = "Etat financier de votre dossier"
        .From = "moi@moi.com"
        .To = email
        .cc = ""
        .BCC = ""
        .TextBody = "Vous trouverez ci-joint un état "
        .AddAttachment "C:\Users\recap\" & nomNewClasseur
        .Send
    End With
    
    Set CdoMessage = Nothing


End Sub

Function GetSMTPServerConfig() As Object

Dim Cdo_Config As Object
Dim Cdo_Fields As Object
Dim Cdo_Config As Object

Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = "smtp.gmail.com"
.Item(cdoSMTPServerPort) = 465
.Item(cdoSendUserName) = "monadresse"
.Item(cdoSendPassword) = "mon paswword"
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSMTPUseSSL) = True
.Update
End With
Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function
 
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Code VBA
Réponses
7
Affichages
868
Réponses
4
Affichages
610
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…