Excel SUMPRODUCT - exclui células de cabeçalho da fórmula

2

Eu tenho duas colunas, uma com uma data e outra com valores, e quero somar todas as células, onde o ano da data é o ano desejado. Meu problema é que eu tenho cabeçalhos na tabela, e eu não quero definir manualmente a primeira e a última linha a serem consideradas, mas pegar todas as linhas ...

Isso falha com o erro #VALUE! :

=SUMPRODUCT((YEAR(C:C)=2015)*(E:E))

Isso funciona:

 =SUMPRODUCT((YEAR(C2:C1000)=2015)*(E2:E1000))

Em C1 e E1 , tenho cabeçalhos (texto). Eles são formatados como texto e em fórmulas simples, o suficiente para tê-los excluídos da fórmula, mas isso não está funcionando com SUMPRODUCT ...

Existe uma solução melhor?

    
por prom85 04.02.2016 / 08:40

3 respostas

1

Uma outra sugestão, ligeiramente mais legível.

=SUM(IFERROR((YEAR(C:C)=2015)*E:E,0))

Use isso como uma função de matriz (Pressione Ctrl + Deslocamento + Digite , não apenas Digite )

    
por 04.02.2016 / 09:20
0

Is there a better solution?

Sim, existe.

Use as tabelas (selecione o seu intervalo e, em seguida: Inserir - Tabela), e aí você pode escrever sua fórmula como:

=SUMPRODUCT((YEAR(Table1[HeaderC])=2015)*(Table1[HeaderE]))

Claro, em vez de HeaderC , escreva o cabeçalho real na coluna C, e o mesmo para a coluna E.

    
por 04.02.2016 / 09:24
0

Logo após postar, tive uma ideia e funciona:

Solução:

=SUMPRODUCT((YEAR(INDIRECT("C2:C"&(MATCH(0;E:E;-1));TRUE))=2015)*(INDIRECT("E2:E"&(MATCH(0;E:E;-1));TRUE)))

A função match encontra a última célula com um valor > = 0, para mim isso está funcionando bem. Dependendo do caso de uso, você teria que ajustar a função de correspondência ...

    
por 04.02.2016 / 09:19