2017-01-23 9 views
0

В настоящее время я работаю с 3 листами в Excel. Они называются Sheet1, Sheet2 и Summary. В Sheet1 и Sheet2 у меня есть список состояний с столбцом для дохода. В листе «Сводка» я хочу сделать оператор SUMIF, как если бы состояние в Сводке было в Листах 1 и 2, тогда я хотел бы добавить обе суммы дохода вместе. Поэтому, если состояние PA находилось на странице «Сводка», и оно появилось в Sheet1 и Sheet2, я хотел бы добавить обе ячейки вместе. Теперь, если он появился только в Sheet1, мне все равно хотелось бы добавить его на страницу «Сводка», так как это должно быть просто добавление 0, поскольку оно не находится в Sheet2. Любая помощь с этим будет замечательной. Раньше я использовал COUNTIF, но я не могу заставить его работать правильно. Благодаря!Использование инструкции If в excel для суммирования ячеек в нескольких листах

Demo

ответ

0

Я предполагал несколько вещей здесь:

допущениях:

Лист1 имеет названия штатов в колонке C и соответствующих доходов в колонке D

Sheet2 имеет названия штатов в колонке C и соответствующей выручки в колонке D

Сводная таблица имеет имя состояния в ячейке C6, и вы хотите увидеть общий доход от состояний (от листа 1 и листа 2) в столбце D сводного листа.

Для этого используйте эту формулу в ячейке D6 Сводного листа. Возможно, вам придется изменить диапазон таблицы, который я предположил «C4: D5». Это может быть для вас другое.

=IF(ISERROR(VLOOKUP(C6,Sheet1!C4:D5,2,FALSE)),0,VLOOKUP(C6,Sheet1!C4:D5,2,FALSE))+IF(ISERROR(VLOOKUP(C6,Sheet2!C4:D5,2,FALSE)),0,VLOOKUP(C6,Sheet2!C4:D5,2,FALSE)) 

на основе Более подробное описание здесь является обновленной формулой:

SUMIF(Sheet1!$B$3:$D$11,Summary!C3,Sheet1!$D$3:$D$11)+SUMIF(‌​Sheet2!$A$3:$B$11,Su‌​mmary!C3,Sheet2!$B$3‌​:$B$11) 
+0

Использование ВПР для испытания может быть дорогостоящим, время обработки, лучше использовать COUNTIF для проверки существования, то ВПР, если это правда. '= ЕСЛИ (СЧЕТЕСЛИ (Лист1 С4: D5, C6)> 0, ВПР (С6, Лист1 С4: D5,2,0), 0) + ЕСЛИ (СЧЕТЕСЛИ (Лист2 С4: Д5, С6)> 0, VLOOKUP (C6, Sheet2! C4: D5,2,0), 0) ' –

+0

@Dan Donoghue - Я не думал о скорости. Основываясь на вашем предположении, я посмотрел на MSDN и нашел эту функцию доступной с Excel 2007 под названием IFERROR. что вы думаете? разве это не должно быть быстрее? IFERROR (VLOOKUP (C6, Sheet1! C4: D5,2, FALSE), 0) + IFERROR (VLOOKUP (C6, Sheet2! C4: D5,2, FALSE), 0) – Anand

+0

@ И спасибо за помощь. Кажется, что суммы взяты только из Листа2. Столбцы в Листе 1 соответствуют следующим: A = Тип, B = Состояние, C = Название состояния, D = Доход, E = Кредиты. Затем на Sheet2 столбцы A = State, B = Revenue, C = Revenue. Теперь на сводной странице The Columns те же, что и Sheet1. Кроме того, поскольку я хочу, чтобы в итоге было добавлено обе суммы вместе с обоими листами. Если это доступно, мне не нужен оператор SUMIF там или еще что-то? – goku0650