Supportnet Computer
Planet of Tech

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.

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