Bonjour à tous,

Je tente de faire une macro mais mes connaissances dans le domaine étant quasi nul, j'espère que quelqu'un pourra m'aider sur ce forum.
Le sujet semble avoir été déjà abordé de nombreuses fois sur le forum mais malheureusement je ne trouve pas de réelle solution.
Alors j'ai fait un petit mix de ce que j'ai pu trouver.. j'y suis presque mais manque un truc.

l'ojectif : Formulaire sous word (modèle) dans lequel il faudrait un bouton pour le sauvegarder en PDF et l'envoyer par mail à une adresse précise.
Où ça se corse c'est que je génére un nom de fichier PDF. et je ne sais pas comment l'intégrer en pièce jointe.

mon code actuel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Private Sub CommandButton1_Click()
'
' envoie un mail avec la pièce jointe en PDF
'
Dim ol As Object, monItem As Object
Set ol = CreateObject("outlook.application")
Set monItem = ol.CreateItem(olMailItem)

ChDrive "C:\"
ChDir "C:\Users\toto\Desktop"
ActiveDocument.ExportAsFixedFormat OutputFileName:=CurDir & "\" & "DeclarationIncident_" & Format(Date, "yyyy-mm-dd") & "_" & Format(Time, "hh-mm") & ".pdf", _
        ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
        wdExportOptimizeForPrint, Range:=wdExportAllDocument, Item:= _
        wdExportDocumentContent, IncludeDocProps:=False, KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
        BitmapMissingFonts:=True, UseISO19005_1:=False


monItem.To = "toto@123456.fr"
monItem.Subject = "Déclaration d'incident" & Chr(13) & Date
monItem.Body = "Bonjour" & Chr(13) & Chr(13) & "Veuillez prendre connaissance de la déclaration d'incident en pièce jointe." & Chr(13) & Chr(13) & "Cordialement,"
Set mondoc = monItem.Attachments
mondoc.Add Replace(ActiveDocument.FullName, ".docm", ".pdf")
monItem.Send
Set ol = Nothing
MsgBox "Formulaire envoyé"

End Sub
En rouge est la chaîne que je pense devoir remplacer mais je ne trouve pas par quoi.
Certainement attribuer une variable pour le nom du fichier (dans ActiveDocument.ExportAsFixedFormat)
Et appeler cette variable dans mondoc.Add .
ça doit bien être possible


Un grand merci à la personne qui pourra m'aiguiller.

krtoon