Ir ao conteúdo

Contar células não-vazias com filtro no excel


victortrindade

Posts recomendados

Postado

Olá, queria uma ajuda numa planilha. Estou quebrando a cabeça mas não consigo resolver. Quero contabilizar o número de células vazias em uma coluna, mas que tenham a restrição de pertencer a um grupo de outra coluna. A planilha é essa em anexo.

Por exemplo: Quero contar qnts danos ocorreram em "albacora". Já tentei CONT.VALORES, CONT.SE, CONT.SES, mas não tive sucesso. Ele acaba contabilizando de todos os campos, não de um só. Já tentei contar também usando alto-filtro, mas de novo contou com todos os campos. Se alguém puder me ajudar serei muito grato, pois estou levando uma coça feia do excel...

post-991391-1388496338959_thumb.gif

Postado

Olha essa macro! Pode ser?

Ah! Se fui útil, não esqueça de marcar o polegar verde a sua direita e encerrar o tópico.


Sub vazios()
Dim x As Integer
Dim y As String
Dim Prenc As Boolean
Range("c1").Select
y = InputBox("Digite os danos que deseja verificar: ", "DANOS")
Do While Prenc = False
If ActiveCell.Value <> vbNullString Then
If ActiveCell.Value = y Then
If ActiveCell.Offset(0, -1).Value = "" Then
x = x + 1
End If
End If
Else
Prenc = True
End If
ActiveCell.Offset(1, 0).Select
Loop
MsgBox "Foram encontrados " & x & " danos.", vbOKOnly, "DANOS"
End Sub

Att,

Leno Mota

Postado

Olá Leno! Obrigado por responder mas ainda não deu... Na verdade preciso de algo mais automático, sem caixa de texto como se fosse usado por usuário. Cheguei a testar a macro, mas ela também não conta qnts danos tem.

Preciso de uma função de contador que automaticamente quando ponho um dano ele ja contabiliza. Com o CONT.VALORES dá pra fazer o que preciso, mas sem restrição. Eu preciso de um contador q trabalhe em cima da restrição "campo". Tipo... se o dano estiver do lado de "voador" entra no total de "voador", se tiver do lado de "albacora" entra no total de "albacora", existindo um total para cada campo.

Olha essa macro! Pode ser?

Ah! Se fui útil, não esqueça de marcar o polegar verde a sua direita e encerrar o tópico.


Sub vazios()
Dim x As Integer
Dim y As String
Dim Prenc As Boolean
Range("c1").Select
y = InputBox("Digite os danos que deseja verificar: ", "DANOS")
Do While Prenc = False
If ActiveCell.Value <> vbNullString Then
If ActiveCell.Value = y Then
If ActiveCell.Offset(0, -1).Value = "" Then
x = x + 1
End If
End If
Else
Prenc = True
End If
ActiveCell.Offset(1, 0).Select
Loop
MsgBox "Foram encontrados " & x & " danos.", vbOKOnly, "DANOS"
End Sub

Att,

Leno Mota

Postado

Bom dia!

tentando contribuir, e se entendi bem a duvida!

acho que esta é o que você procura!

=SOMARPRODUTO((A1:A9=E2)*(B1:B9=F2))

supondo que os dano estão em A

e os campos em B

em E2 esta a referencia buscada de a e F2 a referencia de B

e se você ja usa o excel 2007 você pode usar esta, q tambem faz a mesma coisa...

=CONT.SES(A1:A9;E2;B1:B9;F2)

se nao for isso, poste um exemplo da sua planilha, com exemplos de como os dados estão,

e do resultado esperado... e nao imagens....

aguardando!:rolleyes:

Postado

Você é um genio! Estou salvo!

Bom dia!

tentando contribuir, e se entendi bem a duvida!

acho que esta é o que você procura!

=SOMARPRODUTO((A1:A9=E2)*(B1:B9=F2))

supondo que os dano estão em A

e os campos em B

em E2 esta a referencia buscada de a e F2 a referencia de B

e se você ja usa o excel 2007 você pode usar esta, q tambem faz a mesma coisa...

=CONT.SES(A1:A9;E2;B1:B9;F2)

se nao for isso, poste um exemplo da sua planilha, com exemplos de como os dados estão,

e do resultado esperado... e nao imagens....

aguardando!:rolleyes:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...