Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: mit vba die =heute() Funktion in Zelle eintragen

mit vba die =heute() Funktion in Zelle eintragen
09.08.2019 11:35:47
Felix
Hallo zusammen,
Ich habe ein kleines Problem bei dem ich mal wieder eure Hilfe brauche.
Ich habe eine Tabelle in der ich meine Warenbewegungen verwalte. Wenn ein Produkt in die Liste eingeht dann lege ich in einer Spalte ein Eingangsdatum an. Dies mache ich über der Befehl Date. Dieser Wert ist dann fix. Außerdem möchte ich in eine weitere Zeile immer den aktuellen Tag eintragen. Damit ich quasi berechnen kann wie lange die Ware schon im Lager liegt. Wenn das Teil dann ich die Produktion geht möchte ich das sch anpassende Datum dann wieder überschreiben mit einem fixen Datum also mit Date.
Meine Frage ist nun wie bekomme ich so etwas wie =heute() in die Zelle meiner Tabelle kopiert, sodass die Funktion auch erhalten bleibt.
Mein Versuch sieht so aus:
If ActiveCell.Value = YourValue Then
Cells(ActiveCell.Row, 13).Select
ActiveCell = "=heute()"
Da bekomme ich aber ein 'NAME? in meiner Zielzelle.
Git es Vorschläge ?
Grüße Felix
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit vba die =heute() Funktion in Zelle eintragen
09.08.2019 11:44:44
Torsten
Hallo,
so:
ActiveCell.FormulaLocal = "=heute()"
Gruss Torsten
AW: mit vba die =heute() Funktion in Zelle eintragen
09.08.2019 11:46:59
Torsten
Erstmal musst du dem Code sagen, dass es sich um eine Formel handelt. 2. ist alles in VBA englisch. Da du hier aber deutsches Excel hast und die Formel deutsch eingetragen werden muss, das Formula.Local
AW: mit vba die =heute() Funktion in Zelle eintragen
09.08.2019 11:49:23
Felix
Super, vielen Dank. Wieder etwas gelernt
Anzeige
AW: mit vba die =heute() Funktion in Zelle eintragen
09.08.2019 13:23:05
Daniel
Hi
wie die kollegen schon schrieben:
entweder musst du VBA mitteilen, dass die Formel in landestypischer Schreibweise vorliegt, oder du musst die Formel in englisch schreiben, dh eine der drei Varianten:
ActiveCell.FormulaLocal = "=Heute()"
ActiveCell.Formula = "=Date()"
ActiveCell = "=Date()"

allerdings vermute ich mal, dass du nicht wirklich die Formel in der Zelle haben willst, denn die zeigt immer das aktuelle Datum an, dh morgen dann den 10.8.
wenn das Datum fest bleiben soll, dann so:
ActiveCell.Value = Date

generell würde ich dir empfehlen, ohne Select zu arbeiten
If ActiveCell.Value = YourValue Then
Cells(ActiveCell.Row, 13).FormulaLocal = "=heute()"

Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Mit VBA die =HEUTE() Funktion in Excel Zelle eintragen


Schritt-für-Schritt-Anleitung

Um die =HEUTE() Funktion in eine Zelle deiner Excel-Tabelle mit VBA einzufügen, kannst du folgende Schritte ausführen:

  1. Öffne den VBA-Editor, indem du ALT + F11 drückst.

  2. Füge ein neues Modul hinzu: Rechtsklick auf „VBAProject“, dann „Einfügen“ > „Modul“.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub HeuteInZelle()
       If ActiveCell.Value = YourValue Then
           ActiveCell.FormulaLocal = "=HEUTE()"
       End If
    End Sub
  4. Ersetze YourValue durch den Wert, den du überprüfen möchtest.

  5. Schließe den Editor und führe das Makro aus, während die Zelle ausgewählt ist, in die du die Funktion einfügen möchtest.

Mit diesem Code wird die =HEUTE() Funktion in die aktive Zelle geschrieben und bleibt dynamisch.


Häufige Fehler und Lösungen

  • Fehler: #NAME? in der Zielzelle.

    • Lösung: Achte darauf, dass du ActiveCell.FormulaLocal = "=HEUTE()" verwendest, um sicherzustellen, dass die Funktion in der landestypischen Schreibweise eingefügt wird.
  • Fehler: Das Datum wird nicht korrekt angezeigt.

    • Lösung: Stelle sicher, dass die Zelle im richtigen Datumsformat formatiert ist. Wähle die Zelle aus, gehe zu „Start“ und wähle das passende Datumsformat.

Alternative Methoden

Es gibt verschiedene Ansätze, um das heutige Datum in Excel einzufügen:

  1. Direktes Einfügen ohne VBA:

    • Verwende die Formel =HEUTE() direkt in der Zelle.
  2. Mit VBA in Englischer Schreibweise:

    • Du kannst auch die englische Version verwenden, indem du den Code änderst:
    ActiveCell.Formula = "=TODAY()"
  3. Festes Datum setzen:

    • Wenn du ein festes Datum setzen möchtest, kannst du ActiveCell.Value = Date verwenden, um das aktuelle Datum in die Zelle zu schreiben.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du die =HEUTE() Funktion in Excel verwenden kannst:

  • Beispiel 1: Einfügen des heutigen Datums in Spalte A, wenn Spalte B einen bestimmten Wert hat.

    If Cells(ActiveCell.Row, 2).Value = "Eingang" Then
       Cells(ActiveCell.Row, 1).FormulaLocal = "=HEUTE()"
    End If
  • Beispiel 2: Automatisches Aktualisieren des Datums, wenn sich ein anderer Zellwert ändert.

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Me.Range("B:B")) Is Nothing Then
           Target.Offset(0, -1).FormulaLocal = "=HEUTE()"
       End If
    End Sub

Tipps für Profis

  • Vermeide die Verwendung von Select: Arbeite direkt mit den Zellen, um den Code effizienter zu gestalten.

  • Verwende FormulaLocal: Dies ist besonders wichtig, wenn du Excel in einer anderen Sprache verwendest. Achte darauf, die richtigen Formeln und Schreibweisen zu verwenden.

  • Verwende Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um sicherzustellen, dass dein VBA-Code auch bei unerwarteten Eingaben stabil bleibt.


FAQ: Häufige Fragen

1. Wie kann ich das aktuelle Datum in Englisch eintragen?
Du kannst ActiveCell.Formula = "=TODAY()" verwenden, um die Funktion in Englisch zu nutzen.

2. Bleibt das Datum nach dem Einfügen dynamisch?
Ja, die =HEUTE() Funktion bleibt dynamisch und wird automatisch aktualisiert. Wenn du ein festes Datum benötigst, verwende ActiveCell.Value = Date.

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