Générer un pdf et l'envoyer depuis Excel

Bonjour et merci d'avance aux contributeurs !

J'ai un code qui permet de :

1/ créer un fichier pdf suivant une zone d'impression

2/ envoyer depuis Excel cette même plage de cellules (zone d'impression)

3/ joindre le fichier pdf

Sub copier_dans_objet_mail()
Dim sNomFic As String

sNomFic = Range("T2").Value
'    ActiveWindow.ScrollWorkbookTabs Position:=xlLast
    Sheets(Array("PAC")).Select
    Sheets("PAC").Activate
    ChDir "\\ra\prod_qualité$\QRQC (anciennement TNQP)"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "\\ra\prod_qualité$\QRQC (anciennement TNQP)\" & sNomFic & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
ActiveSheet.Range("B2:P42").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True

With ActiveSheet.MailEnvelope
    .Item.To = [u20] & ";" & [u21] & ";" & [u22] & ";" & [u23]
    .Item.CC = "destinataire"
    .Item.Subject = [L5] & " : " & [K12] & " (" & [N12] & ")" & "  défaut : " & [k17]
    .Item.Attachments.Add "\\ra\prod_qualité$\QRQC (anciennement TNQP)\" & sNomFic & ".pdf"
End With

End

En mode pas à pas le code fonctionne. Mais dès que je lance la macro le code s'exécute jusqu'à

.Item.Subject 

Il ne joint pas le fichier ou n'a pas le temps de le joindre... car le fichier XL se ferme et se rouvre tout seul.

Quelqu'un pourrait déceler où il y a une mauvaise écriture de mon code ?

Merci bcp !

Bonjour chree74

Vous devriez pouvoir vous inspirer d'un des codes mis à disposition dans ce fichier en téléchargement
https://www.excel-pratique.com/fr/telechargements/utilitaires/pdf-email-vba-excel-no508

A+

Bonjour BrunoM45,

Merci pour ton aide. J'ai déjà un code qui procède comme le propose le premier bouton. Je garde tout ça sous le coude.

Et comme ça ne répond pas vraiment à mon interrogation je vais attendre une explication sur mon sujet précisément.

Re,

Cela aurait pu vous donner des idées ou process à suivre,
notamment dans la déclaration des variables qui évite les erreurs.

Et éviter d'utiliser ce "vieux" processus de l'enveloppe

Sinon d'après ce que je comprends, il y a une erreur dans une des cellules de

.Item.Subject = [L5] & " : " & [K12] & " (" & [N12] & ")" & "  défaut : " & [k17]

Qui cause la fermeture du classeur

Merci pour votre réponse.

Je ne vois pas où il y a une erreur dans la ligne de code qui du reste s'exécute correctement lorsque je mets un ' sur la ligne

'.Item.Attachments.Add "\\ra\prod_qualité$\QRQC (anciennement TNQP)\" & sNomFic & ".pdf"

Sinon en mode pas à pas (F8) tout mon code se déroule normalement. Manuel auto
!

.

Bonjour,

Avez-vous un message d'erreur, si oui qu'el est-il ?

Qu'est-ce qui ne marche pas exactement ?

A+

Pas de message d'erreur, juste le fichier qui se ferme au moment de joindre le pdf.

Mais si je fais du pas à pas ça fonctionne ! Allez comprendre !

.Item.Attachments.Add "\\ra\prod_qualité$\QRQC (anciennement TNQP)\" & sNomFic & ".pdf"

Quand je bloque cette ligne

ActiveSheet.Range("B2:P42").Select ' la plage de cellules à envoyer

Le code fonctionne. Je pense que la plage sélectionner ne semble pas compatible avec mail excel.

Bonjour,

Vous vous évertuez à vouloir garder ce code, comme déjà dis mieux vaut utiliser un autre code

Maintenant, vous faites comme vous le souhaitez

Rechercher des sujets similaires à "generer pdf envoyer"