Clever-Excel-Forum

Normale Version: PDF wird am falschen Ort gespeichter
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hey,
ich habe ein kleines Problem mit dem Abspeichern von einer .pdf. Also aktuell ist der Stand wie folgt


Code 1 - Ornder öffnen (funktioniert)
Code:
Sub VDE006UmbauReparatur_Schaltfläche6_Klicken()
Dim Pfad As String
Dim x As Variant
Pfad = Range("O2").Text
x = Shell("Explorer.exe /n,/e," & Pfad & "\", vbNormalFocus)
End Sub


O2 ist die Zelle mit dem Pfad



Code 2 - Abspeichern von .pdf  - funktioniert nicht 
Code:
Sub aktivesBlattToPdf()
Dim Pfad As String
Dim x As Variant
Pfad = Range("O6")
x = Shell("Explorer.exe /n,/e," & Pfad & "\", vbNormalFocus)
ChDir Pfad
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Range("E2").Value & Format(Date, "YYYYMMDD") & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub


Wenn ich diesen ausführe, speichert er mir die PDF unter Dokumente ab ...statt unter den gewünschten Pfad. Der Ordner lässt sich öffnen aber abspeichern will er net :(


Habt ihr eine Ideeee? 

Grüße
Hallo,

im ersten Code verweist der Pfad auf O2 und im zweiten auf O6 - macht das Sinn?
ne macht keinen Sinn aber das war nur ein Übertragungsfehler. in diesem Fall  ist O2 und O6 gleich
Hallo, 19

na ja, du redest immer von "O" im Code steht aber "E": 21


Code:
Range("E2").Value & Format(Date, "YYYYMMDD") & ".pdf", Quality:=xlQualityStandard, _
E is ur für die Namensgebung zuständig 
also Zelleninhalt von E2 plus aktuelles Datum . pdf
Hallo, 19

was steht denn in O2 drin?

ChDir ändert nur den Ordner nicht das Laufwerk. Dazu muss noch ein ChDrive. Wenn nötig.

Warum schreibst du den Pfad nicht beim speichern mit rein?

Code:
Range("O6") & "\" & Range("E2").Value & Format(Date, "YYYYMMDD") & ".pdf", Quality:=xlQualityStandard, _

Den Backslash natürlich nur, wenn er in O2 nicht schon am Ende drinsteht.

Dann brauchst du auch kein ChDir.
Hallo Rufovic,

der nachstehende Code ist einer aus meinen Tabellen. Dieser macht einen Screenshot und speichert den dann da hin wo ich ihn hinhaben möchte ;)
Inhalt von C1 ist dann der Dateiname.
Vllt hilft Dir das ein bissl weiter...
Code:
Option Explicit

Sub TabelleExportierenAlsBild()
    Application.ScreenUpdating = False
    ActiveSheet.Range("A1:T35").CopyPicture Appearance:=xlScreen, Format:=xlPicture
    With ActiveSheet.ChartObjects.Add(0, 0, Range("A1:T35").Width, Range("A1:T35").Height).Chart
        .Parent.Activate
        .Paste
        .Export "Y:\Pschl_Kalkulator\" & ActiveSheet.Range("C1").Value & ".png"
        .Parent.Delete
    End With
    Application.ScreenUpdating = True
End Sub
erstellt wurde der Code im übrigen durch die Mithilfe vom CEF!!! Blush
Hey,
danke euch allen. CHDrive hat funktioniert  15
Die ganze Code is überflüssig.
Du brauchst nur:
Code:
Sub M_snb()
   ActiveSheet.ExportAsFixedFormat 0, "G:\OF\" & [E2] & Format(Date, "YYYYMMDD") & ".pdf"
End Sub
Wenn Range("D2") das Pfad enthält:
Code:
Sub M_snb()
   ActiveSheet.ExportAsFixedFormat 0, [D2] & [E2] & Format(Date, "YYYYMMDD") & ".pdf"
End Sub
oder
Code:
Sub M_snb()
   ActiveSheet.ExportAsFixedFormat 0, [D2] & [E2] & Format(Date, "YYYYMMDD.p\df")
End Sub