Excel - получить значение в массиве - PullRequest
1 голос
/ 16 мая 2019

В моей организации есть пара функций Excel, которые возвращают большой массив, например, более 2000 строк и несколько столбцов.

Пустой код / ​​Пустой пример:

{=FunctionThatReturnArray(param1)}

где param1это дата

Screenshot

Мне нужно получить продажную цену комбинации «Обувь» «Желтая» на разные даты.

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

Вместо этого я хотел бы отображать только то значение, которое мне нужно.

Я пытался использовать функцию индекса, как показано ниже,но поскольку комбинация «обувь / желтый» не всегда в пятом ряду, она не работает.

{=INDEX(FunctionThatReturnArray(param1),5,4)}

, где 5 - это RowNumber, а 4 - ColNumber

. Мне кажется, мне нужноиспользовать функцию соответствия каким-либо образом, но в двух разных столбцах.

Как я могу это сделать, не отображая весь массив на своем листе?

Заранее спасибо и всего наилучшего Largo

1 Ответ

0 голосов
/ 16 мая 2019

Я не уверен, что это тот ответ, который вам нужен, но вы правы, вам нужно будет сопоставить оба столбца, как 2-й, так и 3-й, а затем индексировать в 4-й столбец следующим образом:

=INDEX({43466,"Pants","Yellow",40;43466,"Shirt","Green",20;43466,"Shoes","Blue",70;43466,"Shoes","Yellow",75},MATCH(1,
(INDEX({43466,"Pants","Yellow",40;43466,"Shirt","Green",20;43466,"Shoes","Blue",70;43466,"Shoes","Yellow",75},0,2)=B2)*
(INDEX({43466,"Pants","Yellow",40;43466,"Shirt","Green",20;43466,"Shoes","Blue",70;43466,"Shoes","Yellow",75},0,3)=C2),0),4)

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

enter image description here

Кстати, 43466 - это числовое представление 1/1 / 2019.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...