pdf Versand per VBA - pdf Dateibenennung?
18.12.2019 14:05:38
Lukas
ich habe eine Datei, in welcher per Schaltfläche (Formularelemente) ein Knopf eingebaut ist, der ein Makro ausführt, zum konvertieren der Datei in pdf und automatischer Erstellung einer Mail mit der pdf Datei als Anhang. Geht alles wunderbar, habe mir die Infos hier im Forum und sonst wo auf Google gesucht, jedoch habe ich Probleme, die pdf Datei automatisch umbenennen zu lassen. Ich füge mal meinen Code ein:
Sub Schaltfläche10_Klicken()
'** Dimensionierung der Variablen
Dim strPDF As String
Dim OutlookApp As Object, strEmail As Object
'** Vorgaben definieren
Set OutlookApp = CreateObject("Outlook.Application")
Set strEmail = OutlookApp.CreateItem(0)
'** PDF erzeugen
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Montagecheckliste, Quality:= _
xlQualityStandard, _
IncludeDocProperties:=False, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
'** E-Mail versenden
strPDF = ThisWorkbook.Path & "\Montagecheckliste.pdf"
With strEmail
.Subject = "Montagecheckliste für Auftrag" 'Betreffzeile
.body = "Guten Tag, anbei die Montagecheckliste für oben genannten Auftrag. Schöne Grüße"
.Attachments.Add strPDF
.Display
'.Send 'Damit wir die E-Mail sofort versendet
Kill strPDF
End With
'** Objektvariablen wieder löschen
Set OutlookApp = Nothing
Set strEmail = Nothing
End Sub
ich bin jetzt so weit gekommen, dass die Datei "Montagecheckliste" heißt, dazu muss man das je an zwei Stellen ändern sonst kommt ein Fehler.Ich hätte nun aber gerne als Zusatz, dass zum "Montagecheckliste" auch noch eine Auftragsnummer - das ist B4 in meiner Mappe - dazugefügt wird. Ich schaffs mit meinen laienhaften VBA Kenntnissen nicht, fand auch bei Google nichts. Vermutlich muss man nur die richtige Anführungszeichen und "und-Zeichen" Kombi eingeben, und dann eben dieser Zusatz: ActiveSheet.Range("B4")
Vielleicht könnt ihr mir helfen wie ich das korrekt umsetze, gerne bei Bedarf auch ein ganz neuer Code.
Besten Dank
lg Lukas