Cellules visibles SUMIF - Conseils Excel

Table des matières

Comment utiliser un SUMIF pour additionner les cellules * visibles * qui correspondent à un critère. Par exemple, additionnez tous les enregistrements où Region = "East", mais ignorez les lignes qui sont déjà masquées. Vous serez surpris de la fonction qui sauve la journée.

Regarder la vidéo

  • Question de Jon: Faites un SUMIFS qui n'ajoute que les cellules visibles
  • Premier essai de Bill: passez un tableau dans la fonction AGGREGATE - mais cela échoue
  • La solution géniale de Mike:
  • SUBTOTAL ou AGGREGATE ne peut pas accepter un tableau
  • Mais vous pouvez utiliser OFFSET pour traiter un tableau et envoyer les résultats à SUBTOTAL.
  • Utilisez SUMPRODUCT pour déterminer si la ligne est OUI ou non.
  • Le deuxième essai de Bill revient à vérifier si la lumière du réfrigérateur s'éteint lorsque la porte se ferme:
  • Ajouter une colonne d'assistance avec AGGREGATE d'une seule cellule dans chaque ligne
  • Pointez le SUMIFS sur cette colonne

Transcription générée automatiquement

  • salut bon retour il est temps pour un autre
  • podcast Excel en duel, je suis Bill Jelen
  • d'être rejoint par Mike Irvin
  • d'Excel est amusant c'est notre épisode
  • 187 certains si la rose visible bien
  • bienvenue à nouveau je faisais un séminaire à
  • Fort Myers en Floride hier et John
  • était dans le public et il avait un
  • question qu'il a dit comment pouvez-vous faire une somme si
  • il ne fait que la somme des lignes visibles, donc
  • voici notre base de données et certains si
  • c'est assez simple
  • regardez 385 à 824 voir si la réponse est oui
  • si c'est le cas, additionnez les cellules correspondantes
  • de b5 à 24 tout fonctionne mais alors
  • John appliquait un filtre donc nous avons eu un
  • catégorie ici et les données
  • utilisez le filtre automatique pour appliquer rapidement
  • filtre pour qu'il y ait toutes nos cellules B
  • et nous voulons ajouter uniquement les cellules oui
  • qui sont des cellules B alors qui devraient être
  • quelque chose à 100 mais cette formule n'est pas
  • travailler donc la question est de savoir comment pouvons-nous faire
  • une somme si cela ne regarde que le visible
  • rangées et j'ai dit très bien clairement
  • la seule chose que je sais qui va
  • ignorer les lignes visibles est l'agrégat
  • fonctionne bien l'ensemble
  • fonction donc nous allons un certain nombre 9
  • virgule et puis voici la partie importante
  • ignorez bien les lignes cachées et
  • alors j'ai juste besoin de trouver un moyen d'obtenir
  • un tableau là-dedans et je connais le plus haut
  • les versions utilisent un tableau comme tout
  • au-dessus de 11 pour ce deuxième argument, utilisez un
  • tableau mais vous savez qu'un tableau fonctionnera
  • ici très bien alors ce que je voulais dire
  • J'allais faire j'allais tout dire
  • bien nous allons prendre tous ces chiffres
  • ici et multipliez-les par un booléen
  • alors regardez à travers tous les mots sur un
  • un 5 égal à oui d'accord et qu'est-ce
  • ça va arriver c'est bien ça va arriver
  • être les bons chiffres et ceux-ci vont
  • évaluer dans une série de vrais et de faux
  • et puis quand on force Excel à se multiplier
  • le vrai et le faux multiplié par un nombre le
  • les travers deviennent 1
  • Très bien donc tout ce qui ne dit pas oui
  • va évaluer à 0 tout ce qui
  • Est-ce que oui va évaluer
  • les ventes vont bien et ensuite nous
  • devez faire un ctrl shift entrer
  • donc mon dieu ça ne marche pas, peut-être pas
  • juste une entrée te dis ce que je suis Mike
  • Je vais continuer à travailler dessus, je vais le lancer
  • pour toi
  • voyons ce que tu as merci
  • eh bien tu sais quel agrégat oui c'est
  • l'une des deux fonctions qui peuvent ignorer
  • les lignes masquées ou filtrées s'agrègent désormais
  • a été inventé dans Excel 2010 avant
  • agrégat nous avions la fonction de sous-total
  • et la fonction de sous-total peut également
  • ignorer les lignes masquées ou les lignes filtrées maintenant
  • le même problème se produit avec le sous-total comme
  • avec agrégat si je choisis la fonction 9
  • qu'on évitera juste de compter filtré
  • lignes si je choisis 109 qui ignorera
  • lignes cachées et filtrées donc 109 je le ferais
  • aime faire ça mais devine ce que c'est
  • la fonction de sous-total s'exécute dans le même
  • problème comme référence agrégée
  • L'argument signifie que vous ne pouvez pas avoir de tableau
  • opération là-bas alors que faisons-nous nous sommes
  • va utiliser la fonction offset pour
  • obtenir simultanément chaque ligne individuelle
  • quel sous-total créera par essence
  • sous-outils individuels et cette astuce I
  • appris il y a des années de très
  • 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
  • ferme je devais aider sa colonne à chaque
  • ligne qui dit un agrégat de la cellule
  • dans cette ligne en disant ignorer toute ligne cachée
  • donc ça va changer à 0 sur le rocher est
  • caché puis pointez la somme si cela
  • colonne bien là vous l'avez merci pour
  • en passant nous verrons la prochaine fois pour
  • un autre podcast excel duel de mr.
  • Excel et Excel sont amusants

Télécharger un fichier

Téléchargez l'exemple de fichier ici: Duel187.xlsx

Articles intéressants...