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

aktuelles datum in eine variable speichern

Forumthread: aktuelles datum in eine variable speichern

aktuelles datum in eine variable speichern
10.09.2003 16:02:36
rahel
hallo zusammen

ich habe eine tabelle:

07.08.2003 203 52 128 43
14.08.2003 192 49 5 58
28.08.2003 216 46 0 25
04.09.2003 165 40 32 11
10.09.2003 344 114 197 88
10.09.2003 344 114 197 88

über ein makro füge ich nun jede woche die aktuellen werte unten an der tabelle an. falls jedoch zwei personen versuchen, das makro am selben tag auszuführen, sollen die daten beim zweiten versuch nicht nochmal angehängt werden. ich habe versucht, dies mit folgender überprüfung zu lösen:

If Range("A" & rows).Value <> "=TODAY()" Then
' code zum anfügen der neuen daten
End If

dies funktioniert jedoch nicht. ich habe gedacht, ich könnte eine variable mit dem aktuellen datum erstellen oder sowas und sie dann mit dem letzten datum der tabelle vergleichen.
falls das geht, wie?
oder hat jemand einen vorschlag?

gruss, rahel
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: aktuelles datum in eine variable speichern
10.09.2003 16:07:18
ChrisL
Hi Rahel

If Range("A65536").End(xlUp) = Date Then
MsgBox "schon vorhanden"
End If

Gruss
Chris
hey, danke für die schnelle antwort ;-) / o.T.
10.09.2003 16:09:04
rahel
AW: aktuelles datum in eine variable speichern
10.09.2003 16:07:40
BerndE
Hi Rahel,

verwende statt '"=TODAY()" ' einfach 'Date', dann müsste es funzen...

Gruß
Bernd

www.bernds.page.de.vu
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige

Infobox / Tutorial

Aktuelles Datum in einer Variable speichern und vergleichen


Schritt-für-Schritt-Anleitung

Um das aktuelle Datum in Excel VBA zu speichern und zu vergleichen, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ und wähle „Einfügen“ > „Modul“.

  3. Schreibe den Code: Füge folgenden Code in das Modul ein:

    Sub AddCurrentDate()
        Dim lastRow As Long
        Dim currentDate As Date
    
        ' Setze das aktuelle Datum
        currentDate = Date
    
        ' Finde die letzte gefüllte Zeile in Spalte A
        lastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
        ' Überprüfe, ob das heutige Datum bereits vorhanden ist
        If Cells(lastRow, 1).Value <> currentDate Then
            ' Code zum Anfügen der neuen Daten
            Cells(lastRow + 1, 1).Value = currentDate
            ' Füge hier den Code für die restlichen Daten ein
        Else
            MsgBox "Daten für heute sind bereits vorhanden."
        End If
    End Sub
  4. Führe das Makro aus: Schließe den VBA-Editor und führe das Makro über ALT + F8 aus.


Häufige Fehler und Lösungen

  • Fehler: „Typenkonflikt“
    Wenn du einen Typenkonflikt erhältst, stelle sicher, dass die Zelle, mit der du vergleichst, auch wirklich ein Datum enthält. Verwende die Funktion DateValue, um sicherzustellen, dass der Wert als Datum interpretiert wird.

  • Fehler: „Nicht gefundene Zeile“
    Wenn du die letzte gefüllte Zeile nicht finden kannst, kann es daran liegen, dass in der Spalte A keine Daten vorhanden sind. Stelle sicher, dass die Spalte nicht leer ist.


Alternative Methoden

Wenn du eine andere Methode bevorzugst, um das aktuelle Datum in VBA zu verwenden, kannst du auch folgende Varianten in Betracht ziehen:

  • Verwendung von Now:

    currentDate = Now

    Dies gibt dir das aktuelle Datum und die Uhrzeit zurück.

  • Verwendung von Application.WorksheetFunction.Today(): Du kannst auch eine Excel-Funktion direkt in VBA verwenden, um das heutige Datum abzurufen.


Praktische Beispiele

Hier sind einige Beispiele, wie du das aktuelle Datum in verschiedenen Szenarien verwenden kannst:

  1. Aktuelles Datum in eine Zelle einfügen:

    Cells(1, 1).Value = Date
  2. Überprüfung des Datums vor dem Speichern:

    If Cells(1, 1).Value <> Date Then
        Cells(1, 1).Value = Date
    End If

Tipps für Profis

  • Verwende Date statt =TODAY(): In VBA kannst du das aktuelle Datum direkt mit Date abrufen, was einfacher und schneller ist.
  • Automatisierung mit Zeitsteuerung: Du kannst das Makro so einstellen, dass es automatisch beim Öffnen der Datei oder zu bestimmten Zeiten ausgeführt wird.

FAQ: Häufige Fragen

1. Wie speichere ich das aktuelle Datum in einer Variablen?
Verwende einfach currentDate = Date, um das aktuelle Datum in einer Variable zu speichern.

2. Was ist der Unterschied zwischen Date und Now?
Date gibt nur das aktuelle Datum zurück, während Now das Datum und die Uhrzeit liefert.

3. Wie kann ich sicherstellen, dass mein Makro nur einmal pro Tag ausgeführt wird?
Vergleiche das aktuelle Datum mit dem letzten Datum in deiner Tabelle, um zu prüfen, ob die Daten bereits hinzugefügt wurden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige