excel tablosunda eklediğim resimdeki renkleri kaydedip açılan kutudan bu renkleri seçmek istiyorum o yüzden açılan listede
renkleri, isimlerini görmem lazım aslında soru şu açılan listede renkleri görebilir miyim
bu kod işe yarar mı
Private Sub BSComboBox1_OnDrawItem(ByVal Index As Long, ByVal Left As Long, ByVal Top As Long, _
ByVal Right As Long, ByVal Bottom As Long, _
ByVal State As BSAC.TBSOwnerDrawState)
BSComboBox1.Canvas.Brush.Color = CLng(BSComboBox1.Items(Index).Key)
BSComboBox1.Canvas.FillRect Left, Top, Right - Left, Bottom ' - Top
BSComboBox1.Canvas.TextOut Left, Top, BSComboBox1.Items(Index).Text
End Sub
Private Sub BSComboBox1_OnSelect()
Range("e1:p25").Interior.Color = CLng(BSComboBox1.Selected.Key)
End Sub
Private Sub UserForm_Initialize()
Dim I&, sh As Worksheet
Set sh = Sheets("COLOR")
BSComboBox1.Style = csOwnerDrawVariable
BSComboBox1.ItemHeight = 30
For I = 1 To 10
BSComboBox1.Items.Add sh.Cells(I, 1).Value, , , sh.Cells(I, 1).Interior.Color
Next I
End Sub
bu kodu nasıl kullanabilirim
bu kod ile combobox a renk isim ve kodlarını alıyorum ama renkleri göremediğim için çok anlamlı olmuyor renkleri nasıl comboboxta görebilirim
Private Sub deneme2()
Dim LastRow As Long
Dim i As Long
With BSComboBox1
.ListWidth = 200
.ListRows = 100
.ColumnCount = 3
.ColumnWidths = ";;0"
.TextColumn = 3
LastRow = Sheets("Colors").Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To LastRow
.AddItem Sheets("Colors").Range("B1:B100").Cells(i, 1).Value
.List(.ListCount - 1, 1) = Sheets("Colors").Range("A1:A100").Cells(i, 1).Value
.List(.ListCount - 1, 2) = .List(.ListCount - 1, 0) & vbTab & .List(.ListCount - 1, 1)
Next i
End With
End Sub
evet aradığım böyle bir şey tüm satırı renklendirse güzel olurmuş
teşekkürler berduş