Turinys
Šioje pamokoje rasite keletą išplėstinių formulių pavyzdžių, kuriuose parodoma, kaip naudoti "Excel" funkcijas VLOOKUP ir SUM arba SUMIF, kad galėtumėte ieškoti ir sumuoti reikšmes pagal vieną ar kelis kriterijus.
Ar bandote "Excel" programoje sukurti suvestinės failą, kuriame būtų nustatyti visi vienos konkrečios reikšmės atvejai, o tada sudėti kitas su tais atvejais susijusias reikšmes? Arba jums reikia surasti visas reikšmes masyve, atitinkančias nurodytą sąlygą, ir tada sudėti susijusias reikšmes iš kitos darbalapio lentelės? O gal susiduriate su konkretesniu uždaviniu, pvz., peržiūrėti lentelę sujūsų įmonės sąskaitas faktūras, nustatant visas konkretaus pardavėjo sąskaitas faktūras ir sumuojant visas sąskaitų faktūrų vertes?
Užduotys gali skirtis, tačiau esmė ta pati - norite "Excel" programoje ieškoti ir sumuoti reikšmes pagal vieną ar kelis kriterijus. Kokios reikšmės? Bet kokios skaitinės reikšmės. Kokie kriterijai? Bet kokie : ) Pradedant skaičiumi arba nuoroda į ląstelę, kurioje yra reikiama reikšmė, ir baigiant loginiais operatoriais ir "Excel" formulių grąžinamais rezultatais.
Taigi, ar "Microsoft Excel" turi kokią nors funkciją, galinčią padėti atlikti pirmiau minėtas užduotis? Žinoma, turi! Sprendimą galite rasti derindami "Excel" VLOOKUP arba LOOKUP su SUM arba SUMIF funkcijomis. Toliau pateikti formulių pavyzdžiai padės suprasti, kaip šios "Excel" funkcijos veikia ir kaip jas taikyti realiems duomenims.
Atkreipkite dėmesį, kad tai yra sudėtingi pavyzdžiai, kurie reiškia, kad esate susipažinę su bendraisiais VLOOKUP funkcijos principais ir sintakse. Jei ne, tikrai verta dėmesio pirmoji mūsų VLOOKUP pamokos pradedantiesiems dalis - "Excel" VLOOKUP sintaksė ir bendrieji naudojimo būdai.
"Excel" VLOOKUP ir SUM - raskite sutampančių verčių sumą
Jei "Excel" programoje dirbate su skaitiniais duomenimis, dažnai tenka ne tik ištraukti susijusias reikšmes iš kitos lentelės, bet ir sudėti kelių stulpelių ar eilučių skaičius. Norėdami tai padaryti, galite naudoti SUM ir VLOOKUP funkcijų derinį, kaip parodyta toliau.
Šaltinio duomenys:
Tarkime, turite produktų sąrašą su kelių mėnesių pardavimų skaičiais, kiekvienam mėnesiui skirtas stulpelis. Šaltinio duomenys yra lape, pavadintame Mėnesio pardavimai :
Dabar norite sudaryti suvestinę lentelę, kurioje būtų nurodyta bendra kiekvieno gaminio pardavimų suma.
Sprendimas - 3-iajame parametre naudoti masyvą ( col_index_num ) Excel VLOOKUP funkcija. Pateikiame bendrą formulę:
SUM(VLOOKUP( paieškos vertė , paieškos diapazonas , {2,3,...,n}, FALSE))Kaip matote, trečiajame argumente naudojame masyvo konstantą, kad toje pačioje VLOOKUP formulėje atliktume kelias paieškas ir gautume 2, 3 ir 4 stulpelių verčių sumą.
Dabar pritaikykime šį VLOOKUP ir SUM funkcijų derinį savo duomenims, kad rastume bendrą pardavimų sumą pirmiau pateiktos lentelės B-M stulpeliuose:
=SUMA(VLOOKUP(B2, "Mėnesio pardavimai"! $A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))
Svarbu! Kadangi kuriate masyvo formulę, baigę rašyti būtinai paspauskite Ctrl + Shift + Enter, o ne paprastą Enter klavišą. Kai tai padarysite, "Microsoft Excel" uždarys jūsų formulę į tokius lenktinius skliaustelius:
{=SUMA(VLOOKUP(B2, "Mėnesio pardavimai"!$A$2:$M$9, {2,3,4,5,6,7,8,9,10,11,12,13}, FALSE))}
Jei paspausite Įveskite raktą, kaip įprasta, bus apdorojama tik pirmoji masyvo reikšmė, todėl bus gauti neteisingi rezultatai.
Patarimas. Jums gali būti įdomu, kodėl pirmiau pateiktoje ekrano nuotraukoje formulė rodo [@Product] kaip paieškos reikšmę. Taip yra todėl, kad savo duomenis konvertavau į lentelę ( Įdėkite skirtukas> Lentelė ). man labai patogu dirbti su visiškai veikiančiomis "Excel" lentelėmis ir jų struktūrizuotomis nuorodomis. Pavyzdžiui, kai į vieną langelį įvedate formulę, "Excel" ją automatiškai nukopijuoja į visą stulpelį ir taip sutaupo keletą brangių sekundžių :)
Kaip matote, naudoti VLOOKUP ir SUM funkcijas "Excel" programoje yra paprasta. Tačiau tai nėra idealus sprendimas, ypač jei dirbate su didelėmis lentelėmis. Esmė ta, kad naudojant masyvo formules gali nukentėti darbaknygės našumas, nes kiekvienai masyvo reikšmei atskirai iškviečiama VLOOKUP funkcija. Taigi, kuo daugiau reikšmių turite masyve ir kuo daugiau masyvo formuliųdarbo knygą, tuo lėčiau veikia "Excel".
Šią problemą galite apeiti naudodami INDEX ir MATCH funkcijų derinį vietoj SUM ir VLOOKUP; kitame straipsnyje pateiksiu keletą formulių pavyzdžių.
Atsisiųskite šį VLOOKUP ir SUM pavyzdį
Kaip atlikti kitus skaičiavimus naudojant "Excel" VLOOKUP funkciją
Prieš akimirką aptarėme pavyzdį, kaip galima iš kelių paieškos lentelės stulpelių išskirti reikšmes ir apskaičiuoti tų reikšmių sumą. Tokiu pat būdu galite atlikti kitus matematinius skaičiavimus su rezultatais, kuriuos grąžina funkcija VLOOKUP. Pateikiame keletą formulių pavyzdžių:
Operacija | Formulės pavyzdys | Aprašymas |
---|---|---|
Apskaičiuokite vidurkį | {=AVERAGE(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Formulėje ieškoma langelio A2 reikšmės "Paieškos lentelėje" ir apskaičiuojamas tos pačios eilutės B, C ir D stulpelių reikšmių vidurkis. |
Rasti didžiausią vertę | {=MAX(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Formulėje ieškoma ląstelės A2 reikšmės "Paieškos lentelėje" ir randama didžiausia reikšmė tos pačios eilutės B, C ir D stulpeliuose. |
Rasti mažiausią vertę | {=MIN(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Formulėje ieškoma ląstelės A2 reikšmės "Paieškos lentelėje" ir surandama mažiausia reikšmė tos pačios eilutės B, C ir D stulpeliuose. |
Apskaičiuokite % sumos | {=0,3*SUMA(VLOOKUP(A2, 'Lookup Table'$A$2:$D$10, {2,3,4}, FALSE))} | Formulėje ieškoma langelio A2 reikšmės "Paieškos lentelėje", sumuojamos tos pačios eilutės B, C ir D stulpelių reikšmės ir apskaičiuojama 30 % sumos. |
Pastaba. Kadangi visos pirmiau pateiktos formulės yra masyvo formulės, nepamirškite paspausti Ctrl+Shift+Enter, kad jas teisingai įvestumėte ląstelėje.
Jei į ankstesniame pavyzdyje pateiktą lentelę "Pardavimų suvestinė" įrašysime pirmiau pateiktas formules, rezultatas bus panašus į šį:
Atsisiųskite šį VLOOKUP skaičiavimų pavyzdį
LOOKUP AND SUM - ieškoti masyve ir sumuoti sutampančias reikšmes
Jei jūsų paieškos parametras yra masyvas, o ne atskira reikšmė, VLOOKUP funkcija nepadės, nes ji negali ieškoti duomenų masyvuose. Tokiu atveju galite naudoti "Excel" funkciją LOOKUP, kuri yra analogiška VLOOKUP funkcijai, tačiau veikia tiek su masyvais, tiek su atskiromis reikšmėmis.
Kad geriau suprastumėte, apie ką kalbu, panagrinėkime šį pavyzdį. Tarkime, turite lentelę, kurioje pateikiami klientų vardai, įsigytų produktų pavadinimai ir kiekis ( Pagrindinis stalas ). Taip pat turite antrą lentelę, kurioje pateikiamos produktų kainos ( Paieškos lentelė ). Jūsų užduotis - sukurti formulę, kuri rastų visų tam tikro kliento atliktų užsakymų sumą.
Kaip pamenate, negalite naudoti "Excel" VLOOKUP funkcijos, nes turite kelis ieškomos reikšmės (duomenų masyvo) atvejus. Vietoj to naudokite SUM ir LOOKUP funkcijų derinį, pvz:
=SUMA(LOOKUP($C$2:$C$10, "Paieškos lentelė"!$A$2:$A$16, "Paieškos lentelė"!$B$2:$B$16)*$D$2:$D$10*($B$2:$B$10=$G$1))
Kadangi tai yra masyvo formulė, nepamirškite paspausti Ctrl + Shift + Enter, kad ją užbaigtumėte.
O dabar paanalizuokime formulės sudedamąsias dalis, kad suprastumėte, kaip veikia kiekviena iš funkcijų, ir galėtumėte ją pritaikyti savo duomenims.
Funkciją SUMA kuriam laikui atidėsime į šalį, nes jos paskirtis akivaizdi, ir sutelksime dėmesį į 3 sudedamąsias dalis, kurios yra dauginamos:
LOOKUP($C$2:$C$10, "Paieškos lentelė"!$A$2:$A$16, "Paieškos lentelė"!$B$2:$B$16)
Ši LOOKUP funkcija ieško prekių, išvardytų pagrindinės lentelės C stulpelyje, ir grąžina atitinkamą kainą iš paieškos lentelės B stulpelio.
$D$2:$D$10
Šis komponentas grąžina kiekvieno kliento įsigyto produkto kiekį, kuris yra nurodytas pagrindinės lentelės D stulpelyje. Padauginus iš kainos, kurią grąžina pirmiau nurodyta LOOKUP funkcija, gaunama kiekvieno įsigyto produkto kaina.
$B$2:$B$10=$G$1
Ši formulė palygina B stulpelyje esančių klientų vardus su G1 langelio vardu. Jei randamas atitikimas, grąžinama "1", priešingu atveju - "0". Ją paprasčiausiai naudojate, norėdami "atkirsti" klientų vardus, išskyrus G1 langelio vardą, nes visi žinome, kad bet koks skaičius, padaugintas iš nulio, yra nulis.
Kadangi mūsų formulė yra masyvo formulė, ji atlieka pirmiau aprašytą procesą kiekvienai paieškos masyvo vertei. Ir galiausiai funkcija SUM sumuoja visų dauginių sandaugas. Nieko sudėtingo, ar ne?
Pastaba. Kad LOOKUP formulė veiktų teisingai, turite rūšiuoti paieškos lentelės stulpelį didėjimo tvarka (nuo A iki Z). Jei jūsų duomenims rūšiavimas nepriimtinas, peržiūrėkite puikią SUM / TRANSPOSE formulę, kurią pasiūlė Leo.
Atsisiųskite šį LOOKUP ir SUM pavyzdį
VLOOKUP ir SUMIF - ieškoti & sumuoti reikšmes pagal kriterijus
"Excel" funkcija SUMIF yra panaši į ką tik aptartą SUM, nes taip pat sumuoja reikšmes. Skirtumas tas, kad funkcija SUMIF sumuoja tik tas reikšmes, kurios atitinka jūsų nurodytus kriterijus. Pavyzdžiui, paprasčiausia SUMIF formulė =SUMIF(A2:A10,">10")
prideda langeliuose A2-A10 esančias vertes, kurios yra didesnės nei 10.
Tai labai paprasta, tiesa? O dabar panagrinėkime šiek tiek sudėtingesnį scenarijų. Tarkime, kad turite lentelę, kurioje išvardyti pardavėjų vardai ir ID numeriai ( Lookup_table ). Turite kitą lentelę, kurioje yra tie patys ID ir susiję pardavimų duomenys ( Main_table ). Jūsų užduotis - rasti bendrą tam tikro asmens atliktų pardavimų sumą pagal jo ID. Tuo metu yra 2 komplikuoti veiksniai:
- Pašto lentelėje yra keli to paties ID įrašai atsitiktine tvarka.
- Į pagrindinę lentelę negalima įtraukti stulpelio "Pardavėjų vardai".
Dabar sukurkime formulę, kuri, pirma, suras visus tam tikro asmens atliktus pardavimus ir, antra, susumuos rastas reikšmes.
Prieš pradėdami formulę, priminsiu funkcijos SUMIF sintaksę:
SUMIF(intervalas, kriterijai, [sum_range])diapazonas
- šis parametras yra aiškus - tai paprasčiausiai ląstelių, kurias norite įvertinti pagal nurodytus kriterijus, intervalas.kriterijai
- sąlyga, nurodanti formulei, kokias reikšmes reikia sumuoti. Ji gali būti pateikta kaip skaičius, ląstelės nuoroda, išraiška arba kita "Excel" funkcija.sum_range
- šis parametras neprivalomas, bet mums labai svarbus. Jis apibrėžia intervalą, į kurį bus sudedamos atitinkamų langelių reikšmės. Jei jis praleidžiamas, "Excel" sumuoja langelių, nurodytų intervalo argumente (1-asis parametras), reikšmes.
Atsižvelgdami į pirmiau pateiktą informaciją, apibrėžkime 3 funkcijos SUMIF parametrus. Kaip pamenate, norime susumuoti visus pardavimus, kuriuos atliko tam tikras asmuo, kurio vardas įrašytas pagrindinės lentelės ląstelėje F2 (žr. paveikslėlį aukščiau).
- Diapazonas - kadangi ieškome pagal pardavėjo ID, tai diapazonas mūsų funkcijos SUMIF parametras yra pagrindinės lentelės stulpelis B. Taigi galite įvesti intervalą B:B arba, jei duomenis konvertuojate į lentelę, vietoj jo galite naudoti stulpelio pavadinimą:
Main_table[ID]
- Kriterijai - kadangi kitoje lentelėje (paieškos lentelėje) turime pardavėjų vardus, norėdami rasti konkretų asmenį atitinkantį ID, turime naudoti VLOOKUP formulę. Asmens vardas įrašytas pagrindinės lentelės langelyje F2, todėl jo ieškome naudodami šią formulę:
VLOOKUP($F$2,Lookup_table,2,FALSE)
Žinoma, pavadinimą galite įrašyti į VLOOKUP funkcijos paieškos kriterijų, tačiau geriau naudoti absoliučiąją ląstelės nuorodą, nes taip sukuriama universali formulė, kuri veikia bet kokiam pavadinimui, įvestam tam tikroje ląstelėje.
- Sumų intervalas - Kadangi mūsų pardavimų skaičiai yra C stulpelyje, pavadintame "Pardavimai", paprasčiausiai įrašome
Pagrindinis_stalas[Pardavimai]
.Dabar tereikia surinkti formulės dalis ir jūsų SUMIF + VLOOKUP formulė paruošta:
=SUMIF(Main_table[ID], VLOOKUP($F$2, Lookup_table, 2, FALSE), Main_table[Sales])
Atsisiųskite šį VLOOKUP ir SUMIF pavyzdį
Formulės neturintis būdas atlikti vlookup funkciją programoje "Excel
Galiausiai leiskite susipažinti su įrankiu, kuris gali ieškoti, derinti ir sujungti jūsų lenteles be jokių funkcijų ar formulių. Įrankis "Merge Tables", įtrauktas į mūsų "Ultimate Suite for Excel" rinkinį, buvo sukurtas ir sukurtas kaip laiką taupanti ir lengvai naudojama "Excel" VLOOKUP ir LOOKUP funkcijų alternatyva, kuri gali būti labai naudinga ir pradedantiesiems, ir pažengusiems naudotojams.
Vietoj to, kad spręstumėte formules, tiesiog nurodykite pagrindines ir paieškos lenteles, apibrėžkite bendrą stulpelį ar stulpelius ir pasakykite vedliui, kokius duomenis norite gauti.
Tada kelias sekundes leiskite vedliui ieškoti, lyginti ir pateikti rezultatus. Jei manote, kad šis priedas gali būti naudingas jūsų darbe, kviečiame atsisiųsti bandomąją versiją naudojant toliau pateiktą nuorodą.
Galimi atsisiuntimai
VLOOKUP su SUM ir SUMIF - formulių pavyzdžiai (.xlsx failas)
"Ultimate Suite" - bandomoji versija (.exe failas)