Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Datum und Uhrzeit einfügen

Forumthread: VBA Datum und Uhrzeit einfügen

VBA Datum und Uhrzeit einfügen
06.01.2015 14:08:42
Hans Schneider

Halli Hallo
Ich habe vor ein paar Wochen bereits Hilfestellung zu meinem Problem bekommen und es so gelöst allerdings möchte ich nun noch einen Schritt weiter gehen.
Mit folgendem Code kopiere ich Werte aus dem Worksheet "Template" in das Worksheet "Lager". Der Code sucht sich entsprechend in welche Zeile er den Wert schreiben soll (anhand eines Datenabgleiches und dann jeweils in die letzte Zeile):
Dim wksQ As Worksheet
Dim wksZ As Worksheet
Dim letzte As Long
Dim a As Variant
Set wksQ = Worksheets("Template")
Set wksZ = Worksheets("Lager")
a = Application.Match(wksQ.Range("B13"), wksZ.Rows(2), 0)
If IsNumeric(a) Then
letzte = wksZ.Cells(Rows.Count, a).End(xlUp).Row + 1
wksQ.Range("E15").Copy
wksZ.Cells(letzte, a).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End If
End Sub
Ich möchte nun dass er jeweils in die Zeile daneben das aktuelle Datum und Uhrzeit schreibt.
Beispiel: der Code kopiert den Wert in die Zelle D4, dann möchte ich dass in C4 das Datum und Uhrzeit erscheint von dem Moment des kopierens.
Leider komme ich an dieser Stelle nicht weiter und hoffe auf eure Hilfe.
Kleine Frage am Rande:
Ich habe eine Zelle die ich im moment jeden morgen wieder "nullen" muss. Also den Wert löschen. Wie kann ich VBA abgleichen lassen ob ein neuer Tag begonnen und wenn ja soll er diese eine Zelle auf 0 setzen...
Beste Grüße
Euer Hans

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Datum und Uhrzeit einfügen
06.01.2015 14:23:13
Rudi Maintaire
Hallo,
wksZ.Cells(letzte, a-1)=Now
Gruß
Rudi

AW: VBA Datum und Uhrzeit einfügen
06.01.2015 14:26:26
Klaus M.vdT.
Hi Hans,
ungetestet:
wksZ.Cells(letzte, a).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
wksZ.Cells(letzte, a).Offset(0,-1).value = now
Die Frage am Rande: Lass VBA beim schließen der Datei "date" in eine Zelle schreiben. Beim öffnen überprüfst du diese Zelle auf ungleich HEUTE() und führst anschließend ein Script aus oder nicht.
Grüße,
Klaus M.vdT.

Anzeige
AW: VBA Datum und Uhrzeit einfügen
06.01.2015 14:58:48
Hans Schneider
Hey!
Besten dank die Ergänzung funktioniert einwandfrei und tut genau was sie soll.
Bezüglich der Zelle und des Datums in etwa so? (E1 ist die Zelle die immer "genullt" werden soll)
Private Sub App_WorkbookBeforeClose
Range("A1").Value = date
End Sub

Private Sub Workbook_Open()
If "A1" = now
Else "E1" = 0
End Sub

Ich weiß etwas peinlich meine VBA Kenntnisse... Ich hoffe ihr helft mir trotzdem. Führ meine Generation gehts nicht mehr so leicht mit dem Computer Kram ;)

Anzeige
AW: VBA Datum und Uhrzeit einfügen
06.01.2015 15:03:58
Rudi Maintaire
Hallo,
du solltest auch die Tabelle angeben, sonst wird immer in A1 der aktiven geschrieben.
Private Sub Workbook_BeforeClose
Sheets("Tabelle1").Range("A1").Value = date
End Sub
Private Sub Workbook_Open()
If Sheets("Tabelle1").Range("A1") <> Date Then Sheets("Tabelle1").Range("E1") = 0
End Sub
Gruß
Rudi

Anzeige
man könnte auch einfach
06.01.2015 15:12:00
Rudi Maintaire
Hallo,
Private Sub Workbook_Open()
If date > builtindocumentproperties("last save time") then Sheets("Tabelle1").Range("E1")=0
End Sub
Gruß
Rudi

