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

Datumsformat für Dateinamen umstellen

Datumsformat für Dateinamen umstellen
05.09.2014 10:35:01
Frank
Hallo zusammen,
ich habe in meiner Tabelle im Feld D1 ein Datum eingetragen. Das Format dazu ist typischerweis TT.MM.JJJJ
D1 = 28.8.2014
Ich möchte nun per Makro die Datei zwei mal automatisch speichern. Der Speichernamen soll dabei das Datum aus D1 im Format YYYY-MM-DD aufnehmen. In diesem Beispiel lautet er also
2014.08.28_Ratingübersicht.csv
und
2014.08.28_Ratingübersicht.xlsx
Wie bekomme ich das hin? Ich hab für die csv bis jetzt so experimentiert (und das ziemlich erfolglos):

Sub Speichern_als_CSV()
Dim Datei As Date
Datei = Range("A1").NumberFormat = "YYYY-MM-DD"
activeWorkbook.SaveAs Filename:=Datei, FileFormat:=xlCSV
End Sub

Die xlsx hab ich mir lieber noch gar nicht angeschaut.
Und kann ich die Hinweise, die Excel so gerne beim Speichern einer CSV ausspuckt, auch unterbinden?
Gruß
Frank

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datumsformat für Dateinamen umstellen
05.09.2014 10:36:51
Hajo_zi
Hallo Frank,
Datei = Format(Range("A1"), "YYYY-MM-DD")

AW: Datumsformat für Dateinamen umstellen
05.09.2014 11:05:12
Frank
Halo Hajo,
das klappt leider nicht. Ich habe jetzt folgendes Makro

Sub Speichern_als_CSV()
Datei As Date
Datei = Format(Range("A1"), "YYYY-MM-DD")
ActiveWorkbook.SaveAs Filename:=Datei, FileFormat:=xlCSV
End Sub

Excel sagt mir Fehler beim Kompilieren. Anweisung außerhalb eines Typen-Blocks ungültig.

AW: Datumsformat für Dateinamen umstellen
05.09.2014 11:09:58
Hajo_zi
ich vermute Datei enthält das was Du wolltest. Ich hätte ja auch einen Ordner angegeben. Sollte nach dem Datum nicht noch was stehen?
Du Solltest Datei auch als String definieren.
Gruß Hajo

Anzeige
AW: Datumsformat für Dateinamen umstellen
05.09.2014 11:37:31
Frank
Läuft leider immer noch nicht.
1. Den Zusatz "_Ratingübersicht" konnte ich einbauen, das klappt auch.
2. Ein Ordner ist ja eigentlich nicht nötig, VBA nimmt den gleichen Ordner, aus dem in die Datei geöffnet habe. Wäre aber schon schöner/ besser, wenn ich einen Ordner angeben könnte. Hin und wieder hauen unsere Server etwas quer ;-)
Kannst Du mir da helfen?
3. Ich habe mit MsgBox mal die Variable "Datei" abgerufen. Excel gibt mir im Typ String "Falsch" heraus. Bei "Date" 00:00:00 und bei "Integer" 0. Der grundsätzliche Ablauf klappt, nur heißt meine Datei halt Falsch_Ratingübersicht.csv.
Was mach ich falsch?
Gruß
Frank

Anzeige
AW: Datumsformat für Dateinamen umstellen
05.09.2014 11:40:56
Hajo_zi
ich sehe den geänderten Code nicht. Du hast meinen Beitrag komplett gelesen?
Gruß Hajo

AW: Datumsformat für Dateinamen umstellen
05.09.2014 12:29:27
Frank
Hallo Hajo,
hier der neue Code

Sub Speichern_als_CSV()
Dim Datei As String
Datei = Range("A1").NumberFormat = "YYYY-MM-DD"
'MsgBox Datei
ActiveWorkbook.SaveAs Filename:=Datei & "_Ratingübersicht", FileFormat:=xlCSV
End Sub


Gruß
Frank

AW: Datumsformat für Dateinamen umstellen
05.09.2014 12:17:34
Rudi
Hallo,
2 Fehler.
1. fehlt Dim.
2. ergibt Format(...) einen String.
ergo:
Dim Datei as string
Gruß
Rudi

Anzeige
AW: Datumsformat für Dateinamen umstellen
05.09.2014 12:28:34
Frank
Hallo Rudi,
Dim Datei as String und Dim Datei as Date klappen leider beide nicht.
Gruß
Frank

was klappt nicht? owT
05.09.2014 13:09:12
Rudi

AW: was klappt nicht? owT
05.09.2014 13:50:58
Frank
Hallo Rudi,
ich hatte das bei Hajo auch schon probiert. Ich bekomme dann folgende Ergebnisse für "Datei", wenn ich die MsgBox anwerfe:
Ich habe mit MsgBox mal die Variable "Datei" abgerufen. Excel gibt mir im Typ String "Falsch"
heraus. Bei "Date" 00:00:00 und bei "Integer" 0. Der grundsätzliche Ablauf klappt, nur heißt meine
Datei halt Falsch_Ratingübersicht.csv.

Gruß
Frank

dann kein Datum in A1!!! owT
05.09.2014 13:54:37
Rudi

AW: dann kein Datum in A1!!! owT
05.09.2014 14:10:39
Frank
Mehr Datum geht nicht. Ich habe das Feld sogar mit der Funktion =Datum(2014;8;29) beschossen. Klappt einfach nicht.

Anzeige
AW: dann kein Datum in A1!!! owT
08.09.2014 10:45:10
Udo
Hai,
kann es sein, dass es einfach nur:
Datei = Format(Range("D1"), "YYYY-MM-DD")
heißen muss ?
Gruß
Udo

AW: dann kein Datum in A1!!! owT
08.09.2014 11:31:13
Frank
Hallo Udo,
hallo auch an die anderen, die mir so super weiter geholfen haben.
Ich habe jetzt mit Euren Ideen und mit ein bischen Literatur folgende Lösung erstellt. Und sie läuft sauber durch.

Sub Speichern_als()
Dim Datei As String
'*** Datum für Dateinamen aus D1 aufnehmen und umformatieren ***
Datei = Format(Range("D1"), "YYYY-MM-DD")
'*** Dialog zum Dateipfad öffnen ***
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = "J:\Eigene Dateien\1. Depot A\Ratings" & " \ """
.Title = "Wählen Sie bitte einen Speicherort für die Sicherung aus"
.Show
If .SelectedItems.Count = 0 Then
MsgBox "Abgebrochen"
Else
Pfad = .SelectedItems(1)
MsgBox Pfad
End If
End With
'*** Verzeichnis zum Speichern anpassen ***
ChDir Pfad
'*** Bildschirmdialoge ausschalten ***
Application.DisplayAlerts = False
'*** Dateien speichern ***
ActiveWorkbook.SaveAs Filename:=Datei & "_Ratingübersicht", FileFormat:=xlCSV 'als CSV  _
speichern
ActiveWorkbook.SaveAs Filename:=Datei & "_Ratingübersicht", FileFormat:=xlWorkbookDefault ' _
als XLSX speichern
'*** Bildschirmdialoge einschalten ***
Application.DisplayAlerts = True
End Sub

Gruß
Frank
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige