Excel VLOOKUP met SUM of SUMIF funksie – formule voorbeelde

  • Deel Dit
Michael Brown

In hierdie tutoriaal sal jy 'n handvol gevorderde formulevoorbeelde vind wat demonstreer hoe om Excel se VLOOKUP en SUM of SUMIF funksies te gebruik om waardes op te soek en op te som gebaseer op een of meer kriteria.

Probeer jy om 'n opsomminglêer in Excel te skep wat alle gevalle van een spesifieke waarde sal identifiseer, en dan ander waardes wat met daardie gevalle geassosieer word, optel? Of moet jy alle waardes in 'n skikking vind wat voldoen aan die voorwaarde wat jy spesifiseer en dan die verwante waardes van 'n ander werkblad optel? Of staan ​​jy dalk voor 'n meer konkrete uitdaging, soos om deur 'n tabel van jou maatskappyfakture te kyk, alle fakture van 'n spesifieke verskaffer te identifiseer en dan al die faktuurwaardes op te som?

Die take kan verskil, maar die essensie is dieselfde - jy wil waardes opsoek en optel met een of meer kriteria in Excel. Watter soort waardes? Enige numeriese waardes. Watter soort kriteria? Enige :) Begin van 'n getal of verwysing na 'n sel wat die regte waarde bevat, en eindig met logiese operateurs en resultate wat deur Excel-formules teruggegee word.

Dus, het Microsoft Excel enige funksionaliteit wat kan help met die bogenoemde take ? Natuurlik, dit doen! Jy kan 'n oplossing uitwerk deur Excel se VLOOKUP of LOOKUP met SUM of SUMIF funksies te kombineer. Die formulevoorbeelde wat hieronder volg, sal jou help om te verstaan ​​hoe hierdie Excel-funksies werk en hoe om dit toe te pasproefweergawe deur die onderstaande skakel te gebruik.

Beskikbare aflaaie

VLOOKUP met SUM en SUMIF - formulevoorbeelde (.xlsx-lêer)

Ultimate Suite - proefweergawe (.exe-lêer )

na regte data.

