Tartalomjegyzék
Tudtad, hogy 2 Google lap összevonásakor nem csak az egyik oszlopban lévő rekordokat frissítheted, hanem egész kapcsolódó oszlopokat és még a nem egyező sorokat is kihúzhatod? Ma megmutatom, hogyan történik ez a VLOOKUP, INDEX/MATCH, QUERY funkciók és a Merge Sheets kiegészítő segítségével.
A legutóbbi alkalommal, amikor a 2 Google lap összevonásáról beszéltem, megosztottam a megfelelés és a bélyegző módját; adatok frissítése. Ezúttal továbbra is frissítjük a cellákat, de más kapcsolódó oszlopokat és nem egyező sorokat is húzunk.
Itt van a keresőtáblám, amelyből ma minden szükséges adatot kiveszek:
Ezúttal nagyobb lett: két extra oszlopot tartalmaz a gyártók nevével és értékelésével. A Készlet oszlopot frissíteni fogom ezekkel az információkkal egy másik táblázatban, és a gyártók is ki lesznek húzva. Nos, talán a minősítések is :)
Szokás szerint néhány funkciót és egy speciális kiegészítőt fogok használni a munkához.
Google lapok egyesítése & kapcsolódó oszlopok hozzáadása VLOOKUP használatával
Emlékszel a Google Sheets VLOOKUP-ra? Az előző cikkemben használtam az adatok egyeztetésére és néhány cella frissítésére.
Ha ez a funkció még mindig elriaszt, akkor itt az ideje, hogy szembenézz vele, és egyszer s mindenkorra megtanuld, mert ma én is használni fogom :)
Tipp: Ha egy gyors megoldást keres, amellyel időt takaríthat meg, azonnal találkozzon a Merge Sheets programmal.
Vegyük át gyorsan a képlet szintaxisát:
=VLOOKUP(search_key, range, index, [is_sorted])- search_key az, amit keresel.
- tartomány az a hely, ahol keresed.
- index annak az oszlopnak a száma, amelyből az értéket vissza kell adni.
- [is_sorted] teljesen opcionális, és azt jelzi, hogy a kulcsoszlop rendezett-e.
Tipp: A Google Sheets VLOOKUP-nak egy egész bemutatót szenteltünk a blogunkon, nézze meg bátran.
Amikor két Google lapot egyesítettem, és egyszerűen frissítettem az adatokat a Készlet oszlopban, ezt a VLOOKUP képletet használtam:
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,2,FALSE),"")))
Az IFERROR megbizonyosodott arról, hogy nem voltak hibák az egyezés nélküli cellákban, az ARRAYFORMULA pedig egyszerre dolgozta fel az egész oszlopot.
Milyen változtatásokat kell tennem ahhoz, hogy a szállítók új oszlopként is megjelenjenek a keresőtáblában?
Nos, mivel ez a index amely megmondja a Google Sheets VLOOKUP-nak, hogy melyik oszlopból vegye az adatokat, akkor nyugodtan mondhatjuk, hogy ez az, amelyik finomhangolásra szorul.
A legegyszerűbb módja az lenne, ha egyszerűen átmásolnánk a képletet a szomszédos oszlopba, és megnövelnénk a index eggyel (cserélje ki 2 a címen 3 ):
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,3,FALSE),"")))
Azonban ugyanazt a képletet más indexszel annyiszor kell beillesztenie, ahány további oszlopot szeretne kapni.
Szerencsére van egy jobb alternatíva, amely a tömbök létrehozását jelenti. A tömbök segítségével az összes olyan oszlopot, amelyet egy indexbe szeretnénk behívni, egyesíthetjük.
Amikor a Google Sheetsben tömböt hoz létre, az értékeket vagy a cellára/tartományra való hivatkozásokat zárójelben sorolja fel, pl. ={1, 2, 3} vagy ={1; 2; 3}
Ezeknek a rekordoknak a lapon belüli elrendezése az elhatárolótól függ:
- Ha pontosvesszőt használ, a számok egy oszlopon belül különböző sorokat foglalnak el:
Ez utóbbi pontosan az, amit a Google Sheets VLOOKUP index argumentumában kell tennie.
Mivel egyesítem a Google lapokat, frissítem a 2. oszlopot és kihúzom a 3. oszlopot, létre kell hoznom egy tömböt ezekkel az oszlopokkal: {2, 3} :
=ArrayFormula(IFERROR(VLOOKUP($B$2:$B$10,Sheet1!$B$2:$D$10,{2,3},FALSE),"")))
Így egy Google Sheets VLOOKUP-formula egyezteti a neveket, frissíti a készletinformációkat, és hozzáadja a kapcsolódó szállítók adatait egy üres szomszédos oszlophoz.
Match & lapok egyesítése és oszlopok hozzáadása INDEX MATCH segítségével
A következő az INDEX MATCH. Ez a két funkció együtt versenyez a VLOOKUP-pal, mivel megkerüli annak korlátait a Google lapok összevonásakor.
Tipp: Ismerje meg az INDEX MATCH-t a Google Sheets számára ebben a bemutatóban.
Hadd kezdjem azzal, hogy emlékeztetem a képletre, amely egyszerűen összevon egy oszlopot az egyezések alapján:
=IFERROR(INDEX(Sheet1!$C$1:$C$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Ebben a képletben, Sheet1!$C$1:$C$10 egy oszlop a szükséges értékekkel, amikor Sheet1!$B$1:$B$10 ugyanazzal az értékkel találkozik, mint a B2 az aktuális táblázatban.
Ezeket a pontokat szem előtt tartva Sheet1!$C$1:$C$10 amelyeket meg kell változtatnia ahhoz, hogy ne csak táblázatokat egyesítsen és cellákat frissítsen, hanem oszlopokat is hozzáadjon.
A Google Sheets VLOOKUP-jával ellentétben itt nincs semmi különös. Csak meg kell adni a tartományt az összes szükséges oszloppal: az egyiket frissíteni kell, a többit pedig hozzáadni. Az én esetemben ez a következő lesz Sheet1!$C$1:$D$10 :
=IFERROR(INDEX(Sheet1!$C$1:$D$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Vagy kiterjeszthetem a tartományt E10 hogy 2 oszlopot adjon hozzá, ne csak egyet:
=IFERROR(INDEX(Sheet1!$C$1:$E$10,MATCH(B2,Sheet1!$B$1:$B$10,0)),"")
Megjegyzés: Ezek az extra rekordok mindig a szomszédos oszlopokba esnek. Ha ezekben az oszlopokban más értékek lesznek, a képlet nem írja felül őket. #REF hibát ad a megfelelő utalással:
Amint törli ezeket a cellákat, vagy új oszlopokat ad hozzá balra, megjelennek a képlet eredményei.
Összevonása Google lapok, cellák frissítése & hozzá kapcsolódó oszlopok - minden segítségével QUERY
A QUERY az egyik legerősebb funkció a Google táblázatokban. Így nem meglepő, hogy ma használni fogom, hogy egyesítsek néhány Google lapot, frissítsem a cellákat és adjak hozzá extra oszlopokat egyszerre.
Ez a funkció abban különbözik a többitől, hogy az egyik argumentuma egy parancsnyelvet használ.
Tipp: Ha kíváncsi, hogyan kell használni a Google Sheets QUERY funkciót, látogasson el erre a blogbejegyzésre.
Először idézzük fel a cellákat frissítő képletet:
=IFERROR(QUERY(Sheet1!$A$2:$C$10, "select C where&QUERY!$B2:$B$10&""""),"")
Itt QUERY nézi a táblázatot a szükséges adatok Sheet1, egyezik cellák oszlop B az én jelenlegi új táblázat, és egyesíti ezeket a lapokat: húzza az adatokat a C oszlop minden egyezés. IFERROR tartja az eredmény hibátlan.
Ahhoz, hogy további oszlopokat adjon hozzá ezekhez a találatokhoz, 2 apró változtatást kell végrehajtania ezen a képleten:
- felsorolja az összes kötelező oszlopot a válassza ki a címet. parancs:
...válassza ki a C,D,E...
- bővítse a tartományt, hogy ennek megfelelően nézzen ki:
....QUERY(Sheet1!$A$2:$E$10,...
Itt a teljes képlet:
=IFERROR(QUERY(Sheet1!$A$2:$E$10, "select C,D,E where&Sheet4!$B2:$B$10&""""),"")
Frissíti a készlet oszlopot, és 2 további oszlopot húz a keresési táblázatból ebbe a fő táblázatba.
Hogyan adjunk hozzá nem egyező sorokat a FILTER + VLOOKUP használatával?
Képzeld el a következőt: egyesítesz 2 Google lapot, frissíted a régi adatokat az újjal, és új oszlopokat kapsz extra kapcsolódó értékekkel.
Mit tehetne még azért, hogy teljes képet kapjon a kéznél lévő nyilvántartásokról?
Esetleg a nem egyező sorok hozzáadása a táblázat végéhez? Így az összes érték egy helyen lesz: nemcsak a frissített kapcsolódó információkkal való egyezés, hanem a nem egyező értékek is, hogy azok is számítsanak.
Kellemesen meglepett, hogy a Google Sheets VLOOKUP tudja, hogyan kell ezt csinálni. A FILTER funkcióval együtt használva a Google lapokat összevonja, és hozzáadja a nem egyező sorokat is.
Tipp: A végén azt is megmutatom, hogy egy bővítmény hogyan teszi ugyanezt egyetlen jelölőnégyzettel.
A Google Sheets FILTER érvei elég egyértelműek:
=FILTER(range, condition1, [condition2, ...])- tartomány a szűrni kívánt adatok.
- feltétel1 egy oszlop vagy egy sor egy szűrési kritériummal.
- kritérium2, kritérium3 stb. teljesen opcionálisak. Akkor használja őket, ha több kritériumot kell használnia.
Tipp: Ebben a blogbejegyzésben többet megtudhat a Google Sheets FILTER funkciójáról.
Hogyan tud ez a két funkció együtt dolgozni és összevonni a Google lapokat? Nos, a FILTER a VLOOKUP által létrehozott szűrési feltételek alapján adja vissza az adatokat.
Nézd meg ezt a képletet:
=FILTER(Sheet1!$A$2:$E$10,ISERROR(VLOOKUP(Sheet1!$B$2:$B$10,$B$2:$C$10,2,FALSE)=1)))
A program 2 Google-táblázatot keres egyezésekre, és a nem egyező sorokat az egyik táblából a másikba húzza:
Hadd magyarázzam el, hogyan működik:
- A FILTER a kereső lapra megy (egy táblázat az összes adattal - Sheet1!$A$2:$E$10 ), és a VLOOKUP segítségével megkapja a megfelelő sorokat.
- A VLOOKUP a keresőlap B oszlopában lévő elemek nevét veszi, és összeveti az aktuális táblázatomban lévő nevekkel. Ha nincs egyezés, a VLOOKUP hibát jelez.
- Az ISERROR minden ilyen hibát 1-gyel jelöl, ami azt mondja a FILTER-nek, hogy vegye át ezt a sort egy másik lapra.
Ennek eredményeképpen a képlet 3 további sort húz azoknak a bogyóknak, amelyek nem szerepelnek a fő táblázatban.
Nem is olyan bonyolult, ha egy kicsit játszol ezzel a módszerrel :)
De ha nem akarod erre fordítani az idődet, van egy jobb és gyorsabb megoldás - egyetlen függvény és képlet nélkül.
Formula-mentes módja az adatok egyeztetésének és összevonásának - Merge Sheets add-on
A Merge Sheets bővítmény mind a 3 lehetőséget magában foglalja a Google lapok összevonásakor:
- frissíti a kapcsolódó cellákat az egyezések alapján
- új oszlopokat ad hozzá ezekhez a találatokhoz
- nem egyező rekordokat tartalmazó sorok beillesztése
A félreértések elkerülése végett a folyamat a következőkre oszlik 5 egyszerű lépés :
- Az első két ott vannak, ahol válassza ki az asztalokat még akkor is, ha különböző táblázatokban vannak.
- A oldalon. a 3d , akkor a következőkre van szükséged válassza ki a kulcsoszlop(ok)at amelyeket ellenőrizni kell az egyezésekre.
- A 4. lépés lehetővé teszi, hogy a frissítendő oszlopok beállítása új rekordokkal vagy adjunk hozzá egyik lapról a másikra:
Eltartott néhány másodpercig, amíg láthattam az eredményt:
Telepítse a Merge Sheets programot a Google Sheets áruházból, és meglátja, hogy a nagyobb táblázatokat is ugyanolyan gyorsan feldolgozza. A Merge Sheetsnek köszönhetően több ideje marad a fontos dolgokra.
Itt hagyom ezt a 3 perces demó videót is, hogy segítsen eldönteni a dolgot :)
Táblázat képlet példákkal
Google lapok egyesítése, kapcsolódó oszlopok hozzáadása & nem egyező sorok - képlet példák (készítsen egy másolatot erről a táblázatról)