Wyróżnij aktywną komórkę w Excel VBA - Łatwe makra Excel

Spisie treści

Poniżej przyjrzymy się programowi w Excel VBA że podświetla wiersz i kolumnę aktywnej komórki (wybrana komórka). Ten program zadziwi i zaimponuje Twojemu szefowi.

Sytuacja:

Za każdym razem, gdy zmieniamy aktywną komórkę w arkuszu 1, należy wykonać makro. Możesz to osiągnąć, tworząc zdarzenie wyboru arkusza roboczego.

1. Otwórz Edytor Visual Basic.

2. Kliknij dwukrotnie Arkusz1 (Arkusz1) w Eksploratorze projektów.

3. Wybierz Arkusz roboczy z lewej listy rozwijanej. Wybierz SelectionChange z prawej listy rozwijanej.

Dodaj następujące wiersze kodu do zdarzenia Worksheet SelectionChange:

4. Deklarujemy cztery zmienne typu Integer. Jeden o nazwie rowNumberValue, jeden o nazwie columnNumberValue, jeden o nazwie i i jeden o nazwie j.

Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer

5. Najpierw dodajemy linię, która zmienia kolor tła wszystkich komórek na „Brak wypełnienia”.

Komórki.Wnętrze.KolorIndeks = 0

6. Inicjujemy zmienną rowNumberValue numerem wiersza aktywnej komórki, a zmienną columnNumberValue numerem kolumny aktywnej komórki.

rowNumberValue = AktywnaKomórka.row
LiczbaKolumnWartość = AktywnaKomórka.kolumna

7. Podświetlamy kolumnę na niebiesko. To znaczy: wszystkie komórki o numerze wiersza mniejszym lub równym rowNumberValue i numerze kolumny równym columnNumberValue

For i = 1 To rowNumberValue
Cells(i, columnNumberValue).Interior.ColorIndex = 37
Dalej ja

Wyjaśnienie: w tym przykładzie (patrz rysunek powyżej), rowNumberValue równa się 12, a columnNumberValue równa się 8. Linie kodu między For i Next zostaną wykonane dwanaście razy. Dla i = 1, Excel VBA koloruje komórkę na przecięciu wiersza 1 i kolumny 8. Dla i = 2, Excel VBA koloruje komórkę na przecięciu wiersza 2 i kolumny 8 itd.

Uwaga: zamiast numeru ColorIndex 37 (niebieski) możesz użyć dowolnego numeru ColorIndex.

8. W podobny sposób podświetlamy wiersz na niebiesko. To znaczy: wszystkie komórki z numerem wiersza równym rowNumberValue i numerem kolumny mniejszym lub równym columnNumberValue.

Dla j = 1 To columnNumberValue
Cells(rowNumberValue, j).Interior.ColorIndex = 37
Następny j

9. Teraz czas na przetestowanie programu. Pobierz plik Excel i zobacz, jak wiersz i kolumna aktywnej komórki są podświetlane za każdym razem, gdy zmieniasz aktywną komórkę.

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave