Nur eine Seite als PDF in Email anhängen
19.12.2014 22:14:05
Robert
Hab folgendes Problem:
Ich hab einen Code, mit dem ich meine Exceldatei als PDF speichere, eine Email erstelle und die PDF anhänge.
Leider wird die PDF immer 3 Seiten lang, also alle 3 Tabellenblätter. Ich möchte aber nur eine _ Seite (Tabelle1). Wie muss der Code geändert werden?
Private Sub CommandButton11_Click()
Dim sPathPDF$
Dim objOutlook As Object, objMail As Object
'PDF erstellen
With ThisWorkbook
'Pfad wo die PDF gespeichert werden soll, hier wo die Excel liegt
sPathPDF = IIf(Right$(.Path, 1) = "\", .Path, .Path & "\")
'Pfad + PDF-File-Name, hier wird der Namer der Excel verwendet
sPathPDF = sPathPDF & Left(.Name, InStrRev(.Name, ".")) & "pdf"
'oder so, mit anderen Dateinamen
'sPathPDF = sPathPDF & "Maine PDF Datei.pdf"
'Abfrage ob Datei ersetzt werden soll, bei nein Abbruch
If Dir(sPathPDF, vbNormal) "" Then
If MsgBox("Vorhandene Datei ersetzen?", vbYesNo + vbQuestion) = vbNo Then
Exit Sub
End If
End If
'ges. Datei als PDF speichern ********************************************
.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
sPathPDF, Quality:=xlQualityStandard, _
IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False
' 'nur eine Tabelle als PDF ***********************************************
' Tabelle1.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
' sPathPDF, Quality:=xlQualityStandard, IncludeDocProperties:= _
' False, IgnorePrintAreas:=False, OpenAfterPublish:=False
' 'nur eine bestimmte Seite auf der Tabelle als PDF, hier Seite 1 bis 1 ***
' Tabelle1.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
' sPathPDF, Quality:=xlQualityStandard, IncludeDocProperties:= _
' False, IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=False
End With
'Mail erstellen ************************************
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.To = TextBox1.Value 'An-Empfänger
.CC = TextBox19.Value 'Cc-Empfänger
.BCC = "" 'BCc-Empfänger
.Subject = "Bearbeitete Enticklungskontierung Projekt " & TextBox5.Value 'Betreff
.Body = "Anbei die bearbeitete Entwicklungskontierung" 'Nachricht
.Attachments.Add sPathPDF 'Anlage
.Display 'Mail anzeigen
End With
Set objMail = Nothing
Set objOutlook = Nothing
Application.Wait (Now + TimeValue("0:00:3"))
Application.SendKeys "%k"
End Sub