Supportnet / Forum / Tabellenkalkulation
Per klick Zelle färben
Frage
Hallöle liebe SN User
Ein Makro ausführen ist nicht schwer, eins zu schreiben dagegen sehr !!!
Welcher nette VBA – Kenner kann mir auf die Sprünge helfen,denn leider lassen sich
nicht alle Makro’s mit dem Rekorder aufzeichnen.
Ich möchte in einem Tabellenblatt einen „ Toggle Button „ erstellen, der nach dem einschalten ein Makro ausführt.Und zwar soll dann beim anklicken einer beliebigen Zelle diese dann Hellgrün werden (ColorIndex = 4) und auch bleiben. Wenn die nächste Zelle angeklickt wird soll sie ebenfalls Hellgrün werden und bleiben usw. Das ganze soll solange
fortgeführt werden bis man wieder auf den „ Toggle Button „ klickt und man zur normalen
Zellanwahl zurückkehrt.
Im voraus schon mal ein Danke für die ein oder andere Lösung
Antwort 1 von coros
Nabend Anno,
kopiere nachfolgenden Code in das VBA Projekt der Tabelle, in dem sich der ToggleButton befindet und in dem die Zellen die Hintergrundfrbe ändern sollen.
Bei dem Code wird wenn der Button betätigt wird die Variable "Markierung_aktiv" auf 1 gesetzt. In dem Worksheet_SelectionChange Ereignis wird dann lediglich durch eine Abfrage erreicht, dass wenn die Variable "Markierung_aktiv" = 1 ist, dass die aktive Zelle gefärbt wird, wenn die Variable = 0 ist, dann nicht.
Ich hoffe, Du kommst klar. Bei Fragen oder Problemen melde Dich.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
kopiere nachfolgenden Code in das VBA Projekt der Tabelle, in dem sich der ToggleButton befindet und in dem die Zellen die Hintergrundfrbe ändern sollen.
Public Markierung_aktiv As Integer
Private Sub ToggleButton1_Click()
If ToggleButton1 = True Then
Markierung_aktiv = 1
Else
Markierung_aktiv = 0
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Markierung_aktiv = 1 Then ActiveCell.Interior.ColorIndex = 4
End Sub
Bei dem Code wird wenn der Button betätigt wird die Variable "Markierung_aktiv" auf 1 gesetzt. In dem Worksheet_SelectionChange Ereignis wird dann lediglich durch eine Abfrage erreicht, dass wenn die Variable "Markierung_aktiv" = 1 ist, dass die aktive Zelle gefärbt wird, wenn die Variable = 0 ist, dann nicht.
Ich hoffe, Du kommst klar. Bei Fragen oder Problemen melde Dich.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von Anno2005
@ coros
Ging ja sehr schnell! :-)
Danke nochmal für deine promte Hilfe
Funktioniert einwandfrei
Ging ja sehr schnell! :-)
Danke nochmal für deine promte Hilfe
Funktioniert einwandfrei