Colorir ítem especí...
 
Notifications
Clear all

Colorir ítem específico do Listview

5 Posts
3 Usuários
0 Reactions
915 Visualizações
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Pessoal Boa tarde!

Tenho uma listview com duas colunas
NOME e VALOR

gostaria que : sempre que o Valor for Maior que 10 , a cor da fonte desse valor ficasse vermelha.

É como se fosse uma formatação condicional, porém dentro da listview. Isso é possivel?

Segue em anexo uma planilha explicativa.
Desde já agradeço. abrç!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 13/12/2017 1:42 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

xlarruda,

Boa tarde!

Esse código foi desenvolvido pelo Mauro Coutinho, integrante desse fórum. Serve para colorir linha do ListView e também negritar. Adapte a sua necessidade.

Sub NegritarColunaListView()
    'Esta macro foi desenvolvida por Mauro Coutinho no fórum Planilhando _
    e permite colocar em negrito e em cores uma determinada coluna do ListView
    With UserForm1.ListView1
        For j = 1 To .ListItems.Count
            .ListItems(j).ForeColor = RGB(0, 0, 255)
            .ListItems(j).Bold = True
        Next j
    End With
End Sub

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 13/12/2017 2:01 pm
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Amigo Wagner muito obrigado!

Com a sua dica consegui chegar a uma adaptação para o que eu realmente precisava:

Sub NegritarColunaListView()
    'Esta macro foi desenvolvida por Mauro Coutinho no fórum Planilhando _
    e permite colocar em negrito e em cores uma determinada coluna do ListView
    With UserForm1.ListView1
        For j = 1 To .ListItems.Count
            If .ListItems(j).ListSubItems(20).Text = "sim" Then
          .ListItems(j).ListSubItems(7).ForeColor = RGB(255, 0, 0)
            '.ListItems(j).Bold = False
            End If
        Next j
    End With
End Sub

Obrigado novamente!
Abrç!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 13/12/2017 2:27 pm
Basole
(@basole)
Posts: 487
Reputable Member
 

Experimente desta forma:

 For j = 1 To .ListItems.Count
       If j = 3 then
               .ListItems(j).ForeColor = RGB(0, 0, 255)
               .ListItems(j).Bold = True
       End if
 Next j

** EDIT ****

Bom voce editou seu poste anterior entao minha resposta ficou meio sem sentido.

Click em se a resposta foi util!

 
Postado : 13/12/2017 3:21 pm
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Colega Basole, obrigado pela sua atenção!

Agora consegui pegar a lógica da listview. Agora dá pra fazer o que eu quiser 8-)

Obrigado novamente.. Abrç!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 13/12/2017 3:51 pm