Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Dateinamen per Makro beim speichern vorgeben | Herbers Excel-Forum


Betrifft: Dateinamen per Makro beim speichern vorgeben von: Thomas
Geschrieben am: 26.01.2010 08:04:44

Hallo Forum,

ich möchte beim speichern einer Excelmappe den Typ (xlsm) und ebenfalls den Dateinamen schon vorgeben. Das ist mir auch einigermassen gelungen, aber ich bin mit dem Endergebnis noch nicht so zufrieden.
Der Dateiname soll sich zusammensetzen aus "KL" + Leerzeichen + aktueller Monat [hier ist das Problem] und einer laufenden 4 stelligen Nummer. Der Monat soll dabei aber 2 Stellen haben, also bis einschliesslich September muss eine 0 davor [ z.B. 02 (Februar);09 (September)] und ab Oktober soll nur der Monat geschrieben werden, da der ja ohnehin 2stellig ist. Wie kann ich das ändern (siehe mein Makro)

Private Sub CommandButton1_Click()
Dim strVerzeichnis As String
Dim strDateiname As String
strVerzeichnis = "\\sv42159bub9005\buck\Daten\Projekte\"
strDateiname = Application.GetSaveAsFilename(InitialFileName:=strVerzeichnis & _
"KL" & " " & Right(Year(Date), 2) & "." & Month(Date) & "xxxx" & ".xlsm", _
FileFilter:="Microsoft Excel-Arbeitsmappe mit Makros (*.xlsm), *.xlsm")
Select Case strDateiname
Case False
Exit Sub
Case Else
ThisWorkbook.SaveAs Filename:=strDateiname, FileFormat:=xlOpenXMLWorkbookMacroEnabled

End Select
End Sub
Zusätzlich möchte ich, dass die laufende Nummer aus einem anderen Excelblatt (liegt im Netzwerk auf einem anderen Server) abgefragt wird. Es soll einfach der letzte Eintrag in Spalte B (Tabelle1) ausgelesen und + 1 addiert werden. Das Makro müsste also abfragen, in welcher Zeile sich der letzte Eintrag in Spalte B befindet und einfach 1 dazuaddieren.

Gesamt soll das dann den Dateinamen bilden. Bsp: KL 10.01.2348.xlsm (Jahr.Monat.4stellige_laufende_Nr.xlsm)

Wer kann mir behilflich sein?

Vielen Dank.

Gruß Thomas

  

Betrifft: AW: Dateinamen per Makro beim speichern vorgeben von: Hajo_Zi
Geschrieben am: 26.01.2010 08:09:15

Hallo Tomas,

"KL" & " " & Format(Date, "yy") & "." & Format(Date,"mm") & "xxxx" & ".xlsm"

GrußformelHomepage


  

Betrifft: AW: Dateinamen per Makro beim speichern vorgeben von: Thomas
Geschrieben am: 26.01.2010 08:35:34

danke hajo,

habe auch schon mit Format herumexperimentiert, mein Fehler war, dass ich das Jahr YY nicht in Anführungszeichen geschrieben hatte.

Hat jemand eine Lösung zum zweiten Teil des Problems, dem auslesen des letzten Eintrages der Spalte B von Tabelle1 einer anderen Exceldatei??

Danke für die Hilfe

Thomas


  

Betrifft: AW: Dateinamen per Makro beim speichern vorgeben von: Hajo_Zi
Geschrieben am: 26.01.2010 08:38:54

Hallo Thomas,

die Letzte Zelle einer Spalte
LoLetzte = IIf(IsEmpty(Cells(Rows.Count, 2)), Cells(Rows.Count, 2).End(xlUp).Row, Rows.Count)
und dann ist es ja nur Cells(loletzte,2) oder Range("B"& loletzte)

Gruß Hajo


Beiträge aus den Excel-Beispielen zum Thema "Dateinamen per Makro beim speichern vorgeben"