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

Forumthread: Zelle jede Minute in Sekunde 00 aktualisieren

Zelle jede Minute in Sekunde 00 aktualisieren
Stefan
Hallo!
Gibt es eine Möglichkeit in VBA, um eine Zelle (oder das gesamte Arbeitsblatt) jede Minute zu aktualisieren. Ich würde gerne zum Beginn jeder Minute, also in Sekunde 00, eine Zelle aktualisieren.
Vielen Dank!
LG Stefan
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
such nach Application.OnTime oT
03.08.2009 10:47:45
Matthias
AW: such nach Application.OnTime oT
03.08.2009 17:08:09
Stefan
was bedeutet das? such nach application.ontime
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zelle jede Minute in Sekunde 00 aktualisieren


Schritt-für-Schritt-Anleitung

Um eine Zelle in Excel jede Minute zu aktualisieren, kannst Du die Application.OnTime-Methode in VBA verwenden. Hier sind die Schritte, um dies einzurichten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf „VBAProject (DeineArbeitsmappe)“.
    • Wähle „Einfügen“ > „Modul“.
  3. Füge den folgenden Code in das Modul ein:

    Dim nTime As Date
    
    Sub StartTimer()
       nTime = Now + TimeValue("00:01:00") ' Setzt den Timer auf 1 Minute
       Application.OnTime nTime, "UpdateCell"
    End Sub
    
    Sub UpdateCell()
       ' Aktualisiere eine Zelle, z.B. A1
       Range("A1").Value = Now
       StartTimer ' Starte den Timer erneut
    End Sub
    
    Sub StopTimer()
       On Error Resume Next
       Application.OnTime nTime, "UpdateCell", , False
    End Sub
  4. Starte den Timer:

    • Gehe zurück zu Excel und drücke ALT + F8.
    • Wähle „StartTimer“ aus und klicke auf „Ausführen“.
  5. Stoppe den Timer, wenn Du die Aktualisierung nicht mehr benötigst, indem Du „StopTimer“ ausführst.


Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 1004“: Dies kann auftreten, wenn das Makro nicht korrekt aufgerufen wird. Stelle sicher, dass Du das Makro mit ALT + F8 startest.
  • Zelle wird nicht aktualisiert: Überprüfe, ob der Timer korrekt gesetzt wurde und keine anderen Makros den Prozess stören.
  • Makros sind deaktiviert: Stelle sicher, dass die Makros in den Excel-Optionen aktiviert sind. Gehe zu „Datei“ > „Optionen“ > „Trust Center“ > „Einstellungen für das Trust Center“ > „Makroeinstellungen“.

Alternative Methoden

Falls Du keine VBA-Lösung nutzen möchtest, kannst Du auch die Funktion „Daten aktualisieren“ in Excel verwenden, um alle Daten manuell zu aktualisieren. Allerdings bietet diese Methode keine automatische Aktualisierung in Sekunde 00. Eine weitere Möglichkeit ist die Verwendung von Excel-Add-Ins, die eine automatische Aktualisierung unterstützen.


Praktische Beispiele

Ein praktisches Beispiel könnte sein, die aktuelle Uhrzeit in Zelle A1 darzustellen. Jedes Mal, wenn die Zelle aktualisiert wird, wird der Inhalt auf die aktuelle Uhrzeit gesetzt. Das ist besonders nützlich für Anwendungen, bei denen die Zeit eine Rolle spielt, wie z.B. bei der Überwachung von Börsenkursen.

Range("A1").Value = Format(Now, "hh:mm:ss") ' Setzt die Uhrzeit in A1

Tipps für Profis

  • Optimierung der Ausführung: Wenn Du viele Berechnungen hast, kann es sinnvoll sein, die Berechnung auf „manuell“ zu setzen, um die Leistung zu verbessern. Vergiss nicht, die Berechnung nach dem Stoppen des Timers wieder auf „automatisch“ zurückzusetzen.
  • Benachrichtigungen: Du kannst auch eine Nachricht anzeigen lassen, wenn die Zelle aktualisiert wird, indem Du ein MsgBox-Element hinzufügst.
  • Verwendung von Bedingungen: Füge Bedingungen hinzu, um nur unter bestimmten Umständen zu aktualisieren, z.B. wenn der Wert in einer anderen Zelle sich ändert.

FAQ: Häufige Fragen

1. Kann ich mehrere Zellen gleichzeitig aktualisieren?
Ja, Du kannst den Code anpassen, um mehrere Zellen gleichzeitig zu aktualisieren. Zum Beispiel:

Range("A1").Value = Now
Range("B1").Value = "Aktualisiert"

2. Funktioniert das auch in Excel Online?
Nein, VBA ist nicht in Excel Online verfügbar. Diese Methode funktioniert nur in der Desktop-Version von Excel.

3. Wie kann ich den Timer anpassen, um häufiger oder seltener zu aktualisieren?
Ändere einfach den Wert in TimeValue("00:01:00") auf die gewünschte Zeitspanne, z.B. TimeValue("00:00:30") für alle 30 Sekunden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige