PDF wird überschrieben

  • Excel

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    PDF wird überschrieben

    Ich habe hier folgendes Makro
    gefunden:



    Private Sub Speichern_Click()

    With
    ThisWorkbook.Worksheets("Rechnung")


    .ExportAsFixedFormat _


    Type:=xlTypePDF, _


    Filename:="S:\Ambulante_AT\TeilnehmerInnen ambulanten AT\Luderwicht\"
    & .Range("F19").Text & " " &
    .Range("F18").Text & ".pdf", _


    Quality:=xlQualityStandard, _


    IncludeDocProperties:=True, _


    IgnorePrintAreas:=False, _


    OpenAfterPublish:=False

    End With

    End Sub



    Das PDF wird auch gespeichert.
    Allerdings überschreibt er immer die Datei. Ich brauche eine Abfrage für den
    Anwender, ob die alte Rechnung überschrieben werden soll, bzw. wenn die Datei
    schon vorhanden ist, das die Rechnungsnummer angepasst werden soll. Ich habe
    schon viel gegoogelt aber nichts gefunden. Und leider reichen meine Kenntnisse
    hier nicht aus.

    Kann mir jemand helfen und dem Marko
    entsprechend anpassen? Währe für Helfe dankbar.



    Gruß Andreas
    Prüfe vorher, ob die Datei schon existiert.
    msdn.microsoft.com/en-us/library/x23stk5t(v=vs.84).aspx

    Wenn du automatisch umbenennen willst, wirfst du eine MsgBox mit OK/Cancel

    Wenn du den Benutzer auswählen lassen willst, kannst du das mittels FileDialog(msoFileDialogSaveAs) bestimmen lassen.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „petaod“ ()

    Ernsthaft? Die Links enthalten doch Beispielcodes.

    Visual Basic-Quellcode

    1. Set FS = CreateObject("Scripting.FileSystemObject")
    2. With ThisWorkbook.Worksheets("Rechnung")
    3. ​FileName="S:\Ambulante_AT\TeilnehmerInnen ambulanten AT\Luderwicht\" & .Range("F19").Value & " " & .Range("F18").Value & ".pdf"
    4. If FS.FileExists(Filename) Then
    5. If MsgBox(Filename & " überschreiben?") <> vbOk Then Filename = Replace(Filename,".pdf",Format(Now,"yyyymmddhhnnss") & ".pdf")
    6. End If
    7. .ExportAsFixedFormat Type:=xlTypePDF, Filename:=Filename
    8. MsgBox "PDF erzeugt: " & Filename
    9. End With
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „petaod“ ()