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 não quero definir manualmente a primeira e a última linha a serem consideradas, mas para obter todas as linhas ...

Isso falha com #VALUE! erro:

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

Isso funciona:

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

Em C1 e E1 Eu 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 o SUMPRODUCT...

Existe uma solução melhor?

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 Ctrl + Mudança + Entrar , não apenas Entrar )


Boa sugestão, infelizmente só uso funções de array raramente ... Ainda assim, essa solução teria que ser misturada com a minha embora, como não resolve o problema de excluir a primeira linha ...
prom85

Eu tentei e ele funciona bem, mas não ignora as células de texto ... Portanto, eu recebo o #VALUE erro também ...
prom85

Perfeito, agora é legível e funciona. Muito melhor que a minha solução. obrigado
prom85

0

Existe uma solução melhor?

Sim existe.

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

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

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


Não sabia isso. Eu ainda prefiro uma solução onde todas as ações necessárias são feitas diretamente na célula ...
prom85

0

Logo depois de 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 & gt; = 0, para mim isso está funcionando bem. Dependendo do caso de uso, você teria que ajustar a função de correspondência ...


o que é "WAHR" na sua fórmula?
Máté Juhász

1
Desculpe, esqueci de traduzir esta palavra ... Excel usa nomes de funções locais .. WAHR é verdadeiro em alemão ...
prom85
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.