Option
Explicit
Sub
PDF()
Const
C_ROOT = "C:\Users\Benutzer\Desktop\Ergebnisse\"
On
Error
GoTo
ErrHandler
Dim
wks
As
Excel.Worksheet
Dim
strFilename
As
String
Dim
vntVisiblePrev
As
Variant
Set
wks = Worksheets(
"Auswertung PDF"
)
With
Application.FileDialog(msoFileDialogFolderPicker)
.Title =
"Speicherort für PDF-Datei auswählen ..."
.InitialView = msoFileDialogViewList
.InitialFileName = C_ROOT
Call
.Show
If
.SelectedItems.Count > 0
Then
If
0 <> StrComp(Left$(.SelectedItems(1), Len(C_ROOT)), C_ROOT, vbTextCompare)
Then
Stop
Exit
Sub
End
If
strFilename = .SelectedItems(1) & "\"
If
Trim$(wks.Range(
"B5"
)) =
""
Then
Call
MsgBox(
"In '"
& wks.Name &
"!B5' wurde kein Dateiname festgelegt."
, _
vbExclamation)
Exit
Sub
End
If
strFilename = strFilename & Trim$(wks.Range(
"B5"
).Text) &
".pdf"
vntVisiblePrev = wks.Visible
wks.Visible = xlSheetVisible
Call
wks.ExportAsFixedFormat( _
Type:=xlTypePDF, _
Filename:=strFilename, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=
True
, _
IgnorePrintAreas:=
False
, _
OpenAfterPublish:=
True
)
wks.Visible = vntVisiblePrev
End
If
End
With
Exit
Sub
ErrHandler:
Call
MsgBox(Err.Description, vbCritical,
"Fehler "
& Err.Number)
End
Sub