Hur man använder en SUMIF för att summera de * synliga * celler som matchar ett kriterium. Exempelvis summerar alla poster där Region = "East", men ignorerar de rader som redan är dolda. Du kommer att bli förvånad över funktionen som räddar dagen.
Kolla på video
- Fråga från Jon: Gör en SUMIFS som bara lägger till de synliga cellerna
 - Bills första försök: Skicka en matris till funktionen AGGREGATE - men detta misslyckas
 - Mike's fantastiska lösning:
 - SUBTOTAL eller AGGREGATE kan inte acceptera en matris
 - Men du kan använda OFFSET för att bearbeta en matris och skicka resultaten till SUBTOTAL.
 - Använd SUMPRODUCT för att ta reda på om raden är JA eller inte.
 - Bills andra försök är som att kontrollera om kylskåpslampan slocknar när dörren stängs:
 - Lägg till en hjälpkolumn med AGGREGATE för en enda cell i varje rad
 - Rikta SUMMEN mot den kolumnen
 
Autogenererat avskrift
- hej välkommen tillbaka det är dags för en annan
 - duellera Excel podcast Jag heter Bill Jelen
 - från sällskap av Mike Irvin
 - från Excel är kul det här är vårt avsnitt
 - 187 några om den synliga steg okej
 - välkommen tillbaka jag gjorde ett seminarium i
 - Fort Myers Florida igår och John
 - var i publiken och han hade en
 - fråga sa han hur kan du göra en summa om
 - det summerar bara de synliga raderna okej så
 - här är vår databas och några om
 - det är enkelt nog
 - se 385 till 824 se om svaret är ja
 - om det är lägga till motsvarande celler
 - från b5 till 24 att allt fungerar men då
 - John applicerade ett filter så vi hade ett
 - kategori här och data låt oss bara
 - använd autofiltret för att snabbt applicera
 - så att det finns alla våra B-celler
 - och vi vill lägga till bara ja-cellerna
 - det vill säga B-celler
 - något till 100 men den här formeln är det inte
 - arbetar så frågan är hur kan vi göra
 - en summa om det bara ser på det synliga
 - rader och jag sa okej klart och tydligt
 - det enda jag vet som kommer att göra
 - ignorera synliga rader är det sammanlagda
 - fungerar okej aggregatet
 - fungerar så att vi kommer att få nummer 9
 - komma och sedan är det här den viktiga delen
 - ignorera de dolda raderna okej och
 - då behöver jag bara hitta något sätt att få
 - en array där inne och jag vet ju högre
 - versioner använder en array som allt
 - över 11 för det andra argumentet använd en
 - array men du vet kommer en array att fungera
 - här okej så vad jag ville säga
 - Jag tänkte göra jag skulle säga allt
 - rätt vi tar alla dessa siffror
 - här och multiplicera dem gånger en boolean
 - så titta igenom alla orden över en
 - en 5 lika med ja okej och vad
 - kommer att hända är bra de kommer att göra
 - vara siffror rätt och dessa kommer att
 - utvärdera i en serie sanningar och falskheter
 - och sedan när vi tvingar Excel att multiplicera
 - trues och falses gånger ett nummer
 - genomgångar blir 1
 - okej så vad som helst säger det inte ja
 - kommer att utvärdera till 0 allt som
 - gör det ja kommer att utvärdera till
 - försäljningen okej och då har vi bara
 - måste göra en ctrl-skift enter
 - så herregud det fungerar inte jag kanske inte
 - bara en enter som berättar vad Mike jag är
 - kommer att fortsätta arbeta med det här, jag kastar det
 - till dig
 - låt oss se vad du har tack
 - ja du vet vilken sammanslagning ja det är
 - en av två funktioner som kan ignoreras
 - dolda eller filtrerade rader aggregeras nu
 - uppfanns i Excel 2010 tidigare
 - aggregat hade vi delsummans funktion
 - och delsummans funktion kan också
 - ignorera dolda rader eller filtrerade rader nu
 - samma problem uppstår med delsumma som
 - med aggregat om jag väljer funktion 9
 - att vi bara kommer att undvika att räkna filtrerat
 - rader om jag väljer 109 som kommer att ignorera
 - dolda och filtrerade rader så 109 skulle jag
 - gillar att göra det men gissa vad det här
 - delsumma-funktionen stöter på samma
 - problem som den sammanlagda referensen
 - argument betyder att du inte kan ha en matris
 - operation där så vad gör vi är vi
 - kommer att använda offsetfunktionen till
 - samtidigt få varje enskild rad
 - vilken delsumma i huvudsak kommer att skapa
 - enskilda delverktyg och detta trick jag
 - lärt mig för många år sedan
 - 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
 - stänger jag var tvungen att hjälpa hennes kolumn till var och en
 - rad som säger ett aggregat av cellen
 - i den här raden säger ignorera alla dolda rader
 - så det ändras till 0 på berget är
 - dold och peka sedan summan om det
 - kolumn bra där har du det tack för
 - stannar förbi ser vi nästa gång för
 - en annan dueller excel podcast från herr.
 - Excel och Excel är kul
 
Nedladdning fil
Ladda ner exempelfilen här: Duel187.xlsx








