• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Listview içindeki sütunun hücresini koşullu renklendirme

Katılım
29 Aralık 2007
Mesajlar
40
Excel Vers. ve Dili
2010-türkçe
Selam arkadaşlar;

Aşağıda yer alan kodlar ile userform üzerindeki listview1 e sayfadan veri alıyorum.

Listview1 9.sütunundaki veri "EKSİK" e eşit "EKSiK" yazısı kırmızı oluyor. Eşit değilse 9.sütundaki diğerleri mavi oluyor.

Benim istediğim 9.sütunda 3 adet sorgulamaya göre (EKSİK,FAZLA,TAM) (Kırmızı,Mavi,Yeşil) renklensin. Sorgulama haricindekiler Siyah olsun.

İnşallah anlatabildim.


Private Sub CommandButton17_Click()
With ListView1
.FullRowSelect = True
.Gridlines = True
.View = 3
.ListItems.Clear
ComboBox1.Clear

For i = 1 To Sayfa2.Cells(1, Columns.Count).End(1).Column
.ColumnHeaders.Add , , Sayfa2.Cells(1, i)
Next i

For a = 2 To Sayfa2.Range("A65536").End(3).Row
Set yvz = .ListItems.Add(, , Sayfa2.Cells(a, 1))
yvz.SubItems(1) = Sayfa2.Cells(a, 2)
yvz.SubItems(2) = Sayfa2.Cells(a, 3)
yvz.SubItems(3) = Sayfa2.Cells(a, 4)
yvz.SubItems(4) = Sayfa2.Cells(a, 5)
yvz.SubItems(5) = Sayfa2.Cells(a, 6)
yvz.SubItems(6) = Sayfa2.Cells(a, 7)
yvz.SubItems(7) = Sayfa2.Cells(a, 8)
yvz.SubItems(8) = Sayfa2.Cells(a, 9)


If Sayfa2.Cells(a, 9) = "EKSİK" Then
yvz.ListSubItems(8).ForeColor = vbRed
yvz.ListSubItems(8).Bold = True
Else
yvz.ListSubItems(8).ForeColor = vbBlue
yvz.ListSubItems(8).Bold = True
End If

If WorksheetFunction.CountIf(Sayfa2.Range("I2:J" & a), Sayfa2.Cells(a, "I")) = 1 Then
ComboBox1.AddItem Sayfa2.Cells(a, "I")
End If

If WorksheetFunction.CountIf(Sayfa2.Range("J2:J" & a), Sayfa2.Cells(a, "J")) = 2 Then
ComboBox1.AddItem Sayfa2.Cells(a, "J")
End If
Next a

ListView1.ColumnHeaders(3).Width = 200
ListView1.ColumnHeaders(5).Width = 35
ListView1.ColumnHeaders(7).Width = 35
ListView1.ColumnHeaders(8).Width = 35
ListView1.ColumnHeaders(9).Width = 35

End With
ComboBox1.ListRows = 20
Label40.Caption = "Toplam Veri Sayısı: " & ListView1.ListItems.Count

End Sub
 
Merhaba;

Renklendirme için;

If Sayfa2.Cells(a, 9) = "EKSİK" Then
yvz.ListSubItems(8).ForeColor = QBColor(12) 'kırmızı
yvz.ListSubItems(8).Bold = True
End If

If Sayfa2.Cells(a, 9) = "FAZLA" Then
yvz.ListSubItems(8).ForeColor = QBColor(9) 'mavi
yvz.ListSubItems(8).Bold = True
End If

If Sayfa2.Cells(a, 9) = "TAM" Then
yvz.ListSubItems(8).ForeColor = QBColor(2) 'yeşil
yvz.ListSubItems(8).Bold = True
End If

kod bloklarını kullanın.
İyi çalışmalar.
 
Teşekkür ederim, muygun

Sizler sayesinde hergeçen gün yeni birşeyler öğrenip uygulayabiliyoruz.
 
Geri
Üst