Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Die blinkende Zelle
#1
Hallo @ all,

es gibt zig viele Beiträge zum Thema blinkende Zelle, aber keins spricht genau mein Anliegen an.

Ich möchte gern, dass Zelle B1 automatisch blinkt wenn Sie leer ist und aufhört wenn was drin steht. Hab schon etliche Codes ausprobiert, aber keiner macht das was ich möchte.
Zudem brauche ich noch die Info wo genau der Code dann eingegeben werden muss. (Modul und/oder DieseArbeitsmappe und/oder Tabelle1 ...) Das konnte ich bisher aus keinem Beitrag im www genau rauslesen oder ich hab´s einfach nicht geschnallt... Undecided 

Diesen Code fand ich am logischsten. Wenn ich den richtig verstehe blinkt Zelle A1, wenn in dieser der wert 10 eingetragen wurde...? Und "ersteFarbe" bzw. "zweiteFarbe" ersetze ich durch z.b. green, red, blue...etc?? or What?? 20

Code in Diese Arbeitsmappe einfügen:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Ende
End Sub

Private Sub Workbook_Open()
If ThisWorkbook.Worksheets("Tabelle1").Range("A1") = 10 Then ersteFarbe
End Sub


Code in ein Modul einfügen:
Option Explicit
Public ET As Variant

Sub ersteFarbe()
ThisWorkbook.Worksheets("Tabelle1").Range("A1").Interior.ColorIndex = 3
ET = Now + TimeValue("00:00:01")
Application.OnTime ET, "zweiteFarbe"
End Sub

Sub zweiteFarbe()
ThisWorkbook.Worksheets("Tabelle1").Range("A1").Interior.ColorIndex = 33
ET = Now + TimeValue("00:00:01")
Application.OnTime ET, "ersteFarbe"
End Sub

Sub Ende()
On Error Resume Next
Application.OnTime EarliestTime:=ET, Procedure:="ErsteFarbe", Schedule:=False
Application.OnTime EarliestTime:=ET, Procedure:="zweiteFarbe", Schedule:=False
ET = ""
End Sub


Vielen Dank für Eure Unterstützung!!
Stefan 19

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top
#2
Moin!
Ich habe da eine Spielerei in meinem Archiv.
Da funktioniert die Steuerung der Farbe über bedingte Formatierungen.
Hat den Vorteil, dass Hintergrundfarben nicht gelöscht werden.

Die Idee ist nicht von mir, ich habe nur etwas erweitert.

Gruß Ralf


Angehängte Dateien
.xlsm   Blinker BereichsNamen Bed. Formatierung OnTime.xlsm (Größe: 20,43 KB / Downloads: 12)
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • StefanB
Antworten Top
#3
Hallo,

hinterfragen tue ich das jetzt mal nicht.

Code:
In ein allgemeines Modul:

Option Explicit
Public ET As Variant

Sub ersteFarbe()
ThisWorkbook.Worksheets("Tabelle1").Range("B1").Interior.Color = vbBlue
ET = Now + TimeValue("00:00:01")
Application.OnTime ET, "zweiteFarbe"
End Sub

Sub zweiteFarbe()
ThisWorkbook.Worksheets("Tabelle1").Range("B1").Interior.Color = vbGreen
ET = Now + TimeValue("00:00:01")
Application.OnTime ET, "ersteFarbe"
End Sub

Sub Ende()
On Error Resume Next
Application.OnTime EarliestTime:=ET, Procedure:="ErsteFarbe", Schedule:=False
Application.OnTime EarliestTime:=ET, Procedure:="zweiteFarbe", Schedule:=False
ET = ""
End Sub


Ins Codemodul von "DieseArbeitsmappe"

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Ende
End Sub

Private Sub Workbook_Open()
If ThisWorkbook.Worksheets("Tabelle1").Range("B1") = "" Then ersteFarbe
End Sub


Ins Codemodul des Tabellenblattes, auf dem die Zelle blinken soll:

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("B1") <> "" Then
    Ende
    Range("B1").Interior.Color = xlNone
Else
    ersteFarbe
End If
End Sub



Gruß Werner
[-] Folgende(r) 1 Nutzer sagt Danke an Werner.M für diesen Beitrag:
  • StefanB
Antworten Top
#4
Vielen Dank dafür. Nicht das was ich explizit gesucht hatte, ABER das baue ich in eine andere Tabelle ein. Das passt da super rein!! THX ;)

Mega großes THX! Genau so wollte ich das haben. Auch wenn Du nicht hinterfragst..... 89 Manche Mitarbeitern brauchen halt blinkende Zellen um zu schnallen das se da was eintragen müssen... 72

Interpunktion und Orthographie dieses Textes sind frei erfunden.
Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.

Grüße, StefanB
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste