Karthik sa pýta:
Pracujem na kóde udalosti na zvýraznenie aktívnej bunky, v podstate ukázať zmenu farby pozadia aktívnej bunky. Použil som udalosť zmeny a táto zmení hodnotu aktívnej bunky iba vtedy, keď sa hodnota zmenila.
Aká super otázka. Trik je v tom, že namiesto udalosti Worksheet_Change sa použije udalosť zmeny Worksheet_Selection. Toto makro obsluhy špeciálnych udalostí je potrebné zadať na table kódu priradeného k vášmu konkrétnemu pracovnému hárku. Diskusia o tom, ako to nájsť na paneli projektu, je pri tomto archivovanom tipe.
Potom by ste zadali nasledujúci kód:
Public OldRng As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not OldRng Is Nothing Then OldRng.Interior.ColorIndex = xlNone End If Target.Interior.ColorIndex = 6 Set OldRng = Target End Sub
Tento program používa verejnú premennú s názvom OldRng na zapamätanie posledného rozsahu, ktorý bol vybraný, aby bolo možné pri výbere nového rozsahu farbu resetovať späť na bielu.