Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1452to1456
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datei temporär speichern, unabhängig vom User

Datei temporär speichern, unabhängig vom User
25.10.2015 09:13:55
Marie
Hallo,
ich nutze VBA, um ein Pdf eines Blattes in Excel zu erstellen, was soweit auch funktioniert.
Mein Problem:
Die ursprüngliche Datei ist in einem Ordner gespeichert, in dem der User keine Speicherrechte hat, so dass ich dort das Pdf nicht temporär speichern kann.
Wie kann ich die Datei temporär auf dem Rechner / Laufwerk des Users speichern und das unabhängig vom User ?
Ideal wäre der Desktop des Users, ansonsten ginge auch ein Temp oder anderer Ordner.
Bisher habe ich folgendes, diesen Pfad scheint aber nicht jeder User zu haben - LValue ist dabei ein Zeitstempel:
Filename:="C:\Users\Public\" & ThisWorkbook.Name & "_" & LValue & ".pdf"

Kann mir jemand weiterhelfen ?
LG,
Marie

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:19:06
Hajo_Zi
Hallo Marie,
Sub DesktopPfad()
' Code für Desktop-Pfad von Kl@us-M. (Clever-Forum.de)
Dim WSHShell As Object
Set WSHShell = CreateObject("wscript.Shell")
strDesktopPath = WSHShell.SpecialFolders.Item("Desktop")
Set WSHShell = Nothing
End Sub

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:24:08
Marie
Hallo Hajo,
vielen Dank !
Wie integriere ich das in meinen Code, d.h. was gebe ich dann als Filename an ?
LG,
Marie

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:26:15
Hajo_Zi
Hallo Marie,
unter Option Explicit
Dim strDesktopPath as String
Im Makro
DesktopPfad
Und der Ordner steht dann auf
strDesktopPath
Gruß Hajo

Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:34:53
Marie
Hallo Hajo,
vielen Dank.
Sorry, ich muss nochmal nachfragen, weil ich bei VBA noch ganz am Anfang bin:
Bis jetzt habe ich einen Button, der folgendes Makro aufruft (mit Deiner Zeile am Anfang) und hier geht es um den Filename - ist der Filename dann einfach nur strDesktopPath ... ?
Option Explicit
Sub PrintPdf()
Dim LValue As String
Dim strDesktopPath as String
LValue = Format(Now(), "yyyymmddhhmmss")
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="C:\Users\Public\" & ThisWorkbook.Name & "_" & LValue & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=False, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
LG,
Marie

Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:37:07
Hajo_Zi
Hallo Marie,
dazu musst Du mich nicht Fragen, sondern den der Dir Dein Code vorgeschlagen hat. Ich war es nicht.
Ja auf strDesktopPath steht der Ordner.
Gruß Hajo

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:45:24
Marie
Hallo,
kann mir jemand anderes hier weiterhelfen ?
LG,
Marie

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:50:06
Hajo_Zi
warum sollte jemand anderes Helfen, wenn Du die gemachten Vorschläge nicht umsetzt. Und Meinst jemand anderes kann es besser und den Vorschlag setzt Du um.
Gruß Hajo

Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 09:55:11
Nepumuk
Hallo,
so:
Option Explicit

Public Sub PrintPdf()
    Dim LValue As String
    Dim strDesktopPath As String
    
    LValue = Format(Now(), "yyyymmddhhmmss")
    strDesktopPath = DesktopPath
    
    ThisWorkbook.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=strDesktopPath & "\" & ThisWorkbook.Name & "_" & LValue & ".pdf", _
        Quality:=xlQualityStandard, IncludeDocProperties:=False, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True
    
End Sub

Private Function DesktopPath() As String
    Dim WSHShell As Object
    Set WSHShell = CreateObject("wscript.Shell")
    DesktopPath = WSHShell.SpecialFolders.Item("Desktop")
    Set WSHShell = Nothing
End Function

Gruß
Nepumuk

Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 10:07:45
Marie
Hallo Nepumuk,
das ist super - vielen Dank dafür. Ist eine riesen Hilfe !
LG und einen schönen Sonntag,
Marie

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 10:09:29
Marie
Leider gibt es hier auch Leute wie Dich, die nur sich selbst oder ihre Webseite profilieren wollen und an echter Hilfe gar kein Interesse haben - damit verschendest Du nur meine Zeit.

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 10:13:56
Hajo_Zi
ich hatte nur 2 Sachen vorgeschlagen und beide wurden nicht realisiert, da Dein Berater gesagt hat mache es so.
Gruß Hajo

AW: Datei temporär speichern, unabhängig vom User
25.10.2015 10:25:32
Luschi
Hallo Marie,
Deine Vorwürfe gegen über Hajo kann ich in diesem Fall nicht nachvollziehen - auch wenn ich sonst mal mit Hajo nicht einer Meinung bin.
Vielleicht solltest Du Dich in Deiner Freizeit mal mehr mit Vba beschäftigen, statt nur auf vorgefertigte Musterlösungen zu warten.
Gruß von Luschi
aus klein-Paris
PS: ich bin mir sicher, daß Du von Nepumuk's Anwort kaum die Bohne verstehst - Hauptsache es klappt!

Anzeige
AW: Datei temporär speichern, unabhängig vom User
25.10.2015 10:22:40
Schneider
Marie,
Mit der folgende Zeile erhälst du dein gewünschtes Ergebnis:
Filename:=Environ("Public") & "\" & ThisWorkbook.Name & "_" & LValue & ".pdf"
Das Systemkommando "Environ" gibt Inhalte von Systemvariablen zurück, z.B.:
Environ("Public") = Pfad des öffentlichen Ordner
Environ("Temp") = Pfad des temporären Verzeichnis
Environ("Usersprofile") = Pfad des persönlichen Ordners des angemeldeten Nutzer
Gruß, Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige