Значение MAX с использованием поиска для списка через запятую в одном из столбцов в Excel - PullRequest
2 голосов
/ 24 октября 2019

Эта формула НАСТОЛЬКО близка к тому, что я ищу.

Keys            Scores          
k1  10          k1,k2
k2  15          k3
k3  8           k1,k2,k3


=SUMPRODUCT(SUMIFS(B:B,A:A,TRIM(MID(SUBSTITUTE(E2,",",REPT(" ",999)),(ROW($ZZ$1:INDEX($ZZ:$ZZ,LEN(E2)-LEN(SUBSTITUTE(E2,",",""))+1))-1)*999+1,999))))

Она прекрасно работает, но вместо того, чтобы предоставить СУММУ баллов, она мне нравится, чтобы обеспечить максимальное значение баллов на основевведена разделенная запятыми строка.

Можно ли это сделать?

Попытка замены MAX и MAXA для SUMPRODUCT

Example of current functionality.

В этом примере мой dep_val указывает дату окончания, на которую я хочу сослаться, чтобы заполнить дату начала, при этом разрешая только рабочие дни и не праздники, и это работает хорошо.

Что я хотел бы сделать, это ввести строку, такую ​​как3,4,5 в качестве dep_val для Задачи 6 и имеют формулу, возвращающую значение MAX Дата окончания в Задачах 3,4, & 5.

Надеюсь, это прояснит ситуацию.

Ответы [ 2 ]

1 голос
/ 24 октября 2019

Вы можете использовать MAX () вместо SUMPRODUCT (), но затем вам нужно ввести формулу в виде формулы массива с помощью Ctrl + Shift + Enter.

enter image description here

0 голосов
/ 25 октября 2019

Формула решения для Excel 2013 или выше с использованием функции FILTERXML

Формула в F2, скопированная:

=AGGREGATE(14,,LOOKUP(FILTERXML("<a><b>"&SUBSTITUTE(E2,",","</b><b>")&"</b></a>","//b"),A$2:B$4),1)

Редактировать: приведенная выше формула Список поиска должен быть отсортирован по возрастаниюпорядок, потому что использование функции LOOKUP и это нормальная формула.

Или,

Вы можете использовать функцию VLOOKUP без сортировки, и это формула массива должна быть подтверждена с помощью SHIFT + CTRL+ ENTER запись

=MAX(VLOOKUP(T(IF({1},FILTERXML("<a><b>"&SUBSTITUTE(E2,",","</b><b>")&"</b></a>","//b"))),A$2:B$4,2,0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...