Fórmula do Excel para contar quando o valor muda?

0

Eu tenho um enigma do Excel que não consigo rachar.

Na Coluna A, tenho uma longa lista de condados, e cada um desses condados é membro de um grupo maior de condados pertencentes a uma solicitação de financiamento específica para nossa organização. Na coluna B, o valor total do financiamento nessa solicitação - por exemplo, se uma organização recebeu US $ 3.000 e reivindicações para atender aos municípios Smith, Robeson, Macon e Duplin, a planilha se parece com isso:

Col A    Col B   (data starts in row 1) 
Smith    3000
Robeson  3000
Macon    3000
Duplin   3000

.. e a lista continua com os municípios de outros pedidos, para cerca de 1200 entradas de linhas totais.

Estou tentando configurar uma função que permite dividir o total (3000) pelo número de células até que o valor B seja alterado. Portanto, se o próximo valor B for 6500, por exemplo, a fórmula contaria apenas A1-A4 no denominador. Isso teoricamente permitiria que eu arrastasse a fórmula pela coluna inteira, em vez de alterar manualmente o intervalo toda vez que houvesse um novo agrupamento de condados. (As entradas já foram ordenadas de modo que não haja dois agrupamentos de condados de uma solicitação de mesmo valor (por exemplo, duas solicitações de US $ 10.000) adjacentes entre si).

Não consegui construir uma fórmula COUNT que possa explicar um intervalo desconhecido com base em um valor alteração em vez de ocorrência. Eu apreciaria qualquer ajuda que você pudesse fornecer! Ah, e feliz dia das bruxas.

    
por Ben B 31.10.2014 / 22:05

3 respostas

1

Existem provavelmente melhores formas de formatar os seus dados. Por exemplo, e se duas solicitações em uma fila forem para o mesmo valor? Você precisa de um ID exclusivo para cada solicitação para poder diferenciá-los. No entanto, para responder a sua pergunta real, acredito que sua meta é contar quantas instâncias do valor em B existem em uma linha e dividir o valor pelo número de instâncias. Para esse fim, sugiro o seguinte:

  1. Adicione uma linha de cabeçalho. Você não tem , mas torna a fórmula muito mais simples, porque você não precisa verificar se há erros quando você está na primeira linha.
  2. Use esta fórmula na célula C2 e copie / cole conforme necessário:
    =IF(B2=B1,C1,B2/(MATCH(TRUE,INDEX(B2:B1001<>B2,),0)-1))
    Se o valor for igual ao anterior, basta copiar seus cálculos. Caso contrário, conte quantos do mesmo valor estão em uma linha e, em seguida, divida o valor por essa contagem.
    Note que eu presumi que haveria menos de 1.000 em uma fila porque isso deveria cobri-lo.
por 25.03.2016 / 18:34
0

Isso seria muito mais fácil se você adicionasse uma coluna para identificar solicitações de financiamento. Pode estar fora de vista; por exemplo, coluna Z . Defina Z1 para 1 e defina Z2 para

=IF(B1=B2, Z1, Z1+1)

e arraste isso até o final dos dados. Então o denominador que você quer é

COUNTIF(Z$1:Z$9999, Z1)

(ajustando o 9999 para cobrir todos os seus dados), e assim C1 pode ser

=B1 / COUNTIF(Z$1:Z$9999, Z1)
    
por 31.10.2014 / 23:16
0

Defina C2 TO 1 e escreva esta fórmula em C2: =IF(B3=B2,(C2+1),1)

    
por 21.12.2016 / 12:31