Bu öğretici, bir hücreyi veya bir hücre aralığını vurgulamak için VBA'nın nasıl kullanılacağını gösterecektir.
Koşullu biçimlendirme, Excel'deki hücreleri vurgulamanın bir yoludur. Hücre vurgulamayı gerçekleştirmek için VBA'yı da kullanabiliriz.
Bir Hücreyi Vurgula
VBA'da bir hücreyi vurgulamak için aşağıda gösterilen basit prosedürü kullanabiliriz.
123 | Alt Vurgu Hücresi()ActiveCell.Interior.Color = vbRedAlt Bitiş |
Bir Hücre Aralığını Vurgulayın
Benzer şekilde, bir Hücre Aralığı seçebilir ve Aralıktaki tüm hücreleri vurgulayabiliriz.
1234 | Alt HighlightRange()Aralık("A1:A10").SeçSelection.Interior.Color = vbRedAlt Bitiş |
Hücre Değerine Göre Hücreleri Vurgula
Bir hücreyi vurgulama koşulu eklemek için, hücrenin değeri belirli bir değerin üzerindeyse, bu durumda 10'dan büyükse hücreyi vurgulamak için bir EĞER ifadesi kullanabiliriz.
12345 | Alt HightlightCell_1ActiveCell.Value > 10 iseActiveCell.Interior.Color = vbRedBitirAlt Bitiş |
Hücre Değerine Göre Hücre Aralığını Vurgulayın
Bir Hücre Aralığındaki değerleri kontrol etmek için, her bir hücrede dolaşmamız, değerini belirlememiz ve ardından hücreyi buna göre vurgulamamız gerekir. Aşağıdaki örnekte, önce aralıkta tutulan değerin bir sayı olduğunu belirleyeceğiz ve ardından bu sayının 10'dan büyük olup olmadığını test edeceğiz.
12345678910 | Alt HighlightRangeOfCells()Aralık Olarak KarartmaAralıktaki Her Rng İçin("A1:A10")Eğer IsNumeric(rng.Value) iserng.Value > 10 iserng.Interior.Color = vbRedBitirBitirsonraki zilAlt Bitiş |
Koşullu Biçimlendirme ile Bir Hücreyi Vurgulayın
Hücreyi vurgulamak üzere bir hücreye koşullu biçimlendirme uygulamak için VBA'yı da kullanabiliriz. Aşağıdaki örnekte, aralıktaki her hücreye koşullu biçimlendirme uygulanacaktır. Yukarıdaki örnekte olduğu gibi, önce hücrenin içinde sayısal bir değer olup olmadığını test ediyoruz ve ardından koşullu biçimlendirmeyi uyguluyoruz.
12345678910 | Alt SetConditionalFormatting()Aralık Olarak KarartmaAralıktaki Her Rng İçin("A1:A10")Eğer IsNumeric(rng.Value) iserng.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="=10"rng.FormatConditions(1).Interior.Color = vbRedrng.FormatConditions(1).StopIfTrue = FalseBitirsonraki zilAlt Bitiş |
Seçim değiştiğinde bir Hücreyi Vurgula
Worksheet_Change Event'i kullanarak mevcut çalışma sayfasında hücre işaretçisi hareket ettiğinde bir hücrenin vurgulanmasını dinamik hale getirebiliriz. Aşağıdaki örnekte, sayfadaki tüm vurgulamalar kaldırılacak (koşullu biçimlendirme ile yapılanlar hariç) ve etkin hücre kırmızı olarak vurgulanacaktır (ColorIndex = 3).
1234 | Özel Alt Çalışma Sayfası_SelectionChange(Aralık Olarak ByVal Hedefi)ActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNoneTarget.Interior.ColorIndex = 3Alt Bitiş |