Se está se referindo a aba "CAPA" nalinha 21, todas as celulas estão pintadas de verde independente de ser final de semana ou não.
Quanto ao listview, é mais fácil alterar a cor da fonte do que colorir por colunas, veja no exemplo que enviei, é formatado a cor pelo dia.
Olá, pelo que vi eu tirei a formatação condicional da planilha e nem reparei
Mas observando a planilha que voce falou, consegui adaptar o meu código, e consegui deixar a formatação de forma dinamica do jeito que eu preciso, ou seja quando voce troca o mes a formatação consegue se adaptar perfeitamente, eu só não estava acertando o local onde incluir a condição, mas consegui agora.
Agora é só alegria, aparar as pontas soltas, tirar todos os erros e mostrar para a chefia.
espero que o que fiz possa ajudar mais alguem, abaixo a adaptação que fiz para trocar a cor da fonte.
Este altera a cor da fonte das colunas do primeiro listview
For j = 4 To lastcol
LstItem.ListSubItems.Add Text:=Sheets("Capa").Cells(i, j).Value
'verifica dia da semana para mudar fonte do subitem
If j >= 7 And _
ThisWorkbook.Sheets("Capa").Cells(19, j).Value >= 5 _
Or ThisWorkbook.Sheets("Capa").Cells(19, j).Value = 1 Then
LstItem.ListSubItems.Item(j - 3).ForeColor = vbBlue 'RGB(255, 0, 0)
LstItem.ListSubItems.Item(j - 3).Bold = True
Else
LstItem.ListSubItems.Item(j - 3).ForeColor = RGB(0, 0, 0)
LstItem.ListSubItems.Item(j - 3).Bold = False
End If
Next j
Next i
Este altera a cor da fonte das linhas do segundo listview
For a = 219 To Row
Set LstItem2 = Me.ListView2.ListItems.Add(Text:=Sheets("Painel").Cells(a, 2).Value)
If ThisWorkbook.Sheets("Painel").Cells(a, 10).Value >= 5 _
Or ThisWorkbook.Sheets("Painel").Cells(a, 10).Value = 1 Then
Me.ListView2.ListItems.Item(a - 218).ForeColor = vbBlue
Me.ListView2.ListItems.Item(a - 218).Bold = True
Else
Me.ListView2.ListItems.Item(a - 218).ForeColor = vbBlack
Me.ListView2.ListItems.Item(a - 218).Bold = False
End If
For b = 3 To Col
LstItem2.ListSubItems.Add Text:=Sheets("Painel").Cells(a, b).Value
If ThisWorkbook.Sheets("Painel").Cells(a, 10).Value >= 5 _
Or ThisWorkbook.Sheets("Painel").Cells(a, 10).Value = 1 Then
LstItem2.ListSubItems.Item(b - 2).ForeColor = vbBlue
LstItem2.ListSubItems.Item(b - 2).Bold = True
Else
LstItem2.ListSubItems.Item(b - 2).ForeColor = vbBlack
LstItem2.ListSubItems.Item(b - 2).Bold = False
End If
No mais estou postando o resultado(removi a senha do VBA ), agradeço a ajuda Mauro, e dos demais que interessaram pela minha duvida.
Postado : 01/06/2016 8:07 am