PDA

Vollständige Version anzeigen : Mehr als eine Datei als Email-Anhang


moonr
08.07.2015, 07:32
Hallo Community,

ich brauche eure Hilfe.

Und zwar habe ich einen Button, der ein Reporting generiert. D.h. er zieht sich aus der Datenbank gewisse Informationen, wandelt diese in ein PDF um und hängt es als Anhang an eine Mail in Outlook.

Das klappt auch alles wunderbar. Nur möchte ich jetzt gerne aus einem anderen Tabellenblatt auch Daten ziehen und in eine 2. PDF packen und in den Mailanhang stecken.

Leider weiss ich nicht wie ich die zweite PDF generiere und Sie bei der Mail anhängen kann. Kann mir da einer weiterhelfen?

Ich habe mal den Code für das zweite Reporting fett markiert.

Sub Mailbutton()
Dim Nachricht As Object, OutlookApplication As Object
Sheets("Datenbank").Range("K1:K1").Value = "PEP REPORTING / 2015 - KW " & Sheets("Statistiken").Range("I32") & " - Stand " & Sheets("Statistiken").Range("D6") & ", den " & Sheets("Statistiken").Range("D7")
Sheets("Datenbank").Select
Selection.AutoFilter Field:=1, Criteria1:=Sheets("Statistiken").Range("I32").Value
Selection.Sort Key1:=Range("M2"), Order1:=xlDescending, Key2:=Range("C2"), Order2:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Set OutlookApplication = CreateObject("Outlook.Application")
Sheets("Datenbank").Range("A:X").ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\temp\" & "KW" & Sheets("Statistiken").Range("I32") & "_PEP_Reporting", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Sheets("Statistik-Reporting").Range("A1:G37").ExportAsFixedFormat Type:=xlTypePDF, Filename:=varFilename, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Set Nachricht = OutlookApplication.CreateItem(0)
With Nachricht
.GetInspector.Display
olOldBody = .htmlBody
.Subject = "PEP Reporting - KW " & Sheets("Statistiken").Range("I32") & " - Stand " & Sheets("Statistiken").Range("D6") & ", den " & Sheets("Statistiken").Range("D7") 'Betreffzeile
.attachments.Add "C:\temp\" & "\KW" & Sheets("Statistiken").Range("I32") & "_PEP_Reporting.pdf"
.attachments.Add "C:\temp\" & "\KW" & Sheets("Statistiken").Range("I32") & "_PEP_Statistiken.pdf"

.Display
.GetInspector.Display
'.MailSend 'wenn aktiv dann wird Mail direkt versendet
End With
Set OutlookApplication = Nothing
Set Nachricht = Nothing
Sheets("Datenbank").ShowAllData
Sheets("Datenbank").Range("K1").Value = "DATENBANK"
End Sub


Vielen Dank vorab und schöne Grüße

moonr

Beverly
08.07.2015, 07:57
Hi,

an dieser Stelle Filename:=varFilename wird der Dateiname aus der Variablen varFilename verwendet - diese Variable ist leer. Folglich musst du sie vorher entsprechend mit einem Wert (Pfad + Dateiname) belegen.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>