Excel 2010 VBA: Datei Speichern mit Wert aus Zelle ermitteln Pfad-und Dateinamen
Ich versuche, code zu schreiben, sparen Sie mehrere tabs als pdf-Dokument im angegebenen Ordner, indem Dateien in excell. Ich möchte für Zellen innerhalb des Dokuments zu bestimmen, wo diese Datei gespeichert ist. Ich bin nicht sicher, ob dies möglicherweise, wenn es aber jede Hilfe wäre gut! Ich bin derzeit immer ein Run-time error '1004' während des Speichervorgangs meinem code.
Und ja, ich habe die Ordner erstellt, auf die verwiesen werden.
Sub asdf()
Dim Fname As String
Dim Fpath As String
Dim YrMth As String
Fname = Sheets("Sheet1").Range("A1").Text
YrMth = Sheets("Sheet1").Range("A2").Text & "\" & Sheets("Sheet1").Range("A3").Text
Fpath = "C:\Documents and Settings\My Documents\" & YrMth & "\Group\" & Fname & ".pdf"
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet4")).Select
Application.DisplayAlerts = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=Fpath, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dein code funktioniert bei mir, aber nicht mit dem Pfad, den Sie angegeben haben.
Deklarieren Sie eine neue string-variable:
Holen Sie sich den Pfad mit:
und dann ändern Sie Ihre definition für Fpath zu:
Wenn ich das Ende
myDocsPath
zu& "\My foo Documents\"
bekomme ich den gleichen Fehler 1004, die Sie bekommen.Versuchen, ersetzen Sie die Zeile in Ihrem code
mit
Bearbeiten:
Der Kern dieser Lösung ist in der Zeile:
gibt system-Pfad zu Meinen Dokumenten, unabhängig von den lokalen Systemeinstellungen wie Sprache oder nicht dem Standard entsprechenden Speicherort von eigene Dateien " - Ordner. Dann fügt er einen backslash am Ende.
Es ist eleganter (und der code wird immer portable) wenn Sie Fragen, system über spezielle Ordner als fest wie Daten in Ihrem Skript.
Mehr auf Windows-Spezialordner in VBA finden Sie https://www.rondebruin.nl/win/s3/win027.htm