Eu tenho uma função do Excel que localiza o índice AmountNamedRangedo segundo maior valor, uma vez que o correspondente DateNamedRangeestá nos últimos trinta dias.
=ArrayFormula(Match(Large(If(DateNamedRange > Today() - 30, AmountNamedRange, 0), 2), AmountNamedRange, 0))
Isso funciona bem o suficiente, desde que não haja outras linhas na tabela com a mesma quantidade. Se existe, porém, essa fórmula fornece o índice da primeira linha com a mesma quantidade que a segunda maior quantidade nos últimos trinta dias. Percebo que minha explicação é confusa, então aqui está um exemplo (suponha que hoje seja 31/01/2017):
1 Date Amount
2 12/2/2016 27
3 12/6/2016 66
4 12/15/2016 99
5 1/8/2017 45
6 1/20/2017 27
7 1/22/2017 18
Nesse caso, o segundo maior valor nos últimos 30 dias é 27 (índice 6), mas minha fórmula retornará o índice 2 porque Matchlocaliza a primeira linha da tabela que corresponde ao valor. Como posso modificar minha fórmula para retornar corretamente 6?

Large()retorna. Nesse caso, ele deve ser 6 porque o índice 2 não está dentro do intervalo de 30 dias.