Потрібно витягти декілька збігів зі списку значень


0

Я намагаюся витягнути дані з робочого аркуша за допомогою формули масиву, але він поверне лише одне (перше, яке знайде) значення. Я використовую формулу:

=INDEX($C$2:$C$8, SMALL(IF($B12=$B$2:$B$8, ROW($B$2:$B$8)-MIN(ROW($B$2:$B$8))+1, ""), 1)) знайдені тут

Коли я слідую за прикладом, я не отримую такого ж результату, як той, хто опублікував відповідь. Чи може формула була "жировою пальцем"?


1
@Dave - це ідіома (?) Для бухгалтерів, які помилково вводять номери на калькуляторі, коли ще використовувались стрічки і "10-ключ" - це навик.
Райстафаріан

Відповіді:


0

Я використовую наступну формулу для повернення декількох значень, що відповідають одним і тим же критеріям.

{=IFERROR(INDEX([Return Value Range],SMALL(IF([Criteria Range]=[Criteria],ROW([Criteria Range])),ROW(1:1))),"")}

Коли ви вводите його, не включайте {} і пам’ятайте, що формули масиву потрібно вводити, натискаючи Ctrl + Shift + Enter, а не просто Enter. Якщо натиснути просто Enter, це поверне лише перший результат.


Це не працює для мене зі зразками даних.
Френк Штайнерт

Ви відображаєте результати вертикально чи горизонтально? Якщо ви їх відображаєте горизонтально, вам потрібно буде вручну збільшити ROW (1: 1). У другому стовпці повинно бути ROW (2: 2), а в третьому ROW (3: 3) тощо.
Fercstar

Так, я показую їх горизонтально. Чи є кращий спосіб збільшити його замість вручну? Схоже, коли я змінюю один рядок, а потім наступний, вони всі змінюються. Дякую за твою допомогу!
Френк Штайнерт

Здається, не існує способу автоматичного збільшення ROW (1: 1 :), якщо результати горизонтальні, оскільки рядок не змінюється при перетягуванні формули по горизонталі. Якщо дані можна відобразити вертикально, вони автоматично збільшать ROW () при перетягуванні формули вниз.
Fercstar
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.