09.01.2019, 14:24
Hallo
Folgende Ausgangslage; ein Berechnungs-Excel ist auf einem schreibgeschütztem Server gespeichert. Nutzer speichern das Excel neu auf ihren lokalen PC, füllen das aus etc.
Wenn Sie fertig sind, hab ich ein Makro geschrieben, welches über einen Klicken auf ein Bild aus den richtigen Arbeitsblätter ein PDF erstellt. Um das PDf anzuzeigenn, muss dieses jedoch zuerst irgendwo abgespeichert werden. Da die Datei vom schreibgeschützten Server stammt, kann das PDF dort nicht gespeichert werden, das Makro versucht es dort abzuspeichern, obwohl die Datei nun lokal auf dem PC des Nutzers liegt.
Wie kann ich nun den Speicherort für das PDF-File ändern, dass es den Speicherort des neu gespeicherten Excel-File übernimmt?
Hier der Code des Makro:
Sub Druckvorschau_Klicken()
'Druckvorschau_Klicken Makro
Worksheets(Array("Eingabe", "Lastfall A -20°C", "Lastfall B +5°C", "Lastfall C -5°C", "Lastfall D -5°C")).PrintPreview
End Sub
Sub PDF_Klicken()
Application.DefaultFilePath = Application.ActiveWorkbook.path
'Setzt die einzelnen Blätter aktiv
ThisWorkbook.Sheets(Array("Eingabe", "Lastfall A -20°C", "Lastfall B +5°C", "Lastfall C -5°C", "Lastfall D -5°C")).Select
'Erstellt PDF der selektierten Blätter
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, OpenAfterPublish:=True
'Setzt "Eingabe" wieder aktiv
Sheets("Eingabe").Select
End Sub
Wie zu sehen, hab ich es mit dem Application.DefaultFilePath probiert, jedoch erfolglos.
Das eigentliche Problem ist, dass ich keinen fixen Pfad vorgeben kann, das jeder "Dokumente"-Ordner des Nutzers seinen Benutzername beinhaltet.
Folgende Ausgangslage; ein Berechnungs-Excel ist auf einem schreibgeschütztem Server gespeichert. Nutzer speichern das Excel neu auf ihren lokalen PC, füllen das aus etc.
Wenn Sie fertig sind, hab ich ein Makro geschrieben, welches über einen Klicken auf ein Bild aus den richtigen Arbeitsblätter ein PDF erstellt. Um das PDf anzuzeigenn, muss dieses jedoch zuerst irgendwo abgespeichert werden. Da die Datei vom schreibgeschützten Server stammt, kann das PDF dort nicht gespeichert werden, das Makro versucht es dort abzuspeichern, obwohl die Datei nun lokal auf dem PC des Nutzers liegt.
Wie kann ich nun den Speicherort für das PDF-File ändern, dass es den Speicherort des neu gespeicherten Excel-File übernimmt?
Hier der Code des Makro:
Sub Druckvorschau_Klicken()
'Druckvorschau_Klicken Makro
Worksheets(Array("Eingabe", "Lastfall A -20°C", "Lastfall B +5°C", "Lastfall C -5°C", "Lastfall D -5°C")).PrintPreview
End Sub
Sub PDF_Klicken()
Application.DefaultFilePath = Application.ActiveWorkbook.path
'Setzt die einzelnen Blätter aktiv
ThisWorkbook.Sheets(Array("Eingabe", "Lastfall A -20°C", "Lastfall B +5°C", "Lastfall C -5°C", "Lastfall D -5°C")).Select
'Erstellt PDF der selektierten Blätter
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, OpenAfterPublish:=True
'Setzt "Eingabe" wieder aktiv
Sheets("Eingabe").Select
End Sub
Wie zu sehen, hab ich es mit dem Application.DefaultFilePath probiert, jedoch erfolglos.
Das eigentliche Problem ist, dass ich keinen fixen Pfad vorgeben kann, das jeder "Dokumente"-Ordner des Nutzers seinen Benutzername beinhaltet.