Skip to main content

Kutools para Office — Uma Suíte. Cinco Ferramentas. Aumente sua Produtividade.

Como calcular a média ponderada no Excel?

Author Kelly Last modified

As médias ponderadas são comumente usadas em cenários onde diferentes itens contribuem de forma desigual para o resultado geral. Por exemplo, ao analisar uma lista de compras que inclui preços de produtos, pesos e quantidades, usar a função MÉDIA regular no Excel apenas calcularia a média aritmética simples, ignorando com que frequência ou quão pesadamente os itens aparecem. No entanto, em muitos casos de negócios ou orçamentos, você pode precisar calcular uma média ponderada — como o preço médio por unidade, considerando quantidades ou pesos — de modo que o impacto de cada item seja proporcional à sua importância. Este artigo abordará como calcular médias ponderadas no Excel, incluindo situações com critérios específicos, bem como técnicas adicionais usando VBA e Tabelas Dinâmicas para requisitos mais dinâmicos ou complexos.

Calcular média ponderada no Excel

Calcular média ponderada se atender a critérios fornecidos no Excel

Código VBA – Automatizar cálculo de média ponderada para intervalos dinâmicos ou múltiplos critérios


Calcular média ponderada no Excel

Suponha que você tenha uma lista de compras conforme mostrado na captura de tela abaixo. Embora a função MÉDIA do Excel forneça a média de preço sem levar em conta o peso ou quantidade, uma abordagem mais precisa nesses casos é calcular a média ponderada. Isso reflete melhor o custo real por unidade, dando maior influência aos itens com pesos ou frequências maiores no resultado final.

a screenshot showing the original data

Para calcular o preço médio ponderado, use uma combinação das funções SOMARPRODUTO e SOMA da seguinte forma:

Selecione uma célula em branco, como F2, insira a seguinte fórmula:

=SUMPRODUCT(C2:C18,D2:D18)/SUM(C2:C18)

e pressione a tecla Enter para obter o resultado.

a screenshot showing how to use the formula to calculate weighted average

Observação: Nesta fórmula, C2:C18 refere-se à coluna Peso, e D2:D18 refere-se à coluna Preço. Ajuste esses intervalos conforme necessário para seu próprio layout de dados. A função SOMARPRODUTO multiplica cada peso pelo preço correspondente e soma os resultados, enquanto SOMA totaliza os pesos — produzindo a média ponderada correta. Certifique-se de usar intervalos de comprimento igual e garantir que não haja células desencontradas ou vazias em seus dados, pois isso poderia levar a erros de cálculo.

Se a média ponderada calculada exibir muitas ou poucas casas decimais para sua preferência, selecione a célula, clique no botão Aumentar Casas Decimais botão a screenshot of the Increase Decimal button ou Diminuir Casas Decimais botão a screenshot of the Decrease Decimal button na aba Início para ajustar as casas decimais exibidas conforme necessário.

a screenshot of selecting one of the decimal type

Se você encontrar um erro como #VALOR!, verifique novamente se cada célula referenciada contém um valor numérico e se os intervalos são consistentes. Além disso, evite incluir qualquer linha de cabeçalho no intervalo de cálculo para garantir resultados precisos. Ao trabalhar com conjuntos de dados maiores, considere usar intervalos nomeados para maior clareza e facilidade de manutenção.


Calcular média ponderada se atender a critérios fornecidos no Excel

A fórmula anterior calcula o preço médio ponderado para todos os itens. Na análise prática, você pode querer a média ponderada para categorias específicas, como encontrar o preço médio ponderado apenas para Maçãs. Nesses casos, você pode aprimorar a fórmula para incluir uma condição com base nos seus critérios.

Para fazer isso, selecione uma célula em branco, como F8, e insira a seguinte fórmula:

=SUMPRODUCT((B2:B18="Apple")*C2:C18*D2:D18)/SUMIF(B2:B18,"Apple",C2:C18)

Em seguida, pressione a tecla Enter para calcular a média ponderada que atende seus critérios específicos. Essa fórmula multiplica cada par de peso e preço somente se o item corresponder à condição (“Maçã” neste caso), soma-os e divide pela soma dos pesos apenas para esse item.

