Задача формулы массива Excel - PullRequest
0 голосов
/ 29 марта 2020

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

Эта формула, я думаю, должна работать, но не работает, и я не уверен, почему. Где я ошибаюсь?

{= IFERROR (INDEX (_Model, МАЛЕНЬКИЙ (IF (_Series = $ D $ 2, ROW ($ A $ 1: $ A $ 10)), IF (MID (_Series, SEARCH ($) D $ 2, _Series, 1), LEN ($ D $ 2)) = $ D $ 2, СТРОКА ($ A $ 1: $ A $ 10), "")), СТРОКА (А1 $))), "")}

В приведенном ниже примере ссылки эта формула находится в ячейках F2: F11 Именованные диапазоны: _Model = A2: A11 _Series = B2: B11

Example

1 Ответ

1 голос
/ 29 марта 2020

Если у вас есть Dynami c Array Formula FILTER(), укажите это в F2:

=FILTER(_Model,ISNUMBER(SEARCH(","&$D$2&",",","&_Series&",")))

Если не поместите это в F2 и скопируйте:

=IFERROR(INDEX(_Model,AGGREGATE(15,7,(ROW(_Series)-MIN(ROW(_Series))+1)/(ISNUMBER(SEARCH(","&$D$2&",",","&_Series&","))),ROW($ZZ1))),"")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...