Let wel, hierdie is gevorderde voorbeelde wat impliseer dat jy vertroud is met die algemene beginsels en sintaksis van die VLOOKUP-funksie. Indien nie, is die eerste deel van ons VLOOKUP-tutoriaal vir beginners beslis jou aandag werd - Excel VLOOKUP-sintaksis en algemene gebruike.

    Excel VLOOKUP en SUM - vind die som van ooreenstemmende waardes

    As jy met numeriese data in Excel werk, moet jy dikwels nie net geassosieerde waardes uit 'n ander tabel onttrek nie, maar ook getalle in verskeie kolomme of rye optel. Om dit te doen, kan jy 'n kombinasie van die SOM- en VLOOKUP-funksies gebruik soos hieronder gedemonstreer.

    Brondata:

    Gestel jy het 'n produklys met verkoopsyfers vir 'n paar maande, 'n kolom per elke maand. Die brondata is op die blad genaamd Maandelikse Verkope :

    Nou wil jy 'n opsommingstabel maak met die totale verkope vir elke produk.

    Die oplossing is om 'n skikking in die 3de parameter ( col_index_num ) van die Excel VLOOKUP-funksie te gebruik. Hier is 'n generiese formule:

    SOM(VLOOKUP( opsoekwaarde, opsoekreeks, {2,3,...,n}, ONWAAR))

    As jy sien, ons gebruik 'n skikkingskonstante in die derde argument om verskeie opsoekings binne dieselfde VLOOKUP-formule uit te voer om die som van waardes in kolomme 2,3 en 4 te kry.

    En nou, kom ons pas hierdie kombinasie aan van VLOOKUP en SUM funksies vir ons data om die totaal van te vindverkope in kolomme B - M in die tabel hierbo:

    =SUM(VLOOKUP(B2, 'Monthly sales'! $A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))

    Belangrik! Aangesien jy 'n skikkingsformule bou, maak seker dat jy eerder Ctrl + Shift + Enter druk van 'n eenvoudige Enter-toetsaanslag wanneer jy klaar getik het. Wanneer jy dit doen, sluit Microsoft Excel jou formule in krulhakies soos volg:

    {=SUM(VLOOKUP(B2, 'Monthly sales'!$A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))}

    As jy die Enter -sleutel soos gewoonlik druk, sal slegs die eerste waarde in die skikking sal verwerk word, wat verkeerde resultate sal lewer.

    Wenk. Jy is dalk nuuskierig hoekom die formule [@Product] as die opsoekwaarde in die skermkiekie hierbo vertoon. Dit is omdat ek my data na tabel omgeskakel het ( Voeg in -oortjie > Tabel ). Ek vind dit baie gerieflik om met ten volle funksionele Excel-tabelle en hul gestruktureerde verwysings te werk. Byvoorbeeld, wanneer jy 'n formule in een sel tik, kopieer Excel dit outomaties oor die hele kolom en spaar jou op hierdie manier 'n paar kosbare sekondes :)

    Soos jy sien, is dit maklik om die OPSOEK- en SOM-funksies in Excel te gebruik. Dit is egter nie die ideale oplossing nie, veral as jy met groot tafels werk. Die punt is dat die gebruik van skikkingsformules die werkboek se werkverrigting nadelig kan beïnvloed aangesien elke waarde in die skikking 'n aparte oproep van die VLOOKUP-funksie maak. Dus, hoe meer waardes jy in die skikking het en hoe meer skikkingsformules jy in jou werkboek het, hoe stadiger werk Excel.

    Jy kan hierdie probleem omseil deur 'nkombinasie van die INDEX- en MATCH-funksies in plaas van SOM en VLOOKUP, en ek sal vir jou 'n paar formule-voorbeelde in die volgende artikel wys.

    Laai hierdie VLOOKUP en SOM-voorbeeld af

    Hoe om ander berekeninge uit te voer met Excel VLOOKUP-funksie

    'n Oomblik gelede het ons 'n voorbeeld bespreek van hoe jy waardes uit verskeie kolomme in die opsoektabel kan onttrek en die som van daardie waardes kan bereken. Op dieselfde manier kan jy ander wiskundige berekeninge uitvoer met die resultate wat deur die VLOOKUP-funksie teruggestuur word. Hier is 'n paar formulevoorbeelde:

    Bewerking Formulevoorbeeld Beskrywing
    Bereken gemiddelde {=AVERAGE(VLOOKUP(A2, 'Opsoektabel'$A$2:$D$10, {2,3,4}, ONWAAR))} Die formule soek na die waarde van sel A2 in 'Opsoektabel' en bereken die gemiddeld van waardes in kolomme B,C en D in dieselfde ry.
    Vind maksimum waarde { =MAX(VLOOKUP(A2, 'Opsoektabel'$A$2:$D$10, {2,3,4}, ONWAAR))} Die formule soek na die waarde van sel A2 in 'Opsoektabel ' en vind die maksimum waarde in kolomme B,C en D in dieselfde ry.
    Vind minimum waarde {=MIN(VLOOKUP(A2, 'Opsoektabel '$A$2:$D$10, {2,3,4}, FALSE))} Die formule soek vir die waarde van sel A2 in 'Opsoektabel' en vind die minimum waarde in kolomme B, C en D in dieselfde ry.
    Bereken % vansom {=0.3*SOM(VLOOKUP(A2, 'Opsoektabel'$A$2:$D$10, {2,3,4}, ONWAAR))} Die formule soek vir die waarde van sel A2 in 'Opsoektabel', som waardes in kolomme B,C en D in dieselfde ry op, en bereken dan 30% van die som.

    Let wel. Aangesien al die bogenoemde formules skikkingsformules is, onthou om Ctrl+Shift+Enter te druk om hulle korrek in 'n sel in te voer.

    As ons die bogenoemde formules by die 'Opsomming Verkope'-tabel van die vorige voorbeeld voeg, sal die resultaat soortgelyk soos hierdie lyk:

    Laai hierdie VLOOKUP-berekeningsmonster af

    SOEK EN SOM - soek op in skikking en som ooreenstemmende waardes

    In die geval dat jou opsoekparameter 'n skikking eerder as 'n enkele waarde is, is die VLOOKUP-funksie vergeefs omdat dit nie kan opsoek in data skikkings. In hierdie geval kan jy Excel se OPSOEK-funksie gebruik wat analoë is aan VLOOKUP maar met skikkings sowel as met individuele waardes werk.

    Kom ons kyk na die volgende voorbeeld, sodat jy beter kan verstaan ​​waarvan ek praat . Gestel jy het 'n tabel wat kliënte se name, aangekoopte produkte en hoeveelheid lys ( Hooftabel ). Jy het ook 'n tweede tabel wat die produkpryse bevat ( Opsoektabel ). Jou taak is om 'n formule te maak wat die totaal vind van alle bestellings wat deur 'n gegewe kliënt gemaak is.

    Soos jy onthou, kan jy nie die Excel OPSOEK-funksie gebruik nie, aangesien jy veelvuldige hetgevalle van die opsoekwaarde (skikking van data). In plaas daarvan gebruik jy 'n kombinasie van SOM- en OPSOEK-funksies soos hierdie:

    =SUM(LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))

    Aangesien dit 'n skikkingsformule is, onthou om Ctrl + Shift + Enter te druk om dit te voltooi.

    En nou, kom ons ontleed die formule se bestanddele sodat jy verstaan ​​hoe elkeen van die funksies werk en kan om dit vir jou eie data aan te pas.

    Ons sal opsy sit die SOM-funksie vir 'n rukkie, want die doel daarvan is voor die hand liggend, en fokus op die 3 komponente wat vermenigvuldig word:

    1. LOOKUP($C$2:$C$10,'Lookup table'!$A$2:$A$16,'Lookup table'!$B$2:$B$16)

      Hierdie OPSOEK-funksie soek die goedere wat in kolom C gelys word in die hoof. tabel, en gee die ooreenstemmende prys van kolom B in die opsoektabel terug.

    2. $D$2:$D$10

      Hierdie komponent gee die hoeveelheid terug van elke produk wat deur elke klant gekoop is, wat in kolom D in die hooftabel gelys word . Vermenigvuldig met die prys, wat deur die OPSOEK-funksie hierbo teruggestuur word, gee dit vir jou die koste van elke aangekoopte produk.

    3. $B$2:$B$10=$G$1

      Hierdie formule vergelyk die kliënte se name in kolom B met die naam in sel G1. As 'n passing gevind word, gee dit "1", anders "0". Jy gebruik dit bloot om klante se name anders as die naam in sel G1 te "afsny", aangesien almal van ons weet dat enige getal vermenigvuldig met nul nul is.

    Omdat ons formule is 'n skikking formule dit herhaal die proses hierbo beskryf vir elke waarde in die opsoek skikking. En laastens, die SOM-funksie somdie produkte van alle vermenigvuldiging. Glad niks moeilik nie, is dit?

    Let wel. Vir die OPSOEK-formule om korrek te werk, moet jy die opsoekkolom in jou Opsoektabel in stygende volgorde (van A tot Z) sorteer. As sortering nie aanvaarbaar is op jou data nie, kyk na 'n wonderlike SUM / TRANSPOSE-formule wat deur Leo voorgestel is.

    Laai hierdie OPSOEK- en SOM-voorbeeld af

    VLOOKUP en SUMIF - kyk op & somwaardes met kriteria

    Excel se SUMIF-funksie is soortgelyk aan SUM wat ons sopas bespreek het op die manier dat dit ook waardes optel. Die verskil is dat die SUMIF-funksie net daardie waardes optel wat voldoen aan die kriteria wat jy spesifiseer. Byvoorbeeld, die eenvoudigste SUMIF-formule =SUMIF(A2:A10,">10") voeg die waardes in selle A2 tot A10 by wat groter as 10 is.

    Dit is baie maklik, reg? En laat ons nou 'n bietjie meer komplekse scenario oorweeg. Gestel jy het 'n tabel wat die verkoopspersone se name en ID-nommers lys ( Opsoektabel ). Jy het nog 'n tabel wat dieselfde ID's en gepaardgaande verkoopsyfers bevat ( Hooftabel ). Jou taak is om die totaal van verkope gemaak deur 'n gegewe persoon volgens hul ID te vind. Daar is dus 2 kompliserende faktore:

    • Die postabel bevat veelvuldige inskrywings vir dieselfde ID in 'n ewekansige volgorde.
    • Jy kan nie die "Verkoopspersoonname"-kolom byvoeg by die hooftabel.

    En nou, kom ons maak 'n formule wat eerstens alle verkope vind wat deur 'n gegewe persoon gemaak word, entweedens, som die gevind waardes op.

    Voordat ons met die formule begin, laat ek jou die sintaksis van die SUMIF-funksie herinner:

    SUMIF(reeks, kriteria, [som_reeks])
    • range - hierdie parameter is selfverduidelikend, bloot 'n reeks selle wat jy volgens die gespesifiseerde kriteria wil evalueer.
    • criteria - die toestand wat die formule vertel watter waardes om te som. Dit kan in die vorm van 'n getal, selverwysing, uitdrukking of 'n ander Excel-funksie verskaf word.
    • sum_range - hierdie parameter is opsioneel, maar vir ons baie belangrik. Dit definieer die reeks waar die ooreenstemmende selle se waardes bygevoeg moet word. As dit weggelaat word, som Excel die waardes van selle op wat in die reeksargument (1ste parameter) gespesifiseer is.

    Hou bogenoemde inligting in gedagte, kom ons definieer die 3 parameters vir ons SUMIF-funksie. Soos u onthou, wil ons al die verkope opsom wat gemaak is deur 'n gegewe persoon wie se naam in sel F2 in die hooftabel ingevoer is (sien asseblief die prent hierbo).

    1. Reikwydte - aangesien ons volgens verkoopspersoon-ID soek, is die reeks -parameter vir ons SUMIF-funksie kolom B in die hooftabel. So, jy kan die reeks B:B invoer, of as jy jou data na 'n tabel omskakel, kan jy eerder die kolom se naam gebruik: Main_table[ID]
    2. Kriteria - want ons het verkoopspersone se name in 'n ander tabel (opsoektabel), moet ons die VLOOKUP-formule gebruik om die ID te vind wat ooreenstem met 'n gegewe persoon. Die persoon s'nnaam word in sel F2 in die hooftabel geskryf, so ons soek dit op met behulp van hierdie formule: VLOOKUP($F$2,Lookup_table,2,FALSE)

      Natuurlik kan jy die naam in die opsoekkriteria van jou VLOOKUP-funksie invoer, maar om 'n absolute selverwysing te gebruik is 'n beter benadering omdat dit 'n universele formule skep wat vir enige naaminvoer in 'n gegewe sel werk.

    3. Somreeks - dit is die maklikste deel. Aangesien ons verkoopsnommers in kolom C genaamd "Verkope" is, plaas ons eenvoudig Main_table[Sales] .

      Nou, al wat jy nodig het is om die formule se dele saam te stel en jou SUMIF + VLOOKUP formule is gereed:

      =SUMIF(Main_table[ID], VLOOKUP($F$2, Lookup_table, 2, FALSE), Main_table[Sales])

    Laai hierdie VLOOKUP en SUMIF-voorbeeld af

    Formulevrye manier om vlookup in Excel te doen

    Laastens, laat my stel jou bekend aan die instrument wat jou tabelle kan opsoek, pas en saamvoeg sonder enige funksies of formules. Die Merge Tables-nutsding wat by ons Ultimate Suite vir Excel ingesluit is, is ontwerp en ontwikkel as 'n tydbesparende en maklik-om-te-gebruik alternatief vir Excel se OPSOEK- en OPSOEK-funksies, en dit kan baie nuttig wees vir beide beginners en gevorderde gebruikers.

    In plaas daarvan om formules uit te vind, spesifiseer jy eenvoudig jou hoof- en opsoektabelle, definieer 'n algemene kolom of kolomme, en vertel die towenaar watter data jy wil gaan haal.

    Dan laat jy die towenaar 'n paar sekondes toe om op te soek, te pas en die resultate aan jou te lewer. As jy dink dat hierdie byvoeging nuttig kan wees in jou werk, is jy baie welkom om a

    Michael Brown is 'n toegewyde tegnologie-entoesias met 'n passie om komplekse prosesse te vereenvoudig deur sagteware-instrumente te gebruik. Met meer as 'n dekade se ondervinding in die tegnologiebedryf, het hy sy vaardighede in Microsoft Excel en Outlook, sowel as Google Sheets en Docs, opgeskerp. Michael se blog is toegewy daaraan om sy kennis en kundigheid met ander te deel, en verskaf maklik-om-te volg wenke en tutoriale vir die verbetering van produktiwiteit en doeltreffendheid. Of jy nou 'n ervare professionele persoon of 'n beginner is, Michael se blog bied waardevolle insigte en praktiese raad om die meeste uit hierdie noodsaaklike sagteware-nutsmiddels te kry.