Microsoft Excel — условное добавление на разных листах

Microsoft Excel — условное добавление на разных листах

Суммирование нескольких листов Excel условно на основе критериев

Мне нужна помощь, пожалуйста...

У меня есть таблица на листе SheetA со строками, обозначенными как sheet1...sheetx в столбце A. В столбце B у меня есть «x» или пробел рядом с каждой строкой.

В ЛистеA

Sheet1    x  
Sheet2       
Sheet3    x  
Sheet4    x  
Sheet5  

и т. д...

Мне нужно просуммировать ячейку (например, B10) из каждого листа, обозначенного "x". Так что в моем примере мне нужно сложить Лист1!B10+Лист3!B10+Лист4!B10+...

Я экспериментировал с Indirect, чтобы извлечь имя справочного листа из столбца A, но не могу понять, как проверить столбец B на наличие «x», а затем добавить ту же ячейку только из тех листов, которые идентифицированы.

Я, конечно, немного упростил.

Любая помощь будет просто фантастической!

решение1

С именами листов в диапазоне A1:A5, маркерами (например, «x») в диапазоне B1:B5 и текстовой строкой, представляющей выбор ячейки для суммирования (например, «B10») в диапазоне D1:

=SUMPRODUCT(0+(B1:B5="x"),N(INDIRECT("'"&A1:A5&"'!"&D1)))

С уважением

решение2

Может быть, это не совсем то, что вы ищете, но один из вариантов — перетащить значения в главный лист и суммировать их там. Я имею в виду, что, скажем, ваш главный лист выглядит так:

    A    B
1 Sheet1 x
2 Sheet2
3 Sheet3 x

В C1 поместите:

=IF(B1="x",INDIRECT(A1&"!B10"),"")

и заполните вниз. Это перенесет значения в ваш главный лист, и вы сможете их суммировать.

Связанный контент