LibreOffice Calc - несколько INDEX-MATCH и копирование в другие ячейки

304
Ansel Pol

Я только начинаю использовать LibreOffice Calc, чтобы попытаться управлять своими финансами, и импортировал CSV-отчеты из моего банка.

Первая задача, которую я хотел бы выполнить, состоит в том, чтобы в удобной для чтения форме (вдали от самой выписки) отобразить даты поступления определенных транзакций на мой счет. Существует одна транзакция, которая оплачивается ежемесячно, а одна - раз в два месяца. Для ежемесячного, я имел успех, делая

=INDEX(A2:A106,MATCH("*Foo*",B2:B106)) 

где столбец A содержит даты, а столбец B содержит описание.

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

Мой последний реальный опыт работы с электронными таблицами был MS Excel около 13 лет назад, и я почти ничего не помню!

Большое спасибо.

0
На это трудно ответить, не зная, как выглядит ваша электронная таблица и пример того, чего вы пытаетесь достичь. Можете ли вы добавить скриншот таблицы и макет примера того, что вы хотите сделать? fixer1234 5 лет назад 0

1 ответ на вопрос

0
cybernetic.nomad

Это можно сделать с помощью формул массива:

{=IFERROR(INDEX($B$2:$B$106, SMALL(IF("a"=$A$2:$A$106, ROW($B$2:$B$106)-2,""), ROW()-2)),"")} 

(не забудьте использовать CRTL- SHIFT- ENTERвместо ENTERподтверждения формулы.)

Затем вы можете скопировать и вставить формулу вниз, как только все элементы будут перечислены, в результате вы начнете получать пустые ячейки.

Похожие вопросы