Ich versuche, ein Makro zu schreiben, die eine Registerkarte in eine neue Datei exportieren wird dann speichern Sie einen benutzerdefinierten Dateinamen und Dateipfad basierend auf 2 Zellenwerte. Ich bekomme immer einen Laufzeitfehler während des Speicherbereichs. Ich habe versucht, die Antworten zu ähnlichen Themen hier zu verwenden, aber der Noob zu sein, der ich bin, kann nicht scheinen, sie dazu zu bringen, für mein Problem zu arbeiten. All die Hilfe, die ich bekommen kann, wird wirklich geschätzt werden.VBA zum Speichern Excel-Registerkarte auf neue Datei Laufzeitfehler 1004
Hier ist der Code, den ich bisher habe:
Sub Export()
Sheets("Form").Select
Sheets("Form").Copy
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Dim fname As String
fname = Range("C1")
Dim fpath As String
fpath = Range ("G1")
ActiveWorkbook.SaveAs Filename:=fpath & fname & ".xls"
Windows("Form.xlsm").Activate
End Sub
Wird der Wert von fpath mit einem umgekehrten Schrägstrich enden? wenn nicht, sollte es. – braX
ja es tut. habe es auch versucht, ohne dabei die saveas-Syntax zu ändern: ActiveWorkbook.SaveAs Dateiname: = fpath & "\" & fname. Zusätzliche Information würde sein, dass der Fehler zeigt, dass Excel nicht auf die Datei zugreifen kann, dann den fpath-Wert, den fname-Wert, dann einen Backslash mit Buchstaben und Zahlen gibt. dh C: users \ me \ downloads \ formexport \ 0CBC123 wobei 0CBC123 diejenige ist, die nicht Teil des Namens sein sollte – jptirona
Ändern Sie 'ActiveWorkbook.SaveAs Dateiname: = fpath & fname &" .xls "' in 'ActiveWorkbook.SaveAs Dateiname : = fpath & fname & ".xls", FileFormat: = 56' –