Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1328to1332
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
Datum in Dateinamen
02.09.2013 18:54:27
Kai
Hallo,
Die Archivsuche hat mich leider nicht zum Ziel führen können.
Ich möchte bei einer vorhandenen Datei beim Speichern Datum und Uhrzeit einfügen lassen, so dass sich im Laufe des Tages mehrere Dateien anhäufen.
Habe folgenden VBA-Code:

Public Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
Call .Save
Call .SaveAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls")
End With
End Sub

Wenn ich es als Macro laufen lasse funzt es, aber nicht wenn ich per Tastenkürzel speichere.
Wo liegt der Fehler?
Dank im Voraus.
Kai

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum in Dateinamen
02.09.2013 19:15:21
Hajo_Zi
Hallo Kai,
Du benutzt eine XLSM Datei, da FileFormat:=xlExcel8 angegeben werden.

AW: Datum in Dateinamen
02.09.2013 20:19:59
Kai
Hallo Hajo,
verstehe nicht was du meinst. Die Datei wird, da sie auch noch auf alten Rechnern laufen muss im 2004er-Format abgespeichert.
Wie sollte der Code aussehen?
Gruß
Kai

AW: Datum in Dateinamen
02.09.2013 20:45:45
ing.grohn
Hallo Kai,
versuch mal:

Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
End Sub

funktioniert mit 2003
Mit freundlichen Grüßen
Albrecht

Anzeige
AW: Datum in Dateinamen
02.09.2013 21:57:24
Kai
Hallo Albrecht,
auch dieser Code funzt nur wenn ich ein Macro laufen lasse, aber nicht wenn ich ctrl+sctrl+s bzw. das Speichernsymbol drücke.
Gruß
Kai

AW: Datum in Dateinamen
03.09.2013 19:09:13
ing.grohn
Hallo Kai,
wenn du in DieseArbeitsmappe, Workbook stehen hast:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub

sollte es klappen mit STRG SHIFT S.
Mit freundlichen Grüßen
Albrecht
(zumindest in 2003 tuts)

AW: Datum in Dateinamen
03.09.2013 20:28:17
Kai
Hallo,
beide Antworten sind ja gleich. Und abschmieren tust immer noch.
Also, ich habe unter „TisWorkbook" folgenden Code stehen:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
End Sub

Die Datei wird auch gespeichert, allerdings wird die alte überschrieben und eine neue Datei angelegt. Dabei schmiert Excel immer ab.
Wahrscheinlich sollte der Code so verändert werden, dass die alte Datei erhalten bleibt und nur 1 neue Datei angelegt wird.
Mir ist das jedenfalls schleierhaft.
Gruß
Kai

Anzeige
AW: Datum in Dateinamen
03.09.2013 20:43:20
Kai
Ich habe es jetzt mal so probiert:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveCopyAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
End Sub

Dann klappt's. Problem ist nur, dass der Kunde dann in der alten Datei weiterarbeitet. Jetzt müsste ich ihn dazu zwingen in der neuen weiterzuarbeiten. Dazu müsste ich die alte Datei beim bzw. nach dem Speichern schließen lassen. Da bekomme ich aber immer Laufzeitfehler:
Versuch 1:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveCopyAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
.Close
End With
End Sub

Versuch 2:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
Sub SpeichernMitDatumUndUhrzeit()
With ThisWorkbook
.Save
.SaveCopyAs "Abrechnung_" & Format(Now, "yyyy-mm-dd, hh.mm") & ".xls"
End With
With ThisWorkbook
.Close
End With
End Sub

Lieber wäre mir aber die Version mit dem Speichern unter aktuellerm Zeitstempel mit weiterarbeiten und ohne Absturz.
Gruß.
Kai

Anzeige
AW: Datum in Dateinamen
03.09.2013 20:58:02
ing.grohn
Hallo Kai,
In "DieseArbeitsMappe" steht (nur):

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub

(mit NUR meine ich: es können natürlich noch andere Ereignisse wie Workbook_Activate() etc dort auftauchen. Nicht aber deine Prozedur!)
Die Prozedur: SpeichernMitDaumUndUhrzeit (Sub Spei.... bis ...END Sub) gehört in ein "Allgemeines Modul", z.B.: Modul1:
Falls es noch kein Modul gibt über Menue Einfügen Modul eins hizufügen.
mit freundlichen Grüßen
Albrecht

Anzeige
AW: Datum in Dateinamen
03.09.2013 21:05:03
Kai
Hallo Albrecht,
OK, habe ich angepasst. „SpeichernMitDatum" steht jetzt in „Modul1". Schmiert aber immer noch ab.
Gruß.
Kai

AW: Datum in Dateinamen
04.09.2013 09:02:22
ing.grohn
Hallo Kai,
k.A.
ich hab "nur" 2003 und kann zu höher nicht viel sagen!
Bleibt nur (was hier oft geraten wird): Beispiel hochladen
MfG
Albrecht

AW: Datum in Dateinamen
03.09.2013 01:51:24
KlausF
Hallo Kai,
wenn dein Code wirklich funktioniert dann gehe in das Modul
Diese Arbeitsmappe (bzw. ThisWorkbook bei engl. Version)
und gebe folgendes ein:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SpeichernMitDatumUndUhrzeit
End Sub
Dann sollte es auch mit ctrl funktionieren ...
Gruß
Klaus

Anzeige
AW: Datum in Dateinamen
03.09.2013 15:00:07
Kai
Hallo Klaus,
Excel speichert jetzt auch mit Tastaturkürzel, stürzt dann aber auch jedes Mal ab.
Weißt du Rat?
Gruß
Kai

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige