Как написать формулу MAX IF в VBA для достижения поиска по двум значениям

64
7

Я использую формулу массива для поиска записи имени ресурса, расположенной в столбце Y, ищите имя проекта в столбце B и возвращаете последнее значение/значение даты в столбце AE с помощью функции MAX.

Теперь это прямо сказано, убивая мою таблицу из-за огромного объема данных в электронной таблице (60 000 строк). Формула:

{=IF(Y3="","",IFERROR(MAX(IF(Y$2:$Y$60000=Y3,IF($B$2:$B$60000=B3,$AE$2:$AE$60000))),""))}

Если мы посмотрим на таблицу ниже, формула вернется 21/04/2014 для Ричарда и 21/06/2014 для Фреда, которые оба работают над проектом Capitol.

   B     |     Y     |     AE
Capitol Richard 21/03/2014
Capitol Richard 21/04/2014
Capitol Fred 21/05/2014
Capitol Fred 21/06/2014

Мне интересно, есть ли способ переписать эту формулу в VBA, чтобы получить тот же результат, но запустить ее с более эффективной памятью? Я новичок в VBA, но медленно учился.

спросил(а) 2021-01-19T16:45:07+03:00 6 месяцев, 2 недели назад
1
Решение
64

Сводная таблица вернет результаты, которые вы упомянули:

SO26248906 example

ответил(а) 2021-01-19T16:45:07+03:00 6 месяцев, 2 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема