Динамические массивы Excel - создание нескольких динамических массивов на основе другого

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

По сути, я хотел бы знать, возможно ли использовать каждое из значений динамического массива в качестве входных данных для создания матрицы динамических массивов, или даже просто создать матрицу ниже (таблица 3) вместе только с одним массивом,

Таблицы 1 и 2 ниже представляют собой структурированные таблицы.

Таблица 1 - Клиенты:

| Client | Client Name |
|--------|-------------|
| C001   | Client 1    |
| C002   | Client 2    |
| C003   | Client 3    |

Таблица 2 - Документы:

| Document | Doc Description | Related Client |
|----------|-----------------|----------------|
| D001     | Doc 1           | C002           |
| D002     | Doc 2           | C002           |
| D003     | Doc 3           | C001           |
| D004     | Doc 4           | C002           |
| D005     | Doc 5           | C001           |

Таблица 3 - Предполагаемая динамическая таблица:

| Dynamic Array of "Clients" | Client 1 (*1) | Client 2 | Client 3 |
|----------------------------|---------------|----------|----------|
| Dyn. Arrays of "Documents" | D003 (*2)     | D001     | N/A      |
|                            | D005          | D002     |          |
|                            |               | D004     |          |

В таблице выше (*1) будет динамический массив, созданный с чем-то вроде:

=TRANSPOSE(Table1[Client])

И (*2) будет динамический массив, созданный с чем-то вроде:

=FILTER(Table2[Document], Table2[Related Client]={Client}, "N/A"}

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

Т.е. я могу использовать простые относительные ссылки на ячейки для {Client}, но когда динамический массив "Клиенты" изменяется (увеличивается), это не будет динамически регулировать область действия динамических массивов Document. Я подумал, что достаточно использовать ссылку на динамический массив, но она также не работает ({Client} #).

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

Это возможно?

Редактировать: я ищу ответ, используя динамические массивы в их степени, пожалуйста.

1 ответ

Ваша проблема может быть решена с помощью Helper Column along side of Table 2 :

Как это устроено:

  • Введите эту формулу в ячейку O40 и заполните его.

    =INDEX(M$34:M$36,MATCH(N40,L$34:L$36,0))
    
  • В клетке M48 введите эту формулу массива (CSE), нажмите Ctrl+Shift+Enter и заполните таблицу.

    {=IFERROR(INDEX($M$40:$M$44, SMALL(IF((M$47=$O$40:$O$44), MATCH(ROW($O$40:$O$44), ROW($O$40:$O$44)), ""),ROWS($A$1:A1))),"")}
    

NB

  • Вы можете заменить Blank с Not Aval, текстовое сообщение в последней части формулы Array,
    ROWS($A$1:A1))),"") и это должно быть написано как, ROWS($A$1:A1))),"Not Aval."),

При необходимости измените ссылки на ячейки в формуле.

Другие вопросы по тегам