16 RGB rengini (B sütünde kırmızı, C yeşil ve D mavi) saklamak için LibreOffice Calc kullanıyorum, sonra her bir renkle 16 hücrenin arka planını boyamak istiyorum. Her bir renk bir satırda.TEMEL iç içe döngüler: filtreleme satırları
Şu anda bunu kısmen başardım: sadece 16 hücre boyanmadı, fakat 48 (16x3)! İç içe geçmiş halkaları "gruplandırmam gerekiyor" gibi görünüyor. Bu benim kod/makro geçerli:
renkler (H) ilk sütunu tam olarak, ben gerekenler:
function bgcolor()
Dim Doc, Sheet, CellPaint As Object
Dim CellR, CellG, CellB As String
Doc = ThisComponent
Sheet = Doc.Sheets.getByIndex(0)
For i = 1 to 16 step 1
For j = 1 to 3 step 1
CellR = Sheet.getCellByPosition(j+0,i).getValue()
CellG = Sheet.getCellByPosition(j+1,i).getValue()
CellB = Sheet.getCellByPosition(j+2,i).getValue()
CellPaint = Sheet.getCellByPosition(j+6,i)
CellPaint.CellBackColor = RGB(CellR,CellG,CellB)
next j
next i
bgcolor=CellPaint.CellBackColor
end function
Bu sonucudur. Diğer iki sütun var, yani: iç içe döngülerimi nasıl düzeltirim? Muhtemelen basit bir if
ifadesini kullanarak onları filtrelemem gerekiyor, ama emin değilim.
DÜZENLEME - Başvuru için: Çözüm, ancak bunun OpenOffice üzerinde mümkün değildir okudum this one benzer olmalıdır (Ben LibreOffice üzerinde ne varsayalım).
Teşekkürler!
! O kadar kolay olabileceğini düşünmemiştim. Çok teşekkürler! – Gerard