Função AGRUPARPOR no Excel: Como Resumir Dados sem Criar Tabela Dinâmica

Você já perdeu tempo criando uma Tabela Dinâmica só para somar valores agrupados por categoria, e depois teve que atualizar tudo manualmente toda vez que os dados mudavam? Ou já montou uma fórmula de SOMASE para cada categoria separadamente, uma por uma, porque não queria mexer com Tabela Dinâmica?

Os dois caminhos têm problema. A Tabela Dinâmica exige clique em “Atualizar” sempre que a base muda, não se atualiza sozinha como uma fórmula, e formata os dados do seu jeito, fora do seu controle. Já o SOMASE repetido linha por linha vira um trabalho manual que não escala quando aparece uma categoria nova.

Neste artigo vamos mostrar como a função AGRUPARPOR resolve isso, agrupando e somando (ou tirando média, contando, etc.) dados diretamente em uma fórmula, com resultado dinâmico que se atualiza sozinho quando a base de dados muda.

O que é a função AGRUPARPOR

AGRUPARPOR é uma função de matriz dinâmica (equivalente à GROUPBY na versão em inglês) que agrupa linhas de uma base de dados por um critério e aplica uma agregação — soma, média, contagem, máximo, mínimo — sobre outra coluna. Na prática, ela faz o que uma Tabela Dinâmica faz, mas como uma fórmula só, que atualiza automaticamente.

DOMINE EXCEL COMIGO

QUERO APRENDER EXCEL

A sintaxe básica é:

=AGRUPARPOR(matriz_linha; matriz_valor; função)

  • matriz_linha: a coluna que você quer usar para agrupar (por exemplo, categoria, região, vendedor)
  • matriz_valor: a coluna com os números que serão agregados
  • função: como agregar — SOMA, MÉDIA, CONT.VALORES, MÁXIMO, MÍNIMO, entre outras

Exemplo prático

Imagine uma base de pedidos de uma loja online, começando na célula A1:

Tabela de pedidos com colunas Pedido, Cliente, Categoria e Valor

Para somar o valor total vendido em cada categoria, a fórmula fica:

=AGRUPARPOR(C2:C7; D2:D7; SOMA)

O resultado aparece automaticamente como uma nova matriz dinâmica, sem você precisar arrastar fórmula nem criar Tabela Dinâmica:

Resultado da função AGRUPARPOR somando valores por categoria

Repare que a função já identificou sozinha as três categorias existentes (Eletrônicos, Papelaria e Alimentos) e somou os valores de cada uma. Se você adicionar uma linha nova na base com uma categoria diferente, o resultado se expande automaticamente — não precisa editar a fórmula nem atualizar nada manualmente.

Agrupando por mais de uma coluna

A matriz_linha aceita mais de uma coluna ao mesmo tempo. Por exemplo, para agrupar por Categoria e por Cliente simultaneamente, basta informar as duas colunas juntas:

=AGRUPARPOR(B2:C7; D2:D7; SOMA)

O resultado passa a ter uma linha para cada combinação de cliente e categoria, exatamente como aconteceria em uma Tabela Dinâmica com dois campos na área de linhas.

Mais de uma agregação na mesma fórmula

Assim como a matriz_linha aceita múltiplas colunas, a matriz_valor também aceita. Isso permite trazer, por exemplo, a soma e a média na mesma fórmula:

=AGRUPARPOR(C2:C7; D2:D7; SOMA;MÉDIA)

O resultado traz duas colunas de agregação lado a lado — uma para a soma e outra para a média de cada categoria — sem precisar escrever duas fórmulas separadas.

Adicionando totais e ordenando o resultado

A função tem argumentos opcionais depois da função de agregação: cabeçalhos_de_campo, profundidade_total e ordem_de_classificação.

O argumento profundidade_total controla se aparece uma linha de total geral no resultado: 0 remove os totais, 1 mostra o total geral, e 2 mostra o total geral junto com subtotais, quando há mais de uma coluna agrupada. Já o ordem_de_classificação permite ordenar automaticamente o resultado por uma das colunas — um número positivo ordena de forma crescente, e negativo, decrescente.

Por exemplo, para somar por categoria já ordenando do maior para o menor valor:

=AGRUPARPOR(C2:C7; D2:D7; SOMA;; ; -2)

Filtrando dados antes de agrupar

Outro argumento opcional é a matriz_de_filtro, que permite excluir linhas da agregação sem precisar apagar nada da base original nem criar uma tabela auxiliar. Ela recebe uma matriz de VERDADEIRO/FALSO, do mesmo tamanho da base, indicando quais linhas devem entrar no cálculo.

Por exemplo, para somar por categoria considerando só os pedidos com valor acima de R$ 100, a fórmula ficaria:

=AGRUPARPOR(C2:C7; D2:D7; SOMA; ; ; ; D2:D7>100)

Isso evita ter que duplicar a base de dados só para aplicar um filtro antes de somar — o filtro entra direto como parte da fórmula, e continua dinâmico se os valores da base mudarem.

AGRUPARPOR vs SOMASE e Tabela Dinâmica

✅ AGRUPARPOR é melhor quando você quer um resumo que se atualiza sozinho, sem clicar em “Atualizar”, e sem escrever uma fórmula de SOMASE para cada categoria
❌ AGRUPARPOR não substitui a Tabela Dinâmica quando você precisa de recursos visuais avançados, como formatação condicional dentro da tabela, segmentações de dados (slicers) ou gráficos dinâmicos ligados diretamente a ela

Para um resumo rápido dentro de um relatório ou dashboard construído com fórmulas, a AGRUPARPOR costuma ser mais prática. Para uma análise exploratória, com filtros visuais e cliques, a Tabela Dinâmica ainda tem vantagem.

Erro comum

Um erro frequente é selecionar a matriz_linha e a matriz_valor com quantidades diferentes de linhas — por exemplo, incluir o cabeçalho em uma coluna e não na outra. Isso gera erro de incompatibilidade, porque a função espera que as duas matrizes tenham exatamente o mesmo número de linhas, célula por célula correspondendo à mesma linha da base de dados.

Antes de aplicar a fórmula, confira se as referências de matriz_linha e matriz_valor começam e terminam na mesma linha da planilha.

Disponibilidade

AGRUPARPOR é uma função recente, disponível no Excel 365 (assinatura, canal atual), no Excel para Mac 365, no Excel na Web e no Excel 2024 (versão vitalícia mais recente). Ela não está disponível em versões anteriores, como Excel 2021, 2019 ou 2016. No Google Sheets também não existe uma função equivalente direta — o mais próximo de reproduzir esse comportamento por lá é a função QUERY.

Se você abrir uma planilha com AGRUPARPOR em uma versão do Excel que não suporta a função, vai ver um erro de nome inválido no lugar do resultado.

Compartilhe ou Comente

Se você curtiu esse artigo aonde mostramos como usar a função AGRUPARPOR para agrupar e somar dados sem precisar criar uma Tabela Dinâmica, compartilhe com as suas redes sociais e não se esqueça de deixar um comentário aqui embaixo caso você tenha ficado com alguma dúvida.

Você já testou a AGRUPARPOR na sua planilha? Prefere ela ou ainda usa Tabela Dinâmica no dia a dia? Conta para nós nos comentários!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *