Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

letzte Speicherung dokumentieren
#1
Hallo an Alle

ich verwende folgenden Code für die letzte Speicherung.

Private Sub Workbook_BeforeSave _
  (ByVal SaveAsUI As Boolean, Cancel As Boolean)
  Worksheets("Tabelle1").Range("S40").Value = _
    Format(Date, "dd.mm.yyyy")
End Sub


klappt auch super gut. Nun soll aber nicht nur das Datum sondern auch Uhrzeit und Anwendername mit angezeigt werden.
Bekomme das Format nicht geändert.

Kann jemand helfen?

danke im voraus

arcreativity
Vielen Dank den lieben Helfern!   

artcreativity


Merken
Antworten Top
#2
Hallo,

ich habe von VBA nicht viel Ahnung, aber du könntest es mal so probieren:

Code:
Private Sub Workbook_BeforeSave _
  (ByVal SaveAsUI As Boolean, Cancel As Boolean)
  Worksheets("Tabelle1").Range("S40").Value = _
    Format(Now, "DD.MM.YYYY hh:mm") & " " & Application.UserName
End Sub

Wenn das nicht funktioniert müsstest du auf die Experten warten.
Gruß
Peter
Antworten Top
#3
Hallo,
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Worksheets("Tabelle1").Range("S40").Value = _
Format(Now, "dd.mm.yyyy hh:nn, ") & Application.UserName
End Sub
Gruß Uwe
Antworten Top
#4
Moin!
Ergänzend:
Falls Du statt des Excel-Benutzers den Windows-Anmeldenamen möchtest,
dann statt Application.UserName Environ("UserName")

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
Hallo,

und jetzt erklärt einem VBA-Dummie noch warum diese Zeile im code von Uwe

Format(Now, "dd.mm.yyyy hh:nn, ") & Application.UserName

funktioniert.

Ich dachte zuerst das 'nn' wäre ein Tippfehler, aber der Code funktioniert.
Gruß
Peter
Antworten Top
#6
Hi Peter!
Die "richtige" Format-Abkürzung für Minute ist das n.
m funktioniert zwar auch, muss von VBA aber zunächst aus dem Kontext interpretiert werden, weil m eigentlich für month vorgesehen ist.
VBA unterscheidet im Gegensatz zur Excel-Oberfläche NICHT Case-sensitive.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Peter
Antworten Top
#7
Hallo Ralf,

danke für die Info - wieder was gelernt.
Gruß
Peter
Antworten Top
#8
Nochmal genauer:
  • Format(Now,"m") ergibt 8 für August
  • Format(Now,"n") ergibt 37
  • Format(Now,"dd.mm.yy hh:mm") ergibt 28.08.17 10:37

(hier wird dann das zweite m als Bestandteil eines Timestamps interpretiert)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#9
Hallo Peter,

(28.08.2017, 09:28)Peter schrieb: und jetzt erklärt einem VBA-Dummie noch warum diese Zeile im code von Uwe
Format(Now, "dd.mm.yyyy hh:nn, ") & Application.UserName
funktioniert.

m oder mm oder m... steht für Monat.

Schau in der VBA-Hilfe unter Benutzerdefinierte Datums- und Zeitformate (Format-Funktion)

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Peter
Antworten Top
#10
danke
Vielen Dank den lieben Helfern!   

artcreativity


Merken
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste