Eu trabalho em um armazém usando aplicativos WM que resultam em dados exportados para transações diárias. Nós usamoscálculo de escritório abertopara processamento de dados de planilhas. Os dados contêm células para localização, com formato como:
01.001.1.1 for 1st level of racking
01.001.2.1 for 2nd level of racking
01.001.3.1 for 3rd level of racking, etc until 7th level of racking
Quero contar quantas transações diárias para o 1º e 2º nível e separá-las para as estantes do 3º ao 7º nível.
Posso usar countif
ou frequency
outra fórmula para fazer isso?
Responder1
Você pode fazer isso com uma única fórmula ou usando uma coluna auxiliar, como sugerido por @Eric. Esta fórmula, preenchida a partir de C3 na tabela abaixo, lista o nível de cada local:
=MID(A3,8,1)
e este em D3 conta o número de 1º e 2º níveis da lista:
=COUNTIF(C3:C12,1)+COUNTIF(C3:C12,2)
Esta fórmula em B3 também retornará o número de 1º e 2º níveis:
=SUMPRODUCT(1*(VALUE(MID(A3:A12,8,1))<3))
____________________________________________________________________
Na última fórmula, MID()
retorna uma matriz de números de nível, mas estão entre aspas, portanto o Excel os trata como texto.
VALUE()
converte a matriz de volta em números, tornando o teste < 3
válido, e isso fornece uma matriz de True/False
valores True
onde quer que o nível seja 1 ou 2.
Multiplicar esta matriz por 1 converte os True/False
valores em 1 e 0 e SUMPRODUCT()
soma a matriz, fornecendo o número total de 1º e 2º níveis.