Parece um trabalho para tabela dinâmica !
Realce sua tabela e vá para Inserir → tabela dinâmica e organize como quiser. Eu faria o seguinte -
Estou tentando escrever uma fórmula do Excel (ou fórmulas) para contar a primeira ocorrência de um valor em um determinado ano para cada Pessoa na minha tabela. Eu procurei por questões relacionadas no Superuser sem sucesso. Para lhe dar algum contexto, cada Pessoa participou em um ou mais anos em um exame. Durante cada ano de exame, eles receberam uma ou mais pontuações (valores de 1 a 9 na tabela). Por exemplo, a Pessoa A teve dois escores (5,3) em 2011, um escore (2) em 2012 e dois escores (4,1) em 2013. No entanto, estou interessado apenas em contabilizar quantos anos cada Pessoa participou e eu não ligo para quais anos eles foram. Meus dados seguem:
Person 2011 2012 2013
A 5
A 3
A 2
A 4
A 1
B 7
B 6
C 1
C 9
C 4
C 2
D 5
Este é o resultado que eu quero:
Person Years
A 3
B 2
C 2
D 1
Eu tentei muitas maneiras complicadas / ineficientes para alcançar esse resultado usando uma combinação de SUM, COUNTIFS e VLOOKUP, mas sempre contou todos os valores e não a primeira ocorrência de um valor em um determinado ano. Eu simplesmente não consigo descobrir como fazer isso ou se é possível usar as funções do Excel. Eu não conheço o VBA, mas suspeito que possa ser necessário para isso. Agradecemos antecipadamente por sua ajuda.
Parece um trabalho para tabela dinâmica !
Realce sua tabela e vá para Inserir → tabela dinâmica e organize como quiser. Eu faria o seguinte -
Graças ao comentário de Raystafarian, posso fornecer uma resposta detalhada à minha própria pergunta. Usando uma tabela dinâmica, seleciono todo o meu intervalo de tabela. Na caixa de diálogo Lista de Campos da Tabela Dinâmica, adiciono Pessoa ao relatório e arraste todos os anos (ou seja, 2011, 2012, 2013) para o campo Valores . Fazer isso me dá esse resultado inicial:
Row Labels Count of 2011 Count of 2012 Count of 2013
A 2 1 2
B 1 1
C 2 2
D 1
Grand Total 6 3 3
Isso é fantástico, pois não só me permite contar o número de valores por linha, indicando quantos anos cada participante participou, mas também me informa quantas pontuações foram dadas por ano para cada pessoa.
Então, na minha etapa final, simplesmente adiciono a fórmula =COUNT(B2:D2)
na célula E2, em que Coluna A = Rótulos de Linha, Coluna B = Contagem de 2011, Coluna C = Contagem de 2012, Coluna D = Contagem de 2013, Coluna E = Anos e obter esse resultado:
Row Labels Count of 2011 Count of 2012 Count of 2013 Years
A 2 1 2 3
B 1 1 2
C 2 2 2
D 1 1
Grand Total 6 3 3