Як використовувати SUMIF для підсумовування * видимих * комірок, які відповідають критеріям. Наприклад, підсумуйте всі записи, де Region = "East", але ігноруйте вже приховані рядки. Ви будете здивовані функцією, яка економить день.
Переглянути відео
- Питання від Джона: Робіть SUMIFS, який додає лише видимі клітинки
- Перша спроба Білла: передайте масив у функцію AGGREGATE - але це не вдається
- Чудове рішення Майка:
- SUBTOTAL або AGGREGATE не можуть приймати масив
- Але ви можете використовувати OFFSET, щоб обробити масив і надіслати результати в ПІДВИЩЕННЯ.
- За допомогою SUMPRODUCT з’ясуйте, чи є рядок ТАК чи ні.
- Друга спроба Білла - це все одно, що перевірити, чи не згасає світло холодильника, коли двері зачиняються:
- Додайте допоміжний стовпець із АГРЕГАТОМ однієї комірки в кожному рядку
- Наведіть SUMIFS на цей стовпець
Автогенерована стенограма
- привіт, ласкаво просимо назад, час для іншого
- дуельний підкаст Excel Я Білл Джелен
- від приєднався Майк Ірвін
- від Excel - це весело, це наш епізод
- 187 деякі, якщо видимий піднявся добре
- ласкаво просимо назад Я проводив семінар у
- Форт-Майєрс, Флорида вчора та Джон
- був в аудиторії, і він мав
- питання він сказав, як ви можете зробити суму, якщо
- це лише підсумовує видимі рядки, так добре
- прямо тут наша база даних і деякі якщо
- це досить просто
- дивіться з 385 по 824, щоб побачити, чи відповідь так
- якщо він складає відповідні клітинки
- від b5 до 24, що все працює, але тоді
- Джон застосовував фільтр, тому у нас був
- категорія тут і дані, давайте просто
- використовуйте автоматичний фільтр для швидкого застосування
- фільтр, щоб були всі наші В-клітини
- і ми хочемо скласти лише клітинки так
- що є В-клітинами, то це повинно бути
- щось до 100, але ця формула - ні
- працюючи, тому питання в тому, як ми можемо це зробити
- сума, якщо це дивиться лише на видиме
- ряди, і я добре сказав добре
- єдине, що я знаю, що буде
- ігнорувати видимі рядки - це сукупність
- функціонувати все правильно сукупність
- функція, тому ми отримаємо деяке число 9
- кома, а потім ось важлива частина
- ігнорувати приховані рядки все правильно і
- тоді мені просто потрібно знайти якийсь спосіб дістатись
- масив там, і я знаю вищий
- версії використовують масив, як і все
- вище 11 для цього другого аргументу використовуйте символ
- масив, але ви знаєте, чи буде масив працювати
- тут добре, так що я хотів сказати
- Я збирався зробити, я збирався сказати все
- правильно, ми візьмемо всі ці цифри
- тут і помножте їх на логічне значення
- так що перегляньте всі слова над
- 5 дорівнює так, добре, і що
- що станеться - це добре
- бути правильними числами, і вони збираються
- оцінювати в серії істин і помилок
- а потім, коли ми змушуємо Excel множитися
- істини та помилки в рази числа
- наскрізні стають 1
- добре, так що все, що воно не говорить так
- збирається оцінити до 0 все, що
- робить це так збирається оцінити
- продажі все гаразд і тоді ми просто
- потрібно зробити ctrl shift enter
- так боже мій це не працює я не можу
- просто введіть, щоб сказати, що я за Майк
- буду продовжувати працювати над цим, я його кину
- для вас
- давайте подивимось, що у вас подяка
- ну ви знаєте, що сукупність так це
- одна з двох функцій, які можна ігнорувати
- приховані або відфільтровані рядки тепер агрегуються
- був винайдений в Excel 2010 раніше
- у сукупності ми мали функцію проміжних підсумків
- і функція проміжних підсумків також може
- ігнорувати приховані рядки або відфільтровані рядки зараз
- та ж проблема виникає з проміжними підсумками, як
- з сукупністю, якщо я виберу функцію 9
- що ми просто уникатимемо відліку відфільтрованого
- рядки, якщо я виберу 109, які ігноруватимуть
- приховані та відфільтровані рядки, щоб я 109
- люблю робити це, але вгадую, що це
- функція проміжних підсумків стикається з тим самим
- проблема як сукупна довідка
- аргумент означає, що ви не можете мати масив
- операція там, так що ми робимо ми
- буду використовувати функцію зміщення для
- одночасно отримуємо кожен окремий рядок
- який проміжний підсумок по суті створить
- окремі допоміжні інструменти і цей фокус I
- навчився років тому від дуже
- Oh message board now offset it
- needs a starting point so I'm going to
- click in the first cell comma and then
- offset goes down or up a certain number
- of rows to get a particular value I'm
- going to say just as an example to see
- how this function works go down six rows
- comma columns that's how many rows you
- want to subtract our ad we don't want to
- subtract or add any so I'm going to
- leave it blank
- now offset notice I already have some
- rows hid in there three rows so offset
- if I tell it to go down six out of a one
- two three four
- five and six so offset should be going
- and getting that 30 in Selby 16 if I
- highlight it and hit the f9 key I can
- see sure enough that it's doing exactly
- that
- control-z but what I really want it to
- do is simultaneously get every single
- value so in rows amuse the row function
- highlight all the way from ten to twenty
- nine close parenthesis if I highlight
- this row which is now doing a function
- argument array operation will just
- deliver an array of the numbers ten to
- twenty nine so f9 there we go ah but we
- really want to tell offset to go down
- zero one two so it can get offset zero
- offset one and so on if I can subtract
- 10 from all of these I'll have exactly
- what I want
- zero one two three and so on control-z
- well now I simply minus the row of the
- very first cell in that range close
- parenthesis now in the rows argument if
- I f9 there's an array of all the
- positions offset needs to offset to get
- each item individually
- control-z that is an array in row so it
- will force offset to deliver exactly one
- cell for each item in that range and
- that'll be different than just the
- complete range which subtotal cannot
- handle comma columns we don't need any
- so close parenthesis that hole offset if
- I f9 look at that right now it's
- delivering every single cell including
- right there is three items that are
- hidden I can see them 30 40 30 but
- that's because I haven't dumped this
- entire resultant array into subtotal
- control Z I come to the end closed
- parenthesis and now when I am nine watch
- this there we are 0 0 z
- because subtotal is ignoring the hidden
- or later we'll see that it will ignore
- filtered rows also now I would like to
- further eliminate some of these numbers
- for example the second number 50 we
- can't have that because it says no right
- there so I'm going to put this result in
- array inside of some product and then
- multiply this array times another array
- of zeros and ones that will represent
- yes that'll be the one no that'll be the
- zero
- control-z now I put it inside of some
- product that's array one I need to come
- to be in comma and highlight the column
- with the yeses equals and I have the
- criteria up here now if I click on array
- 2 + f9 trues and falses but some product
- can see those trues and falses so we
- need to convert them to ones and zeros
- ctrl z so I'm going to use any math
- operation to convert trues and falses to
- ones and zeros I'm gonna use double
- negative because in general that tends
- to be the fastest and most efficient now
- I could have taken that array and
- directly multiplied it by the first
- array then we would just have that
- multiplication in array 1 but I've
- chosen to have array number 1 there then
- some product will multiply times these
- ones and zeros f9 and we'll get exactly
- what we want notice right now 1 1 1
- means yes yes yes but those will be
- matched up with the zero zero zero from
- the subtotal for the hidden rows
- control-z now I can come to the end
- close parentheses control enter now I'm
- hiding over here if I come over and hide
- right-click hi I should get exactly a
- total of 50 and 10 control-z now if I
- turn on the filters with ctrl shift L
- now I can come up and filter just to
- show B and there we go
- 30 times 3 is 90 plus 10 is 100 so there
- after a great trick I learned years ago
- from the message board
- subtotal with offset to get our some ifs
- which is really some product with a
- criteria here to add only the filtered
- rows and one last thing about offset
- remember we were talking about aggregate
- and subtotal couldn't handle an array
- operation right there but we do have
- some array operations inside of offset
- offset delivers something that Excel can
- interpret as a reference it works to
- disguise the array operation as a
- reference that in our case subtotal can
- understand all right I'm gonna throw it
- back over to Oh Mike that is
- one awesome formula I wonder I couldn't
- come up with it there alive at the
- seminar I was headed in completely the
- wrong direction but well you've been
- working on that I'm still absolutely
- convinced that aggregate there's some
- way that I can use aggregate to solve
- this but if I can't use an array here
- because this is five and not one of the
- ones higher than twelve then I still
- feel like there should be some way to do
- this and check this out here's what I'm
- gonna do is I'm gonna use a helper
- column and you know as I started think
- about this one this is this is a lot
- like finding out if the refrigerator
- light turns off when you close the door
- all right you're not going to know but
- what I'm gonna do is I'm gonna add it
- and help her column with an aggregate
- function and that aggregate function is
- going to sum ignore the hidden rows and
- what am I gonna sum I'm gonna sum just
- this row just this one row and we will
- copy that down all right now the big
- question is what is the answer to this
- when I filter to just the B's what is
- the answer
- are those hidden rows returning zero or
- not well I don't know how we can find
- out well actually I do know how we can
- find out because we have a secret way to
- look inside that sound all right so
- here's what I'm doing I'm a press
- control ditto to bring that exact
- formula down and then instead of
- pointing to column B I want to point at
- column C like that
- right and we'll press ENTER and then
- apply a filter all right and let's see
- 30 plus 30 plus 30 plus 10 100 it's
- working so apparently in those hidden
- rows the rows we can't see like for
- example row 7 here we could do down here
- equals C 7 aggregate is returning 0
- because it that hidden row that row
- itself is hidden all right there you go
- kind of cheating with that helper column
- but at least it's something that I can
- understand and probably even knock out
- again without having to look at the
- formula all right wrap up from today
- question from John do a summits that
- only has the visible cells my first pass
- I was trying to pass an array into the
- aggregate function but that fails and
- Mike came up with an awesome solution
- use the offset function to point each
- row use the subtotal to see that rows
- hidden or not and then some product to
- multiply you know is it yes times the
- result from the subtotal my second try
- it's like checking to see if the
- refrigerator like goes out once the door
- закривається мені довелося допомагати її колоні кожному
- рядок із сукупністю клітинки
- у цьому рядку кажуть ігнорувати будь-який прихований рядок
- так що це зміниться на 0 на скелі
- прихований, а потім вкажіть суму, якщо що
- колонка ну ось вам це дякую
- заїзд ми побачимо наступного разу для
- черговий дуель excel-подкаст від пана.
- Excel і Excel - це весело
Завантажити файл
Завантажте зразок файлу тут: Duel187.xlsx