Executar soma sobre produtos condicionais

3

Eu tenho uma lista como esta

╔═════╦═══╗
║ 1.5 ║ A ║
║ 2.5 ║ B ║
║ 2.5 ║   ║
║ 5.2 ║ A ║
║ 6.4 ║ C ║
╚═════╩═══╝

e deseja como resultado:

╔═══╦═════╗
║ A ║ 6.7 ║
║ B ║ 2.5 ║
║ C ║ 6.4 ║
╚═══╩═════╝

Então eu quero a soma de todos os elementos onde A, B, C ocorrem o que corresponderia a este pseudo código: SUM( column1 .* ( column2 == 'A' ) ) , SUM( column1 .* ( column2 == 'B' ) ) etc ... Como eu posso fazer algo assim no LibreOffice?

    
por bonanza 19.12.2015 / 13:45

2 respostas

3

Acho que você está procurando por essa função:

SUMIF

Adds the cells specified by a given criteria. This function is used to browse a range when you search for a certain value.

The search supports regular expressions. You can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must precede every character with a \ character. You can switch the automatic evaluation of regular expression on and off in Tools - Options - LibreOffice Calc - Calculate.

Syntax

SUMIF(Range; Criteria; SumRange)

Range is the range to which the criteria are to be applied.

Criteria is the cell in which the search criterion is shown, or the search criterion itself. If the criteria is written into the formula, it has to be surrounded by double quotes.

SumRange is the range from which values are summed. If this parameter has not been indicated, the values found in the Range are summed.

SUMIF supports the reference concatenation operator (~) only in the Criteria parameter, and only if the optional SumRange parameter is not given.

- Na ajuda do Calc - página da web ou ajuda integrada F1 . Ele tem uma tonelada de informações úteis, tente a pesquisa e navegue um pouco.

Assim, por exemplo, uma entrada como esta:

=SUMIF(B1:B5,"A",A1:A5)

Examinaria as células B1 a B5, e se elas fossem iguais a A (usando "= A" também funciona, poderia fazer "> = A" etc), então a entrada correspondente em A1 a A5 será SUM-ed. p>

por 19.12.2015 / 14:43
4

Em vez de adicionar manualmente funções SUMIF para todos os valores em Col 2, basta usar uma tabela dinâmica. Acabei de adicionar uma linha de cabeçalho:

Agora.bastaselecionaraáreadedados(aqui:A1:B6),selecioneomenuData->Pivottable>Create...,confirmeCurrentselectioncomOKearrasteoscabeçalhosdascolunasnoscamposapropriados:

Éisso-cliqueemOK.Oresultadoéoseguinte:

Isso é realmente útil com tabelas de dados maiores. Tabelas dinâmicas são especialmente úteis se você quiser aplicar diferentes operações aritméticas do que apenas somar valores: você pode contar os valores, calcular a média e muito mais.

    
por 19.12.2015 / 16:13