Soweit bin ich auch mit Hilfe dieses Forums gekommen.
Ich habe mehrere versuche bereits durch einen Zähler mit ein zu geben aber Vergeblich.
Wenn die Datei ABC heißt und dieser Name nochmal kommt, da etwas wiederholt worden ist soll diese Datei aber nicht überschrieben werden sondern erhalten bleiben. Es soll automatisch geprüft werden und wenn die Datei bereits existiert soll es wie folgt gelöst werden
ABC_1, Abc_2 usw.
Ich hoffe, dass es da eine Lösung gibt.
Ich bedanke mich jetzt schon für die Mühen.
Lieben Gruß
F.Saul
Sub PDF()
'
' PDF Makro
'
Call MsgBox("abc.",_
vbExclamation)
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_ROO
Call .Show
If .SelectedItems.Count > 0 Then
If 0 <> StrComp(Left$(.SelectedItems(1), Len(C_ROOT)), C_ROOT, vbTextCompare) Then
Call MsgBox("Abc.",_
VbExclamation)
Exit Sub
End If
strFilename = .SelectedItems(1) & "\"
If Trim$(wks.Range("B4")) = "" Then
Call MsgBox("In '" & wks.Name & "!B4' wurde kein Dateiname festgelegt.", _
vbExclamation)
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
|