a screenshot showing how to use formula to calculate weighted average if meeting given criteria

Observação: Aqui, B2:B18 é a coluna Fruta, C2:C18 é o Peso, e D2:D18 é o Preço. Substitua “Maçã” por outro item conforme necessário. Esse método funciona bem para filtragem por uma condição; se você precisar filtrar por múltiplos critérios (por exemplo, tipo de fruta e fornecedor), uma coluna auxiliar ou fórmula mais avançada pode ser necessária.

Depois de aplicar a fórmula, você pode querer ajustar as casas decimais para maior clareza. Selecione a célula de resultado e use os botões Aumentar Casas Decimais a screenshot of the Increase Decimal button ou Diminuir Casas Decimais a screenshot of the Decrease Decimal button2 na aba Início para alterar as casas decimais exibidas.

a screenshot of selecting one of the decimal type2

Caso a fórmula retorne um resultado inesperado, confirme que os critérios têm correspondências dentro do intervalo alvo e observe se há células em branco ou entradas de texto em colunas destinadas a serem numéricas.


Código VBA – Automatize o cálculo da média ponderada para intervalos de dados dinâmicos ou múltiplos critérios

Em algumas situações, você pode frequentemente precisar calcular médias ponderadas em intervalos que mudam de tamanho, contêm valores ausentes ou exigem filtragem flexível, como aplicar vários critérios de uma só vez. Em vez de atualizar manualmente fórmulas ou intervalos, automatizar o cálculo com uma macro VBA pode economizar tempo e reduzir as chances de erros — especialmente útil ao lidar com grandes conjuntos de dados ou dados atualizados regularmente.

Aqui está como criar e usar uma macro VBA para médias ponderadas:

1. Clique em Desenvolvedor > Visual Basic (ou pressione Alt + F11) para abrir a janela do editor do Microsoft Visual Basic for Applications. Em seguida, clique em Inserir > Módulo, depois cole o código abaixo na nova janela de módulo:

Sub WeightedAverageVBA()
    Dim rngCriteria As Range
    Dim rngWeight As Range
    Dim rngValue As Range
    Dim criteriaStr As String
    Dim totalWeighted As Double
    Dim totalWeight As Double
    Dim i As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rngCriteria = Application.InputBox("Select the range for criteria (optional, press Cancel to skip):", xTitleId, Type:=8)
    criteriaStr = Application.InputBox("Enter criteria for filtering (leave blank for all):", xTitleId, Type:=2)
    Set rngWeight = Application.InputBox("Select the Weight (numeric) range:", xTitleId, Type:=8)
    Set rngValue = Application.InputBox("Select the Value (e.g. Price) range:", xTitleId, Type:=8)
    
    totalWeighted = 0
    totalWeight = 0
    
    If rngCriteria Is Nothing Or criteriaStr = "" Then
        For i = 1 To rngWeight.Cells.Count
            If IsNumeric(rngWeight.Cells(i).Value) And IsNumeric(rngValue.Cells(i).Value) Then
                totalWeighted = totalWeighted + rngWeight.Cells(i).Value * rngValue.Cells(i).Value
                totalWeight = totalWeight + rngWeight.Cells(i).Value
            End If
        Next i
    Else
        For i = 1 To rngWeight.Cells.Count
            If rngCriteria.Cells(i).Value = criteriaStr Then
                If IsNumeric(rngWeight.Cells(i).Value) And IsNumeric(rngValue.Cells(i).Value) Then
                    totalWeighted = totalWeighted + rngWeight.Cells(i).Value * rngValue.Cells(i).Value
                    totalWeight = totalWeight + rngWeight.Cells(i).Value
                End If
            End If
        Next i
    End If
    
    If totalWeight = 0 Then
        MsgBox "Weighted average cannot be calculated: total weight is zero.", vbExclamation, xTitleId
    Else
        MsgBox "Weighted average: " & totalWeighted / totalWeight, vbInformation, xTitleId
    End If
End Sub

