Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1448to1452
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

VBA: Dateiname aus Zelle erstellen

VBA: Dateiname aus Zelle erstellen
30.09.2015 21:48:19
Niko
Guten Abend,
ich habe mir in Excel 2010 ein Makro erstellt, das mir den Dateinamen aus einer bestimmten Zelle generiert:
Sub SaveAs()
savedFile = Application.GetSaveAsFilename(InitialFileName:="N:\A\B\C\" & [C1050], fileFilter:=" _
Excel-Arbeitsmappe, *.xlsm")
If savedFile  "Falsch" Then ActiveWorkbook.SaveAs savedFile
End Sub
Das klappt auch sehr gut. Leider funktioniert das Makro mit Excel 2013 überhaupt nicht. Wo ist der Fehler?
Vielen Dank!
Niko

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Warum über GetSaveAsFilename?
01.10.2015 14:12:45
Michael
Hallo Niko!
Hat es einen Grund, warum Du das über GetSaveAsFilename machst? Du kannst Dir den gewünschten Dateinamen ja gleich in einer Variablen zusammenfassen und dann direkt an ThisWorkbook.SaveAs übergeben; dort ist dann auch gleich der Ort um das gewünschte Format anzugeben (.xlsm = Arbeitsmappe mit Makros = Typ 52).
Sub SpeichernAls()
Dim Dname As String
Dname = "N:\A\B\C\" & Worksheets("Tabelle1").Range("C1050").Value
ThisWorkbook.SaveAs Filename:=Dname, FileFormat:=52
End Sub
Tabellenblattname musst Du ggf. anpassen. Was Du mit dem If savedFile "Falsch" bezweckst ist mir nicht klar; da müsstest Du noch genauere Infos geben.
Meine Ausführungen beziehen sich zwar bei mir auf Office 2010, aber ich glaube stark, dass dies in 2013 auch so funktioniert.
LG
Michael

Anzeige
AW: VBA: Dateiname aus Zelle erstellen
01.10.2015 14:23:33
Daniel
Hi
seit Excel 2007 gibt es keinen "Standard"-Excel-Dateityp mehr, welchen die SaveAs-Funktion als Default-Wert einsetzen könnte, sondern vier verschiedene (xlsx, xlsm, xlsb, xls).
daher ist der Parameter FileFormat nicht mehr optional, sondern man muss ihn immer angeben.
If savedFile  "Falsch" Then ActiveWorkbook.SaveAs savedFile, fileformat:=xxx
anstelle xxx bitte den passenden Wert für xlsm-dateien einfügen, den kannst du in der Hilfe nachlesen oder mit Hilfe des Recorders rausfinden, ich kenn den auch nicht auswendig und suchen kannst du selbst..
ausserdem sollte man im Dateinamen die Dateierweiterung weglassen (das ".xlsm" am Ende)
Excel fügt die Dateierweiterung automatisch passend zum gewählten Dateiformat hinzu.
Die Dateierweiterung im Dateinamen hat keinen Einfluss auf den verwendeten Dateityp, dieser wird allein über das FileFormat bestimmt.
Gruß Daniel
Anzeige

369 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige