Rozwiązanie 2¶
Treść zadania¶
Stwórz przycisk, który po kliknięciu pokoloruje wszystkie komórki w zakresie A1:A10
, które zawierają wartość poniżej średniej z tego zakresu.
Rozwiązanie¶
Sub PonizejSredniej_Click()
Dim zakres As Range
Dim srednia As Double
Set zakres = Range("A1:A10")
srednia = Application.WorksheetFunction.Average(zakres)
For Each kom In zakres
If kom.Value < srednia Then
kom.Interior.Color = RGB(0, 255, 0)
End If
Next kom
End Sub
Opis rozwiązania¶
1. Deklarowanie zmiennych¶
Dim zakres As Range
deklaruje zmiennązakres
, która będzie przechowywać odniesienie do zakresu komórek.Dim srednia As Double
deklaruje zmiennąsrednia
, która będzie przechowywać średnią wartość jako liczbę zmiennoprzecinkową (Double
).
2. Ustawianie zakresu i obliczanie średniej¶
Set zakres = Range("A1:A10")
przypisuje zakres komórek od A1 do A10 do zmiennejzakres
.srednia = Application.WorksheetFunction.Average(zakres)
oblicza średnią wartość dla podanego zakresu za pomocą funkcjiAverage
i przypisuje wynik do zmiennejsrednia
.
3. Pętla przez komórki w zakresie¶
For Each kom In zakres
rozpoczyna pętlę, która wykona blok kodu dla każdej komórki (kom
) w określonym zakresie (zakres
).
4. Sprawdzanie wartości i zmiana koloru tła¶
If kom.Value < srednia Then
sprawdza, czy wartość aktualnie przeglądanej komórki (kom.Value
) jest mniejsza niż średnia (srednia
).kom.Interior.Color = RGB(0, 255, 0)
zmienia kolor tła komórki na zielony (za pomocą kodu koloru RGB), jeśli wartość jest poniżej średniej.
5. Koniec pętli¶
Next kom
kończy bieżący cykl pętli i przechodzi do następnej komórki w zakresie, jeśli nie wszystkie komórki zostały jeszcze sprawdzone.
6. Koniec procedury¶
End Sub
oznacza koniec procedury.