2. Pressione F5 (ou clique no botão Run button Executar) para executar.
Você será solicitado a selecionar os intervalos passo a passo (intervalo de critérios — isso pode ser ignorado se não necessário, intervalo de pesos e intervalo de valores). Você também pode inserir critérios específicos para filtrar seu cálculo ou deixá-lo em branco para considerar todos os dados. A macro suporta intervalos de dados dinâmicos, tornando-a prática se sua tabela crescer ou mudar regularmente.

Finalmente, você receberá uma caixa de mensagem listando o resultado da média ponderada.

Dicas:

  • Essa abordagem automatiza análises repetitivas de média ponderada e pode ser expandida para lidar com filtros ou opções de saída adicionais.
  • Certifique-se de que os intervalos selecionados têm o mesmo comprimento e que os tipos de dados são consistentes.
  • Inclua tratamento básico de erros conforme mostrado (por exemplo, em casos onde nenhum peso válido é encontrado ou a soma dos pesos é zero).
  • Se você quiser aplicar apenas às linhas visíveis/filtradas, poderá aprimorar ainda mais o código com enumeração de células especiais.

Se você encontrar problemas de permissão ou segurança de macros, certifique-se de que as macros estão habilitadas nas configurações do Excel antes de executar o código.


Artigos relacionados:


Melhores Ferramentas de Produtividade para Office

🤖 Kutools AI Aide: Revolucione a análise de dados com: Execução Inteligente   |  Gerar Código  |  Criar Fórmulas Personalizadas  |  Analisar Dados e Gerar Gráficos  |  Chamar Funções Aprimoradas
Recursos Populares: Localizar, Destacar ou Marcar Duplicatas   |  Excluir Linhas em Branco   |  Consolidar Colunas ou Células sem Perder Dados   |   Arredondar...
Super PROC: Procura por múltiplos critérios    Procura por múltiplos valores  |   Procura em várias planilhas   |   Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente Lista suspensa  |  Lista suspensa dependente  |  Lista suspensa com múltipla seleção ...
Gerenciador de Colunas: Adicionar número específico de colunas  | Mover Colunas  | Alternar status de visibilidade de Colunas ocultas |  Comparar Intervalos & Colunas...
Recursos em Destaque: Grade de foco   |  Visualização de Design  |  Barra de fórmulas aprimorada    Gerenciador de Pasta de trabalho & Planilha   |  Biblioteca de AutoTexto (Auto Text)   |  Selecionador de Data   |  Mesclar Dados   |  Criptografar/Descriptografar Células    Enviar Email por Lista   |  Super Filtro   |   Filtro Especial (filtrar negrito/itálico/tachado...) ...
Os 15 Principais Conjuntos de Ferramentas: 12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...)  | 50+ Tipos de Gráficos (Gráfico de Gantt, ...)  | 40+ Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...)  | 19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem pelo Caminho, ...)  | 12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...)  | 7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ...e muito mais
Use o Kutools no idioma de sua preferência – compatível com Inglês, Espanhol, Alemão, Francês, Chinês e mais de40 idiomas!

Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência incomparável. Kutools para Excel oferece mais de300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para acessar o recurso que você mais precisa...


Office Tab traz interface com abas para o Office e facilita muito seu trabalho

  • Habilite edição e leitura por abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie múltiplos documentos em novas abas de uma mesma janela, em vez de em novas janelas.
  • Aumente sua produtividade em50% e economize centenas de cliques todos os dias!

Todos os complementos Kutools. Um instalador

O pacote Kutools for Office reúne complementos para Excel, Word, Outlook & PowerPoint, além do Office Tab Pro, sendo ideal para equipes que trabalham em vários aplicativos do Office.

Excel Word Outlook Tabs PowerPoint
  • Pacote tudo-em-um — complementos para Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Um instalador, uma licença — configuração em minutos (pronto para MSI)
  • Trabalhe melhor em conjunto — produtividade otimizada entre os aplicativos do Office
  • Avaliação completa por30 dias — sem registro e sem cartão de crédito
  • Melhor custo-benefício — economize comparado à compra individual de add-ins