Função CountCcolor ...
 
Notifications
Clear all

Função CountCcolor em formatação condicional

13 Posts
4 Usuários
0 Reactions
2,945 Visualizações
(@arihern)
Posts: 0
New Member
Topic starter
 

Galera,

Tenho um VBA pra contar cores (CountCcolor...) porém quando a celula é preenchida pela formatação condicional, o countccloor da erro e não conta! como faço para resolver isso?

Abraços

 
Postado : 13/11/2014 12:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Eu creio que até a versão 2010, seja impossível, pois o vba verifica o fundo da célula pintado, o recurso nativo do excel (formatação condicional), é como se fosse apenas uma cor visual, e não o fundo realmente pintado.

Att

 
Postado : 13/11/2014 1:15 pm
(@edcronos)
Posts: 1006
Noble Member
 

vba não consegue enxergar "formatação condicional" facilmente
formatação condicional é como uma mascara.
existem certos artifícios para contornar isso, mas...é um trabalho ingrato!

um deles seria fazer um filtro por cor e um loop entre as colunas

a maneira mais rapido "em termo de velocidade da macro" seria colocar os termos da formatação codicional em uma funçao

 
Postado : 13/11/2014 1:19 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!!

Tenho um VBA pra contar cores (CountCcolor...)

caso você queira resolver de outra forma (recomendada pelo edcronos), seria melhor do que usar a formatação na guia, pois, você já tem um recurso em vba, então seria melhor aplicar a regra da formatação via VBA e não usando a formatação condicional.
:)

Att

 
Postado : 13/11/2014 1:31 pm
(@arihern)
Posts: 0
New Member
Topic starter
 

Então, pode ser mas o que eu acrescento?
o VBA é esse:

Function CountCcolor(range_data As Range, criteria As Range) As Long
Dim datax As Range
Dim xcolor As Long
xcolor = criteria.Interior.ColorIndex
For Each datax In range_data
If datax.Interior.ColorIndex = xcolor Then
CountCcolor = CountCcolor + 1
End If
Next datax
End Function

O que eu coloco pra que a formatação condicional esteja aqui?

Segue anexo da formatação condicional que eu tenho! ela é por fórmula!

 
Postado : 13/11/2014 2:11 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite Arihern

No site do link abaixo tem uma função UDF que conta células com formatação condicional:

http://www.exceldoseujeito.com.br/2010/ ... ndicional/
Se a dica foi útil, clique na mãozinha;

[]s

 
Postado : 13/11/2014 6:13 pm
(@arihern)
Posts: 0
New Member
Topic starter
 

Oi,

Legal, coloquei a formula no VBA mas fica #VALOR! quando escrevo a formula! o que pode ser?

 
Postado : 14/11/2014 10:56 am
(@rlm)
Posts: 0
New Member
 

Se refere-se ao link que o Patropi passou, são, creio eu, 3 funções que devem ser inseridas em um modulo no VBA, (não pode estar em planilha) e em uma celula da planilha que deseja "Contar" inserir a formula (não no VBA).

 
Postado : 14/11/2014 1:18 pm
(@arihern)
Posts: 0
New Member
Topic starter
 

Então, fiz isso, mas mesmo assim da o tal do #Valor!

 
Postado : 14/11/2014 1:54 pm
(@rlm)
Posts: 0
New Member
 

Post o que fez, assim poderá ter um retorno direcionado ao problema, senão ficaremos no achometro e vai longe

 
Postado : 14/11/2014 2:50 pm
(@arihern)
Posts: 0
New Member
Topic starter
 

Segue em anexo! abraços!

 
Postado : 14/11/2014 3:08 pm
(@rlm)
Posts: 0
New Member
 

Estive verificando e aparentemente a função proposta pelo site tem seu funcionamento muito restrito; ou seja algumas "evoluções" das formulas na formatação condicional não são compreendidas.
Contudo se as formatações forem conforme seu exemplo, pode-se utilizar cont.se --> CONT.SE(C7:C25;">="&0,8)

 
Postado : 14/11/2014 6:02 pm
(@arihern)
Posts: 0
New Member
Topic starter
 

Deu muito certo! muito mais fácil!

Um grande abraço!

 
Postado : 17/11/2014 12:21 pm