Turinys
Ar žinojote, kad sujungę 2 "Google" lapus galite ne tik atnaujinti vieno stulpelio įrašus, bet ir ištraukti visus susijusius stulpelius ir net nesutampančias eilutes? Šiandien parodysiu, kaip tai padaryti naudojant VLOOKUP, INDEX/MATCH, QUERY funkcijas ir "Merge Sheets" priedą.
Kai paskutinį kartą kalbėjau apie 2 "Google" lapų sujungimą, dalinausi būdais, kaip suderinti & amp; atnaujinti duomenis. Šį kartą vis dar atnaujinsime ląsteles, bet taip pat ištrauksime kitus susijusius stulpelius ir nesutampančias eilutes.
Štai mano paieškos lentelė. Šiandien iš jos paimsiu visus reikiamus duomenis:
Šį kartą ji tapo didesnė: turi du papildomus stulpelius su pardavėjų pavadinimais ir jų reitingais. Atnaujinsiu atsargų stulpelį su šia informacija kitoje lentelėje ir taip pat ištrauksiu pardavėjus. Na, gal ir reitingus :)
Kaip įprasta, šiam darbui atlikti naudosiu kelias funkcijas ir specialų priedą.
Sujungti "Google" lapus & amp; pridėti susijusių stulpelių naudojant VLOOKUP
Prisimenate "Google" lentelių VLOOKUP? Jį naudojau ankstesniame straipsnyje, kad suderinčiau duomenis ir atnaujinčiau kai kurias ląsteles.
Jei ši funkcija vis dar jus gąsdina, pats laikas su ja susidurti ir išmokti ją visiems laikams, nes šiandien aš taip pat ją panaudosiu :)
Patarimas. Jei ieškote greito sprendimo, kaip sutaupyti laiko, nedelsdami susipažinkite su "Merge Sheets".
Atlikime trumpą formulės sintaksės santrauką:
=VLOOKUP(search_key, range, index, [is_sorted])- search_key yra tai, ko ieškote.
- diapazonas yra tai, ko ieškote.
- indeksas yra stulpelio, iš kurio reikia grąžinti reikšmę, numeris.
- [is_sorted] yra visiškai neprivalomas ir nurodo, ar rakto stulpelis yra surūšiuotas.
Patarimas. Mūsų tinklaraštyje yra visa "Google Sheets" VLOOKUP skirta pamoka, galite ją peržiūrėti.
Kai sujungiau du "Google" lapus ir tiesiog atnaujinau atsargų stulpelio duomenis, naudojau šią VLOOKUP formulę:
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,2,FALSE),""))
IFERROR užtikrino, kad langeliuose be atitikmenų nebūtų klaidų, o ARRAYFORMULA apdorojo visą stulpelį iš karto.
Kokius pakeitimus reikia atlikti, kad iš paieškos lentelės kaip naują stulpelį būtų galima ištraukti ir pardavėjus?
Kadangi tai yra indeksas kuris nurodo "Google Sheets" VLOOKUP, iš kurio stulpelio jis turėtų paimti duomenis, galima sakyti, kad būtent šį stulpelį reikia patobulinti.
Paprasčiausias būdas būtų tiesiog nukopijuoti formulę į gretimą stulpelį ir padidinti jos indeksas vienu (pakeiskite 2 su 3 ):
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,3,FALSE),""))
Tačiau tą pačią formulę su kitu indeksu turėsite įterpti tiek kartų, kiek papildomų stulpelių norite gauti.
Laimei, yra geresnė alternatyva. Ji apima masyvų kūrimą. Masyvai leidžia sujungti visus stulpelius, kuriuos norite įtraukti į vieną indeksą.
Kurdami masyvą "Google Sheets", skliausteliuose išvardijate reikšmes arba langelių ir (arba) intervalų nuorodas, pvz. ={1, 2, 3} arba ={1; 2; 3}
Šių įrašų išdėstymas lape priklauso nuo skirtuko:
- Jei naudojate kabliataškį, skaičiai užims skirtingas stulpelio eilutes:
Būtent tai ir reikia daryti "Google Sheets" VLOOKUP indekso argumente.
Kadangi sujungiu "Google" lapus, atnaujinu 2-ąjį stulpelį ir ištraukiu 3-iąjį, turiu sukurti masyvą su šiais stulpeliais: {2, 3} :
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,{2,3},FALSE),""))
Tokiu būdu viena "Google Sheets" VLOOKUP formulė suderina pavadinimus, atnaujina atsargų informaciją ir į tuščią gretimą stulpelį įtraukia susijusius pardavėjus.
Suderinti & sujungti lapus ir pridėti stulpelius naudojant INDEX MATCH
Kita funkcija yra INDEX MATCH. Šios dvi funkcijos kartu konkuruoja su VLOOKUP, nes apeina jos apribojimus jungiant "Google" lapus.
Patarimas. Šioje pamokoje susipažinkite su "Google Sheets" INDEX MATCH.
Pirmiausia priminsiu jums formulę, kuri tiesiog sujungia vieną stulpelį pagal atitikmenis:
=IFERROR(INDEX(Sheet1!$C$1:$C$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Pagal šią formulę, 1 lapas!$C$1:$C$10 yra stulpelis su reikiamomis reikšmėmis, kai 1 lapas!$B$1:$B$10 atitinka tą pačią reikšmę kaip ir B2 dabartinėje lentelėje.
Atsižvelgiant į šiuos aspektus 1 lapas!$C$1:$C$10 kuriuos reikia pakeisti, kad būtų galima ne tik sujungti lenteles ir atnaujinti langelius, bet ir pridėti stulpelius.
Kitaip nei "Google Sheets" VLOOKUP, čia nėra nieko įmantraus. Tiesiog įveskite intervalą su visais reikalingais stulpeliais: vieną, kurį reikia atnaujinti, ir kitus, kuriuos reikia pridėti. Mano atveju tai bus 1 lapas!$C$1:$D$10 :
=IFERROR(INDEX(Sheet1!$C$1:$D$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Arba galiu išplėsti diapazoną iki E10 pridėti 2 stulpelius, o ne tik vieną:
=IFERROR(INDEX(Sheet1!$C$1:$E$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Pastaba. Šie papildomi įrašai visada patenka į gretimus stulpelius. Jei tuose stulpeliuose bus kitos reikšmės, formulė jų neperrašys. Ji pateiks #REF klaidą su atitinkama užuomina:
Išvalius šiuos langelius arba į jų kairę pusę pridėjus naujų stulpelių, bus rodomi formulės rezultatai.
Sujungti "Google" lapus, atnaujinti ląsteles & amp; pridėti susijusių stulpelių - visi naudojant QUERY
QUERY yra viena iš galingiausių "Google" skaičiuoklės funkcijų. Todėl nenuostabu, kad šiandien ją naudosiu norėdamas sujungti keletą "Google" lentelių, atnaujinti langelius ir kartu pridėti papildomų stulpelių.
Ši funkcija nuo kitų skiriasi tuo, kad vienas iš jos argumentų naudoja komandų kalbą.
Patarimas. Jei jums įdomu, kaip naudoti "Google Sheets" funkciją QUERY, apsilankykite šiame tinklaraščio įraše.
Prisiminkime formulę, kuri pirmiausia atnaujina ląsteles:
=IFERROR(QUERY(Sheet1!$A$2:$C$10, "select C where&QUERY!$B2:$B$10&"""),"")
Čia QUERY žiūri į lentelę su reikalingais duomenimis 1 lape, atitinka langelius B stulpelyje su mano dabartine nauja lentele ir sujungia šiuos lapus: kiekvienam atitikimui ištraukia duomenis iš C stulpelio. IFERROR išlaiko rezultatą be klaidų.
Norėdami pridėti papildomų stulpelių šioms atitiktims, turite padaryti 2 nedidelius šios formulės pakeitimus:
- išvardykite visus privalomus stulpelius, skirtus pasirinkite komanda:
...pasirinkite C, D, E...
- atitinkamai išplėskite diapazoną:
...QUERY(Sheet1!$A$2:$E$10,...
Čia pateikiama visa formulė:
=IFERROR(QUERY(Sheet1!$A$2:$E$10, "select C,D,E where&Sheet4!$B2:$B$10&""),""),"")
Atnaujinamas atsargų stulpelis ir iš paieškos lentelės į šią pagrindinę lentelę perkeliami 2 papildomi stulpeliai.
Kaip pridėti nesutampančias eilutes naudojant FILTER + VLOOKUP
Įsivaizduokite: sujungiate 2 "Google" lapus, atnaujinate seną informaciją su nauja ir gaunate naujus stulpelius su papildomomis susijusiomis reikšmėmis.
Ką dar galėtumėte padaryti, kad turėtumėte išsamų turimų įrašų vaizdą?
Galbūt į lentelės pabaigą pridėkite nesutampančių eilučių? Taip turėsite visas reikšmes vienoje vietoje: ne tik sutampančias su atnaujinta susijusia informacija, bet ir nesutampančias, kad jos būtų įskaičiuotos.
Buvau maloniai nustebintas, kad "Google Sheets" VLOOKUP moka tai padaryti. Naudojant kartu su funkcija FILTER, ji sujungia "Google" lapus ir prideda ir nesutampančias eilutes.
Patarimas. Pabaigoje taip pat parodysiu, kaip vienas priedas tą patį daro su vienu žymimuoju langeliu.
"Google Sheets" filtravimo argumentai yra gana aiškūs:
=FILTRAS(diapazonas, sąlyga1, [sąlyga2, ...])- diapazonas yra duomenys, kuriuos norite filtruoti.
- sąlyga1 yra stulpelis arba eilutė su filtravimo kriterijumi.
- kriterijus2, kriterijus3 ir t. t. yra visiškai neprivalomi. Juos naudokite, kai reikia naudoti kelis kriterijus.
Patarimas. Šiame tinklaraščio įraše sužinosite daugiau apie "Google Sheets" funkciją FILTER.
Taigi kaip šios dvi funkcijos gali veikti kartu ir sujungti "Google" lapus? Na, FILTER grąžina duomenis pagal VLOOKUP sukurtus filtravimo kriterijus.
Pažvelkite į šią formulę:
=FILTRAS(Lapas1!$A$2:$E$10,ISERROR(VLOOKUP(Lapas1!$B$2:$B$10,$B$2:$C$10,2,FALSE)=1))
Ji ieško atitikmenų 2 "Google" lentelėse ir perkelia nesutampančias eilutes iš vienos lentelės į kitą:
Paaiškinsiu, kaip tai veikia:
- FILTRAS eina į paieškos lapą (lentelė su visais duomenimis - 1 lapas!$A$2:$E$10 ) ir naudoja VLOOKUP, kad gautų tinkamas eilutes.
- VLOOKUP paima elementų pavadinimus iš to paieškos lapo B stulpelio ir sulygina juos su pavadinimais iš mano dabartinės lentelės. Jei jie nesutampa, VLOOKUP praneša, kad įvyko klaida.
- ISERROR kiekvieną tokią klaidą pažymi 1 ir nurodo, kad FILTER turi perkelti šią eilutę į kitą lapą.
Dėl to formulė ištraukia 3 papildomas eilutes toms uogoms, kurių nėra mano pagrindinėje lentelėje.
Tai nėra taip sudėtinga, kai šiek tiek pažaisite su šiuo metodu :)
Tačiau jei nenorite tam skirti laiko, yra geresnis ir greitesnis būdas - be vienos funkcijos ir formulės.
Formulės neturintis būdas suderinti & amp; sujungti duomenis - "Merge Sheets" priedas
"Merge Sheets" papildinys apima visas 3 galimybes sujungiant "Google" lapus:
- pagal atitikmenis atnaujinamos susijusios ląstelės.
- pridedami nauji šių atitikčių stulpeliai.
- įterpia eilutes su nesutampančiais įrašais
Siekiant išvengti painiavos, procesas skirstomas į 5 paprasti žingsniai :
- Pirmieji du yra ten, kur pasirinkite stalus net jei jie yra skirtingose skaičiuoklėse.
- Svetainėje 3d , jūs turite pasirinkti pagrindinį (-ius) stulpelį (-ius) kuriose turėtų būti tikrinama, ar jos sutampa.
- Svetainė 4 žingsnis leidžia jums nustatyti atnaujinamus stulpelius su naujais įrašais arba pridėkite iš vieno lapo į kitą:
Prireikė kelių sekundžių, kol pamačiau rezultatą:
Įdiekite "Merge Sheets" iš "Google Sheets" parduotuvės ir pamatysite, kad ji taip pat greitai apdoroja didesnes lenteles. Naudodami "Merge Sheets" turėsite daugiau laiko svarbiems reikalams.
Taip pat paliksiu šį 3 minučių trukmės demonstracinį vaizdo įrašą, kuris padės jums apsispręsti :)
Skaičiuoklės su formulės pavyzdžiais
Sujungti "Google" lapus, pridėti susijusių stulpelių ir antspaudų; nesutampančios eilutės - formulės pavyzdžiai (pasidarykite šios skaičiuoklės kopiją)