Формула для поиска самой последней даты и на основе дополнительных критериев соответствия с использованием AGGREGATE - PullRequest
0 голосов
/ 18 июня 2019

Обновление: я пытался сделать это с помощью Index / Match, но самый эффективный метод - использование AGGREGATE

В таблице процентных ставок я рассчитываю ввести ставку, связанную с правильным тенором на основе самой последней даты. Я пытаюсь сделать это с индексом соответствия, но будет открыт для других формул, если они работают эффективно. Эти данные будут обновляться динамически, поэтому мне нужна формула, которая всегда находит самую последнюю дату

Желаемый выход = 80

Токовый выход = 71

=Index (A1:E100, And(Max(A2:A100), Match(F1,B1:B100,0)), 4)


Cell F1 = 3Y



Data Table (rows 1 through 00)


A              B     C     D      E

DATE         TENOR INDEX SPREAD END_DATE
9/30/2015 0:00  3M  3ML 21.25   3/31/2016 0:00
9/30/2015 0:00  6M  3ML 21.25   3/31/2016 0:00
9/30/2015 0:00  1Y  3ML 21.25   3/31/2016 0:00
9/30/2015 0:00  3Y  3ML 71.00   3/31/2016 0:00
9/30/2015 0:00  5Y  3ML 98.50   3/31/2016 0:00
9/30/2015 0:00  10Y 3ML 137.5   3/31/2016 0:00
4/1/2016 0:00   3M  3ML 21.25   4/30/2016 0:00
4/1/2016 0:00   6M  3ML 21.25   4/30/2016 0:00
4/1/2016 0:00   1Y  3ML 21.25   4/30/2016 0:00
4/1/2016 0:00   3Y  3ML 73.50   4/30/2016 0:00
4/1/2016 0:00   5Y  3ML 101.00  4/30/2016 0:00
4/1/2016 0:00   10Y 3ML 141.00  4/30/2016 0:00
5/1/2016 0:00   3M  3ML 21.25   5/31/2016 0:00
5/1/2016 0:00   6M  3ML 21.25   5/31/2016 0:00
5/1/2016 0:00   1Y  3ML 21.25   5/31/2016 0:00
5/1/2016 0:00   3Y  3ML 72.50   5/31/2016 0:00
5/1/2016 0:00   5Y  3ML 100.00  5/31/2016 0:00
5/1/2016 0:00   10Y 3ML 140.00  5/31/2016 0:00
6/1/2016 0:00   3M  3ML 21.25   6/30/2016 0:00
6/1/2016 0:00   6M  3ML 21.25   6/30/2016 0:00
6/1/2016 0:00   1Y  3ML 21.25   6/30/2016 0:00
6/1/2016 0:00   3Y  3ML 80.00   6/30/2016 0:00
6/1/2016 0:00   5Y  3ML 107.50  6/30/2016 0:00
6/1/2016 0:00   10Y 3ML 152.50  6/30/2016 0:00

Ответы [ 2 ]

2 голосов
/ 18 июня 2019

Тем более что данные будут обновляться и, возможно, расширяться (или сокращаться), я решил использовать Table со структурированными ссылками.

Я также переместил диапазон выбора Tenor на G1, чтобы убрать его со стола.

=AGGREGATE(14,6,(Table1[DATE]=MAX(Table1[DATE]))*(Table1[Tenor]=G1)*Table1[SPREAD],1)

Вы также можете использовать:

=MAX((Table1[DATE]=MAX(Table1[DATE]))*(Table1[Tenor]=G1)*Table1[SPREAD])

но вы должны подтвердить эту формулу массива с помощью Ctrl + Shift + Enter

enter image description here

0 голосов
/ 18 июня 2019

Вы можете сделать это, используя:

{=INDEX(D2:D24,MATCH(1,(F1=B2:B24)*(MAX(A2:A24)=A2:A24),0))}

Обязательно используйте ctrl+shift+enter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...