Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

jtiagodias

[Resolvido] Como contar células com cor de fundo (formatação condicional)

Mensagens Recomendadas

jtiagodias    0
jtiagodias

Boas,

stou a tentar fazer uma pequena macro para contar as células que têm uma determinada cor de fundo.

Tenho uma lista de células e a cor estão as que quero contar.

Alguém me consegue dar uma ajuda?

Obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

Bom dia,

Inseri as seguintes funções para identificar as cores “condicionais”. O problema é que só conta as células em Branco!!! Não distingue o verde d vermelho

=CountOfCF(T14:T21;3) “vermelho”

=CountOfCF(T14:T21;2) “branco”

=CountOfCF(T14:T21;10) “verde”

parabéns ao fórum (5*)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

Não estás a usar os códigos de cores correctos. Por exemplo o vermelho é o 1 e não o 3

Vê aqui (no final) os códigos de cores:

http://vbtuga.blogspot.com/2008/04/excel-contar-cores-das-clula.html

Olá Jorge, obrigado pela dica!

mas segundo o código de cores que sugeriste tenho as cores correctas.

1-preto 2-branco 3 vermeho e 4/10 verde. ou estou a interpretar mal?

abraço

Bruno

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jpaulino    106
jpaulino
"CountOfCF - This function return the number of cells in a range that have a specified conditional format applied. This function return the number of cells in a range that have a specified conditional format applied. Set the last argument to -1 to look at all format conditions, or a number between 1 and 3 to specify a particular condition. "

A função só conta se tem, ou não, formatos condicionais, não conta as cores.

Podes utilizar a seguinte formula para verifica qual a cor que lá está, e depois utilizas um cointif() para contar de acordo com as cores (1-preto 2-branco, etc):

=ColorIndexOfCF(A1;FALSE)

Desculpa mas à pouco não li bem o problema :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

A função só conta se tem, ou não, formatos condicionais, não conta as cores.

Podes utilizar a seguinte formula para verifica qual a cor que lá está, e depois utilizas um cointif() para contar de acordo com as cores (1-preto 2-branco, etc):

=ColorIndexOfCF(A1;FALSE)

Desculpa mas à pouco não li bem o problema :P

peço desculpa pela minha insistência, mas estou a utilizar pela 1ª vez VBA, até agora limitava-me às funçõres do excel :-[

assim, necessito mais uma vez da tua ajuda para criar a funçlão "cointif()"

mais uma vez obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jpaulino    106
jpaulino

Fazes um =ColorIndexOfCF(A1;FALSE) na coluna B1 e depois somas a coluna B pela cor que queres, usando o CountIf()

Queres um exemplo ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

Fazes um =ColorIndexOfCF(A1;FALSE) na coluna B1 e depois somas a coluna B pela cor que queres, usando o CountIf()

Queres um exemplo ?

Olá Jorge,

agradecia um exemplo, estou confuso!!!

Obrigado

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

Olá Jorge,

Obrigado pela dica, mas não resolve o meu problema, pensei que a condição “countif()” estava directamente relacionada com as cores.

O meu problema é que tenho associado a um produto (A1) várias operações (B1;B2;B3,…). Mediante certas condições as células da coluna (B) apresentam cores. Na coluna ( C) temos a função para reconhecer as cores “ColorIndexOfCF()”.

Até aqui tudo bem, mas por vezes tenho de inserir uma ou mais linhas, ex.(entre B1e B2 inserir linha),

Neste caso fico com uma Lina (B2) nova que mantém a formatação condicional na coluna B, só que fico sem a função “ColorIndexOfCF()” na célula (C2).

Mais uma vez agradeço a tua disponibilidade

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

Ok, agora com base no ficheiro explica o que queres.

o que pretendo é o seguinte:

1 - por vezes tenho a necessidade de criar linhas, ex a linha 25 do ficheiro.

2 - acresc a lina e o excel manteve a formatação condicional nas colunas  "M e N"

3 - o problema está nas colunas "T e U". ficaram sem as formulas com as condições!!!

resumindo, quando acrescento uma ou mais linhas fico sem formulas nas colunas "T e U".

espero que tenhas percebido  :confused:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bafonso    0
bafonso

este é o meu ficheiro original.

contar cores era uma maneira de resolver o problema, pois ao acrescentar linhas a formatação condicional esta sempre activa, assim tinha sempre uma relaçõa cor/condição.

mas com o teu ex. o problema mantem-se:

não esta a contar cores mas sim a função que indica o codigo da cor, ou seja acrescentamos linhas e ficamos sem a função do codigo da cor.

cumprimentos

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
jpaulino    106
jpaulino

Ok, estive a ver o ficheiro e tu não precisas código para nada. Resolve-se bem com formula, uma vez que é sabe se está dentro do prazo, fora do prazo, etc.

Por exemplo, para "concl. Prazo"

=SUM(IF(M32:M38<=N32:N38;1;0))-SUM(IF(OR(M32:M38="";N32:N38="");1;0))

Insere a formula usando CTRL+SHIFT+ENTER

Estou certo ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
fagon    0
fagon

Por curiosidade, baixei o ficheiro.

Percebi mal o problema, ou bastaria fazer copiar/colar as fórmulas existentes nas células de uma outra linha na colunas T e U para aquela onde o excel não as replica?

Caso fosse necessário fazer múltiplos procedimentos iguais, sempre se poderia ter uma(s) linha(s) modelo de reserva em posição abaixo da tabela, sem dados mas com as fórmulas, bastando depois, quando necessário, copiá-la e inseri-la na posição desejada e preenchendo depois os dados fixos...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade