Конвертировать SUMIFS в SUBTOTAL для двух таблиц в Excel - PullRequest
0 голосов
/ 27 октября 2018

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

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

Лист (1) имеет таблицу с именем INCDATA

Лист (2) имеет таблицу с именем IEINC

Таблица IEINC имеет критерии источника (поиска) для поиска в таблице INCDATA.

У меня есть следующая формула, которая правильно суммирует данные между двумя таблицами:

=SUMIFS(INDEX(INCDATA,,MATCH(C$10,INCDATA[#Headers],0)),INCDATA[[Details]:[Details]],$B11)

То, что я сейчас пытаюсь сделать, это либо добавить это, либо заменить на функцию «SUBTOTAL», чтобы при фильтрации дат в таблице INCDATA вычислялись только видимые строки.

Я пробовал эту формулу, но получил неправильный результат;

=SUBTOTAL(109,INDEX(INCDATA,,MATCH(C$10,INCDATA[#Headers],0)),INCDATA[[Details]:[Details]],$B11)

Эта формула приводит к сумме всех отображаемых значений:
60,00 (отображается в каждой строке критериев поиска)

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

Доход01 10,00
Доход 02 20,00
Income03 30,00

Есть ли у кого-нибудь предложения.

1 Ответ

0 голосов
/ 27 октября 2018

Может быть, это то, что вы ищете.

Изменение промежуточного итога с 109 на 9.

=SUBTOTAL(9, .... 

Функция промежуточного итога:

"Function_num Required. Число 1-11 или 101-111, которое определяет функцию, используемую для промежуточного итога. 1-11 включает скрытые вручную (отфильтрованные) строки, в то время как 101-111 исключает их (скрытые / отфильтрованные строки) ; отфильтрованные ячейки всегда исключаются. "


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

=SUMIFS(INDEX(INCDATA,,MATCH(C$10,INCDATA[#Headers],0)),INCDATA[[Details]:[Details]],$B11)

к этому, приложено в ячейке «Доходы и расходы», ячейка: H11

=SUMPRODUCT(SUBTOTAL(9, OFFSET('Income(Data)'!$C$5:$C$10,ROW('Income(Data)'!$C$5:C9)-MIN(ROW('Income(Data)'!$C$5:C9)),,1)),--('Income(Data)'!$B$5:B9=$B$11))

Поэтому при применении фильтра на листе «Доход (Данные)»:

enter image description here

Суммирует только примененные фильтры в «Доходах и расходах»:

enter image description here

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