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

Ausgewählte Zelle soll Rot blinken

Forumthread: Ausgewählte Zelle soll Rot blinken

Ausgewählte Zelle soll Rot blinken
22.11.2024 13:52:32
Maddin88
Hallo zusammen,

ich bräuchte einen VBA Code für meine Tabelle, welcher die Ausgewählte Zelle Rot blinken lässt.
Sobald eine andere Zelle ausgewählt wird, wird diese Zelle dann wieder ohne Farbe (oder Weiß).

Vielen Dank schon einmal im Voraus

Mit freundlichen Grüßen

Maddin88
Anzeige

23
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 16:42:12
Onur
Solche überflüssigen Spielereien stressen doch nur den Prozessor. Excel ist keine Lightshow.
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 17:01:05
Yal
Der Meinung bin ich auch.
Aber es ist so irrsinnig, dass ich mich reissen lassen habe. So ein Art von Weihnachten-Vorstimmung ;-)

VG
Yal
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 16:51:28
Yal
Hallo Maddin,

ja, klar es ist bald Weihnachten, lass alles blinken, was blinken kann.

Hier den Rudolf-Code:

Code im Tabellenmodul:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not LetzteAktZelle Is Nothing Then LetzteAktZelle.Interior.Pattern = xlNone
Set LetzteAktZelle = ActiveCell
End Sub

Private Sub Worksheet_Activate()
Application.OnTime Now + TimeSerial(0, 0, T), "Test"
End Sub


Code im Allg. Modul ("Modul1"):
Public LetzteAktZelle As Range

Private Status As Boolean

Public Const T = 0.2

Public Sub Test()
Debug.Print Timer
Select Case Status
Case True
Selection.Interior.Pattern = xlSolid
Selection.Interior.ColorIndex = 3
Case False
Selection.Interior.Pattern = xlNone
End Select
Status = Not Status
Application.OnTime Now + TimeSerial(0, 0, T), Test
End Sub


Aus irgendeinem nicht nachvollziehbaren Grund zickt der Code bei mir und ich könnte nicht testen.

VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
24.11.2024 15:08:44
Piet
Hallo

da du bis jetzt noch keinen Code hast, der deinen Wünschen entspricht, probier es doch bitte mal mit dem.
Er gehört in die Tabelle die blinken soll, und startet über -SelectionChange- für 3mal blinken pro Zelle.
Danach stoppt er von selbst und muss nicht abgeschaltet werden.

mfg Piet

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim i As Integer
ActiveCell.Interior.ColorIndex = xlNone
Do While i 6 'Zelle 3 mal blinken
Application.Wait (Now + CDate("00:00:01"))
If ActiveCell.Interior.ColorIndex = xlNone Then
ActiveCell.Interior.ColorIndex = 3
Else
ActiveCell.Interior.ColorIndex = xlNone
End If: i = i + 1
Loop
ActiveCell.Interior.ColorIndex = xlNone
End Sub
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 16:56:10
Onur
Und wo bitte wird der Timer wieder deaktiviert, wenn die Datei geschlossen wird??
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 17:02:09
Yal
Läuft der One-Time Timer unendlich?
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 17:03:25
Onur
Wenn du ihn nicht abschaltest... Teste doch mal.
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 17:17:58
Yal
Ich habe die Datei geschlossen ohne zu speichern oder den Timer auszuschalten. Merke nichts.

Aber ich muss zugeben, dass irgendwas grundsätzlich nicht funktioniert hat. Daher kann ich nicht davon ausgehen, dass es nicht so ist, wie Du es beschreibst.

Meine Annahme ist nur das
Application.Ontime Now + TimeSerial(0,0,1), "MeineProc"
nur einmal wirkt und dementsprechend in "MeineProc" nochmal angestossen werden muss. Wenn MeineProc nicht mehr ausführbar, weil Datei geschlossen, bekome ich eine einmalige Fehlermeldung, aber nicht weiteres.

Wie gesagt, kann ich nicht testen.

VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 17:23:20
Onur
Der Timer ruft sich ja schliesslich selbst auf.
In der Regel bleibt dann Excel mit einem leeren Fenster geöffnet, wenn du den Timer nicht schliesst.
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 18:17:42
Yal
Hallo Onur,

ich kann leider das von dir beschriebenen Verhalten nicht reproduzieren.

Folgende Code führt zu eine einmalige Ausführung:
Sub Start()

Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub

Sub Aktion()
Debug.Print Format(Now, "hh:mm:ss")
End Sub


Erst wenn ich in der Ausführung "Aktion" den OnTime wieder anstosst, bekomme ich eine Ausgabe der Zeit in 2-sekunden Takt:
Sub Start()

Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub

Sub Aktion()
Debug.Print Format(Now, "hh:mm:ss")
Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub


Daher gehe ich davon aus, dass der Timer (bzw. OnTime) sich nicht selbst erneuert.

VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 18:33:04
Onur
HIER ruft der Code sich selbst auf:
Sub Aktion()

Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub

Öffne doch mal eine beliebige Datei und danach die mit dem Timer.
Dann beende mal die Datei mit dem Timer.
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 18:58:02
Yal
Hmm...

habe folgendes gemacht: Mappe1 mit folgenden Code
Sub Start()

Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub

Sub Aktion()
Debug.Print Format(Now, "hh:mm:ss")
Application.OnTime Now + TimeSerial(0, 0, 2), "Aktion"
End Sub

Die Proc "Start" angestossen. Zeiten sammeln sich im Direktfenster.