AW: man könnte auch einfach
06.01.2015 15:24:58
Hans Schneider
Funktioniert einwandfrei und ist ja auch noch etwas eleganter das Anlegen einer "Prüfzelle".
Besten Dank, wirklich eine elegante Lösung!

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

VBA Datum und Uhrzeit in Excel einfügen


Schritt-für-Schritt-Anleitung

Um das aktuelle Datum und die Uhrzeit in eine Excel-Zelle mit VBA einzufügen, kannst du den folgenden Code verwenden. Dieser Code kopiert einen Wert aus einem Worksheet und fügt das aktuelle Datum und die Uhrzeit in die benachbarte Zelle ein:

Dim wksQ As Worksheet
Dim wksZ As Worksheet
Dim letzte As Long
Dim a As Variant

Set wksQ = Worksheets("Template")
Set wksZ = Worksheets("Lager")

a = Application.Match(wksQ.Range("B13"), wksZ.Rows(2), 0)

If IsNumeric(a) Then
    letzte = wksZ.Cells(Rows.Count, a).End(xlUp).Row + 1
    wksQ.Range("E15").Copy
    wksZ.Cells(letzte, a).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
    wksZ.Cells(letzte, a - 1).Value = Now ' Aktuelles Datum und Uhrzeit einfügen
End If

In diesem Beispiel wird der Wert aus E15 in die Zelle der Lager-Tabelle kopiert, und in der benachbarten Zelle wird das aktuelle Datum und die Uhrzeit eingefügt.


Häufige Fehler und Lösungen

  1. Fehler: "Typen unverträglich"

    • Überprüfe, ob die Zielzelle für Datum und Uhrzeit korrekt formatiert ist. Verwende wksZ.Cells(letzte, a - 1).NumberFormat = "dd.mm.yyyy hh:mm" um das Format zu setzen.
  2. Fehler: "Nichts gefunden"

    • Stelle sicher, dass der Suchwert in der Match-Funktion in der entsprechenden Zeile vorhanden ist.

Alternative Methoden

Du kannst auch ein Excel-Makro verwenden, um Datum und Uhrzeit in eine Zelle einzufügen. Hier ist ein einfaches Beispiel:

Sub DatumUhrzeitEinfügen()
    Sheets("Tabelle1").Range("A1").Value = Now ' Aktuelles Datum und Uhrzeit einfügen
End Sub

Dies fügt das aktuelle Datum und die Uhrzeit in Zelle A1 der Tabelle Tabelle1 ein.


Praktische Beispiele

Wenn du die aktuelle Uhrzeit in eine Zelle einfügen möchtest, kannst du den folgenden Code verwenden:

Sub AktuelleUhrzeitEinfügen()
    Sheets("Tabelle1").Range("B1").Value = Time ' Aktuelle Uhrzeit einfügen
End Sub

Für das Einfügen des aktuellen Datums ohne Uhrzeit:

Sub AktuellesDatumEinfügen()
    Sheets("Tabelle1").Range("C1").Value = Date ' Aktuelles Datum einfügen
End Sub

Tipps für Profis

  • Verwende die Funktion Now für das Datum und die Uhrzeit zusammen, während Date nur das Datum und Time nur die Uhrzeit zurückgibt.
  • Setze Application.Volatile in deine Funktion, wenn du sicherstellen möchtest, dass das Datum und die Uhrzeit bei jeder Berechnung aktualisiert werden.
  • Nutze Worksheet_Change-Ereignisse, um automatisch den Zeitstempel in der Zelle zu aktualisieren, wenn sich ein Wert ändert.

FAQ: Häufige Fragen

1. Wie kann ich nur die aktuelle Uhrzeit in eine Zelle einfügen?
Verwende den Befehl Sheets("Tabelle1").Range("A1").Value = Time.

2. Wie setze ich eine Zelle auf Null, wenn ein neuer Tag beginnt?
Du kannst den Code im Workbook_Open-Ereignis verwenden, um das Datum zu überprüfen und die Zelle zurückzusetzen:

Private Sub Workbook_Open()
    If Sheets("Tabelle1").Range("A1") <> Date Then 
        Sheets("Tabelle1").Range("E1").Value = 0
    End If
End Sub

Mit diesen Anleitungen kannst du effektiv das aktuelle Datum und die Uhrzeit in Excel einfügen und deine VBA-Kenntnisse erweitern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige