Файл с решением прилагаю.
Есть один ньюанс: у меня Excel 2016 и в нём есть встроенная функция SplitWithoutRepeats().
Код |
---|
=INDEX(SplitWithoutRepeats(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(TEXTJOIN(";";;IF(A3:A22=MATCH(E3;B3:B22;0);"@";B3:B22));";@;";";");";@";"");"@;";"");";");RANDBETWEEN(1;19)) |
Эта функция преобразует текст, полученной в результате функции TEXTJOIN в виртуальный диапазон, из которого функция INDEX и вытягивает случайное значение.
Возможно она у меня появилась после того, как была поставлена надстройка OpenSolver, но точно утверждать не буду. Без неё результата не получить, а как корректно SplitWithoutRepeats() заменить - не знаю...