Eine Mappe2 geöffnet.
Mappe1 geschlossen (ohne irgendwas am Timer geändert zu haben).
Ich bekomme eine Fehlermeldung "...\Mappe1 könnte nicht gefunden werden. Stellen Sie sicher ..."
Weggeklickt.
Nichts weiteres. Zeiten werden nicht mehr fortlaufend im Direktfenster geschrieben.

Also, ab dem Moment, wo "Aktion" nicht mehr ausrufbar wurde, ist der Fehler gemeldet worden, aber der Timer ist nicht mehr neuangestossen worden.

Gern lasse ich mich vom Gegenteil überzeugen, aber ein anderen Verhalten habe ich bisher nicht entdeckt.

(muss weg. Schönes WE)
VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
22.11.2024 19:02:11
Onur
Schreib die Sub mal als Public in ein allg. Modul. Durch die Fehlermeldung wird ja der Code abgebrochen.
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 11:26:00
Georgi
Hallo Onur,
ich kann Deine Beispieldatei nicht einsehen, aber wie wäre es mit einer Zählervariablen, wo nach x Durchläufen der Vorgang beendet wird?
Hätte auch den Vorteil, dass Dein berechtigter Einwand "Prozessorstress" nicht ewig dauert, sondern nur eben x mal.

Viele Grüße
Georgi
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 11:43:45
Onur
Blödsinn bleibt Blödsinn, auch wenn man ihn nach x Sekunden ausschaltet.
Bei richtigen Problemen helfe ich gerne, aber sowas hat mit Tabellenkalkulation nix zu tun.
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 12:25:38
Georgi
Naja, bei großen farbigen Tabellen kann es schon mal Sinn machen, dass sich da eine (negative) Veränderung bemerkbar macht...
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 12:28:08
Onur
"dass sich da eine (negative) Veränderung bemerkbar macht... " ? Welche Veränderung denn ?
Er schrieb doch: "welcher die Ausgewählte Zelle Rot blinken lässt"
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 16:11:03
Yal
Moin,

ich könnte jetzt deine Datei https://www.herber.de/bbs/user/173778.xlsm testen.

Anstatt eine Fehlermeldung kommt eine Meldung, die verlangt, die Datei 173778.xlsm zu öffnen.
Es bleibt zwar, genau wie in dem anderen Fall, eine Meldung zu viel, jedoch führt nicht zu einem Problem, da es die Möglichkeit besteht, die Makro bei Öffnen zu deaktivieren.

Aber ja, richtig, sauberer wäre, den OnTime zuerst ausszuschalten
Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.OnTime Now, "Aktion", Schedule:=False
End Sub


VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 16:25:34
Onur
Hallo Yal,

Sorry, aber wieder muss ich dich korrigieren.
Application.OnTime Now, "Aktion",  Schedule:=False

bringt gar nix, wahrscheinlich sogar eine Fehlermeldung.
Denn, wenn du einen Timer, der für 17:00:00 gesetzt hattest, musst du den Timer mit genau dieser Zeit wieder deaktivieren, denn Timer werden nur anhand ihrer gesetzten Zeit erkannt und abgearbeitet. Deswegen nimmt man ja auch in der Regel eine Variable für die Zeit/Identifier:
ZT=Now + TimeSerial(0, 0, 10)

Und dann
Application.OnTime ZT, "Aktion"

bzw
Application.OnTime ZT, "Aktion",  Schedule:=False

damit man genau diesen Timer anspricht, der gesetzt wurde.
Wie du siehst, ist OnTimer selbst für erfahrene Excel-User kompliziert und deshalb poste ich ungerne Codes mit Timer, erst recht nicht für irgendwelche Spielereien.

Gruß
Onur
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
23.11.2024 16:34:54
Yal
Hallo Onur,

vielen Dank für die Ergänzung. Ich gebe zu, dass ich hier eine Fehlermeldung bekommen habe.
Microsoft ist auf diesem Punkt auch nicht ausführlich: https://learn.microsoft.com/en-us/office/vba/api/Excel.Application.OnTime

VG
Yal
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
24.11.2024 10:37:55
Maddin88
Hallo zusammen,

Entschuldigung, dass ich mich erst jetzt melde. Der Hintergrund bzgl. dieses "Weihnachtsbaums" ist, dass ich eine Exceltabelle mit vielen Bildern habe (jedes Bild in einer eigenen Zelle) auf welche eine andere Tabelle mit entsprechenden Namen per Sverweis und Hyperlink verweist. Mein Chef hätte jetzt nur gerne gehabt, dass die Bilder bspw. per Blinken (es würde ja 3-5x Blinken reichen) besser und schneller ersichtlich sind.
Klar, ich könnte die Tabelle einfach größer machen, damit nur dieses eine Bild ersichtlich ist, jedoch möchte mein Chef, dass er die umliegenden Bilder hier mit betrachten kann.

Vielen Dank für eure Mühe.
Bisher war aber leider noch nichts dabei, dass ich jetzt hier 1:1 verwenden könnte.

Liebe Grüße

Maddin88
Anzeige
AW: Ausgewählte Zelle soll Rot blinken
24.11.2024 15:58:03
Udo D.
Hi, aber so richtig ist mir dein Wunsch noch nicht klar, klar, zumindest dass dann irgendwelche
Bilder / oder Zellen in denen die Bilder scheinbar platziert sind dann mal blinken sollen ist letztlich die
Auswirkung, aber wie stehts um das Ereignis, dass warum auch immer bestimmte Zellen blinken,
vereinzelt oder alle zusammen, hab ich was überlesen ?

LG Udo
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18