Uma família de softwares de planilhas da Microsoft com ferramentas para analisar, criar gráficos e comunicar dados.
Em G251, entre a fórmula:
=SOMARPRODUTO(G2:G250;--(H2:H250="À VISTA");SUBTOTAL(103;DESLOC(H2:H250;LIN(H2:H250)-LIN(H2);0;1)))
Não há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
Preciso de uma fórmula que retorne no campo TOTAL o subtotal conforme o filtro de data e que esse subtotal seja referente somente a forma de pagamento À VISTA. Pensei nas fórmulas subtotal com cont.se. É possível? Segue abaixo o print da planilha.
Ficaria muito grato se alguém pudesse me ajudar.
Uma família de softwares de planilhas da Microsoft com ferramentas para analisar, criar gráficos e comunicar dados.
Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.
Resposta aceita pelo autor da pergunta
Em G251, entre a fórmula:
=SOMARPRODUTO(G2:G250;--(H2:H250="À VISTA");SUBTOTAL(103;DESLOC(H2:H250;LIN(H2:H250)-LIN(H2);0;1)))
Júnior,
Por que não cria uma tabela dinâmica? Ela é perfeita para situações como a sua.
Olá DR2015!
Desconheço uma maneira de atender sua necessidade utilizando as funções nativas do Excel. A função que chega mais próxima é a SUBTOTAL utilizando o número de função 109, que corresponde a soma desconsiderando os valores ocultos, que atenderia a sua necessidade desde que a coluna H de forma de pagamento também estivesse filtrada pelo tipo "À Vista".
A fórmula baseado na sua imagem ficaria =SUBTOTAL(109;G2:G250)
Agora, se você realmente precisa deixar sem filtro a coluna H de pagamento, só enxergo a possibilidade de criar uma função personalizada para realizar o cálculo descrito. Para isso insira o código abaixo em um novo módulo do VBA:
Option Explicit
Option Compare Text
Function SOMARESPECIAL(rngSoma As Excel.Range, _
rngA As Excel.Range, _
filter As Variant) As Variant
Dim cell As Excel.Range
Dim i As Integer
Dim lSoma As Variant
i = 1
lSoma = 0
For Each cell In rngA
If Rows(cell.Row & ":" & cell.Row).Hidden = False Then
If cell.Value = filter Then
lSoma = WorksheetFunction.Index(rngSoma, i) + lSoma
End If
End If
i = i + 1
Next cell
SOMARESPECIAL = lSoma
End Function
Então, na planilha você poderá aplicar a função personalizada:
=SOMARESPECIAL(G2:G250;H2:H250;"À VISTA")
Essa função ficou com esta sintaxe: SOMARESPECIAL(intervalo_soma;intervalo_critério;Critério)
A função vai somar somente as linhas que estiverem visíveis.
Espero que tenha ajudado.
Abraços!
Valeu fera, você é bom mesmo!!!
Excelente Felipe!
Vivendo e aprendendo a cada dia!