VBA Datum (dd.mm.yy) aus Zelle umdrehen (yymmdd) und als Name speichern?
Hallo Zusammen
Ich bin ganz neu im VBA und bin etwas am Herumprobieren. Einen Teil habe ich geschafft, aber an einem Punkt hänge ich.
Ich will, dass ein Makro läuft, welches die Datei automatisch unter dem Namen "Kundennummer_Servicedatum" abspeichert. Die Kundennummer und das Servicedatum sind beide im Dokument unter separaten Zellen hinterlegt, die Formel sieht jetzt so aus:
Sub Speichern_unter()
Dim SaveName As String
Dim Datum As Date
SaveName = ActiveSheet.Range("BQ11").Text
Datum = ActiveSheet.Range("BM17")
ActiveWorkbook.SaveAs Filename:="D:\ABC\Service\" & SaveName & "_" & Datum & ".xls"
End Sub
Soweit funktioniert alles, das Dokument heisst z.b. "149_31.10.23"
Das Datum ist als dd.mm.yy in der Zelle, zum Abspeichern brauche ich aber folgendes Format: yymmdd. Ziel ist also der Name "149_231031"
Kann mit jemand helfen, wie ich das Datum umgedreht bekomme? Danke im Voraus :)
3 Antworten
format() ist das Zauberwort.
format("yymmdd", Datum)
Entsprechend in deinem Code als
.... ="D:\ABC\Service\" & SaveName & "_" & format("yymmdd", Datum) & ".xls"
Ich erinnere mich an:
Dim NameMitDatum = Right(ActiveSheet.Range("BM17").Text, 2) & Mid(ActiveSheet.Range("BM17").Text, 4,2) & Left(ActiveSheet.Range("BM17").Text, 2) oder so ähnlich. VBA und Office-Makros werden mittlerweile rigoros von vielen Unternehmen unterbunden.
Variablennamen solltest du immer klein schreiben, ist eine allgemeingültige Konvention.
Du kannst ansonsten die FORMAT Funktion nutzen, um das Datum anders darzustellen
Danke - habe erst heute angefangen, da muss ich noch viel lernen ;)
Danke für die schnelle Antwort
Die Ergänzung funktioniert bei mir nicht...? Es kommt als Dateiname "147_yymmdd" heraus 🤔 Wenn die die " " auslasse, dann kommt nur "147_"
Woran kann das liegen?