Сравняване на данните в два листа или колони на Google за съвпадения и разлики

  • Споделя Това
Michael Brown

Съдържание

Независимо дали лятото чука на вратите ни, или зимата нахлува във Вестерос, все още работим в Google Sheets и се налага да сравняваме различни части от таблици една с друга. В тази статия споделям начини за сравняване на данните ви и давам съвети за бързото им сравняване.

    Сравняване на две колони или листове

    Една от задачите, които може да имате, е да сканирате две колони или листове за съвпадения или разлики и да ги идентифицирате някъде извън таблиците.

    Сравняване на две колони в Google Sheets за съвпадения и разлики

    Ще започна със сравняване на две клетки в Google Sheets. Този начин ви позволява да сканирате цели колони ред по ред.

    Пример 1. Google Sheets - сравняване на две клетки

    За този първи пример ще ви е необходима помощна колона, за да въведете формулата в първия ред на данните за сравнение:

    =A2=C2

    Ако клетките съвпадат, ще видите TRUE, в противен случай FALSE. За да проверите всички клетки в колона, копирайте формулата надолу към други редове:

    Съвет: За да сравните колони от различни файлове, трябва да използвате функцията IMPORTRANGE:

    =A2=IMPORTRANGE("spreadsheet_url", "Sheet1!A2")

    Пример 2. Google Sheets - сравняване на два списъка за съвпадения и разлики

    • По-добро решение би било да използвате функцията IF. Ще можете да зададете точното състояние за идентични и различни клетки :

      =IF(A2=C2,"Match","Differ")

      Съвет. Ако данните ви са написани в различни случаи и искате да разглеждате тези думи като различни, ето формулата за вас:

      =IF(EXACT(A2,C2), "Съответствие", "Разлика")

      Където EXACT разглежда случая и търси напълно идентични.

    • За идентифициране само на редове с дублиращи се клетки , използвайте тази формула:

      =IF(A2=C2,"Match","")

    • За да маркирате само редове с уникални записи между клетките в две колони, вземете тази:

      =IF(A2=C2,"","Differ")

    Пример 3. Сравняване на две колони в Google Sheets

    • Има начин да избегнете копирането на формулата на всеки ред. Можете да създадете масивна формула IF в първата клетка на помощната колона:

    =ArrayFormula(IF(A2:A=C2:C,"", "Differ"))

    Този IF свързва всяка клетка от колона A със същия ред в колона C. записите са различни , редът ще бъде идентифициран по съответния начин. Хубавото в тази формула за масиви е, че тя автоматично маркира всеки ред едновременно:

  • В случай че предпочитате да наименувате редовете с идентични клетки , попълнете втория аргумент на формулата вместо третия:
  • =ArrayFormula(IF(A2:A=C2:C, "Match",""))

    Пример 4. Сравняване на два листа на Google за разлики

    Често ви се налага да сравнявате две колони в Google Sheets, които принадлежат на една огромна таблица. Или пък могат да бъдат напълно различни таблици, като например отчети, ценови листи, работни смени за месец и т.н. Тогава, според мен, не можете да си позволите да създадете помощна колона или управлението ѝ може да бъде доста трудно.

    Ако това ви звучи познато, не се притеснявайте, можете да отбележите разликите на друг лист.

    Има две таблици с продукти и техните цени. Искам да намеря всички клетки с различно съдържание между тези таблици:

    Започнете със създаването на нов лист и въведете следващата формула в A1:

    =IF(Sheet1!A1Sheet2!A1,Sheet1!A1&"

    Забележка: Трябва да копирате формулата в диапазон, равен на размера на най-голямата таблица.

    В резултат на това ще видите само тези клетки, които се различават по съдържание. Формулата също така ще изтегли записи от двете таблици и ще ги раздели с въведен от вас символ във формулата:

    Съвет: Ако сравняваните листове се намират в различни файлове, отново използвайте функцията IMPORTRANGE:

    =IF(Sheet1!A1IMPORTRANGE("2nd_spreadsheet_url", "Sheet1!A1"),Sheet1!A1&"

    Инструмент за Google Sheets за сравняване на две колони и листове

    Разбира се, всеки от горните примери може да се използва за сравняване на две колони от една или две таблици или дори за съпоставяне на листове. Има обаче инструмент, който създадохме за тази задача и който ще ви бъде от голяма полза.

    Той ще сравни два листа и колони на Google за дубликати или уникати в 3 стъпки. Накарайте го да маркира намерените записи с колона за състояние (която може да се филтрира, между другото) или цвят, да ги копира или премести на друго място или дори да изчисти клетките и да изтрие цели редове с дубликати.

    Използвах добавката, за да намеря редовете от лист 1, които липсват в лист 2, въз основа на Плодове и MSRP колони:

    След това запазих настройките си в един сценарий. Сега мога бързо да ги стартирам, без да минавам отново през всички стъпки, когато записите в таблиците ми се променят. Трябва само да стартирам този сценарий от менюто на Google Sheets:

    За по-голямо удобство сме описали всички опции на инструмента в неговата помощна страница и в този видеоклип:

    Не се колебайте да опитате сами и да забележите колко време ви спестява :)

    Сравняване на данните в два листа на Google и извличане на липсващи записи

    Сравняването на два Google Sheets за разлики и повторения е половината работа, но какво да кажем за липсващи данни? Има специални функции и за това, например VLOOKUP. Нека видим какво можете да направите.

    Намиране на липсващи данни

    Пример 1

    Представете си, че имате два списъка с продукти (колони А и В в моя случай, но те могат да бъдат просто на различни листове). Трябва да намерите тези, които са представени в първия списък, но не и във втория. Тази формула ще ви свърши работа:

    =ISERROR(VLOOKUP(A2,$C:$C,1,0))

    Как работи формулата:

    • VLOOKUP търси продукта от A2 във втория списък. Ако той е там, функцията връща името на продукта. В противен случай ще получите грешка #N/A, което означава, че стойността не е намерена в колона C.
    • ISERROR проверява какво връща VLOOKUP и ви показва TRUE, ако това е стойността, и FALSE, ако е грешката.

    Следователно клетките с FALSE са това, което търсите. Копирайте формулата в други клетки, за да проверите всеки продукт от първия списък:

    Забележка: Ако колоните ви са в различни листове, формулата ви ще се позовава на един от тях:

    =ISERROR(VLOOKUP(A2,Sheet2!$C:$C,1,0))

    Съвет: За да се справите с формула в една клетка, тя трябва да е масивна. Такава формула автоматично ще запълни всички клетки с резултати:

    =ArrayFormula(ISERROR(VLOOKUP(A2:A10,$C:$C,1,0))

    Пример 2

    Друг интелигентен начин би бил да се преброят всички появявания на продукта от A2 в колона C:

    =IF(COUNTIF($C:$C, $A2)=0, "Не е намерен", "")

    Ако няма абсолютно нищо за преброяване, функцията IF ще маркира клетките с Не е намерен . Други клетки ще останат празни:

    Пример 3

    Където има VLOOKUP, има и MATCH. Знаете това, нали? ;) Ето формулата за сравняване на продукти, а не на брой:

    =IF(ISERROR(MATCH($A2,$C:$C,0)), "Не е намерен","")

    Съвет: Не се колебайте да посочите точния обхват на втората колона, ако той остава същият:

    =IF(ISERROR(MATCH($A2,$C2:$C28,0)), "Не е намерен","")

    Изтегляне на съвпадащи данни

    Пример 1

    Вашата задача може да е малко по-сложна: може да се наложи да извлечете цялата липсваща информация за записите, които са общи за двете таблици, например да актуализирате цените. В такъв случай ще трябва да обвиете MATCH в INDEX:

    =INDEX($E:$E,MATCH($A2,$D:$D,0))

    Формулата сравнява плодовете в колона A с плодовете в колона D. За всички намерени плодове тя изтегля цените от колона E в колона B.

    Пример 2

    Както може би се досещате, друг пример е използването на функцията VLOOKUP на Google Sheets, която описахме преди време.

    И все пак има още няколко инструмента за тази работа. Описахме ги всички в нашия блог:

    1. Те са достатъчни за основните дейности: търсене, сравняване и актуализиране на записи.
    2. Те не само ще актуализират клетките, но и ще добавят свързани колони & несъответстващи редове.

    Обединяване на листове с помощта на добавката

    Ако сте уморени от формулите, можете да използвате нашата добавка Merge Sheets за бързо съпоставяне и обединяване на два листа на Google. Наред с основното си предназначение да извлича липсващите данни, тя може също така да актуализира съществуващите стойности и дори да добавя несъответстващи редове. Можете да видите всички промени в цвят или в колона за състоянието, която може да се филтрира.

    Съвет. Също така не забравяйте да разгледате този видеоклип за добавката Merge Sheets:

    Условно форматиране за сравняване на данни в два Google Sheets

    Има още един стандартен начин, който Google предлага за сравняване на данните ви - чрез оцветяване на съвпаденията и/или разликите чрез условно форматиране. Този метод кара всички търсени записи да изпъкнат незабавно. Вашата задача тук е да създадете правило с формула и да го приложите към правилния диапазон от данни.

    Подчертаване на дубликати в два листа или колони

    Нека сравним две колони в Google Sheets за съвпадения и да оцветим само тези клетки в колона А, които съвпадат с клетките в същия ред в колона В:

    1. Изберете диапазона със записи, които да оцветите (за мен A2:A10).
    2. Отидете на Format> Условно форматиране в менюто на електронната таблица.
    3. Въведете проста формула към правилото:

      =A2=C2

    4. Изберете цвета за подчертаване на клетките.

    Съвет: Ако размерите на колоните ви се променят постоянно и искате правилото да отчита всички нови записи, приложете го към цялата колона (A2:A, ако приемем, че данните за сравнение започват от A2) и модифицирайте формулата по следния начин:

    =AND(A2=C2,ISBLANK(A2)=FALSE)

    Това ще обработи цели колони и ще игнорира празни клетки.

    Забележка. За да сравните данни от два различни листа, ще трябва да направите други корекции във формулата. Виждате, че условното форматиране в Google Sheets не поддържа препратки между листове. Можете обаче да получите достъп до други листове непряко:

    =A2=INDIRECT("Sheet2!C2:C")

    В този случай посочете диапазона, към който да се приложи правилото - A2:A10.

    Сравняване на два листа и колони на Google за разлики

    За да подчертаете записи, които не съвпадат с клетките на същия ред в друга колона, процедурата е същата като по-горе. Избирате диапазона и създавате правило за условно форматиране. Формулата тук обаче се различава:

    =A2C2

    Отново модифицирайте формулата, за да направите правилото динамично (да вземе предвид всички новодобавени стойности в тези колони):

    =AND(A2=C2,ISBLANK(A2)=FALSE)

    И използвайте непряката препратка към друг лист, ако колоната, с която трябва да се сравни, е там:

    =A2INDIRECT("Sheet1!C2:C")

    Забележка: Не забравяйте да посочите диапазона, за който да се прилага правилото - A2:A10.

    Сравняване на два списъка и маркиране на записи в двата

    Разбира се, по-вероятно е едни и същи записи във вашите колони да са разпръснати. Стойността в А2 в една колона няма непременно да се намира на втория ред на друга колона. Всъщност тя може да се появи много по-късно. Ясно е, че това изисква друг метод за търсене на елементите.

    Пример 1. Сравняване на две колони в Google Sheets и подчертаване на разликите (уникални)

    За да подчертаете уникалните стойности във всеки списък, трябва да създадете две правила за условно форматиране за всяка колона.

    Оцветете колона А: =COUNTIF($C$2:$C$9,$A2)=0

    Оцветете колона C: =COUNTIF($A$2:$A$10,$C2)=0

    Ето и уникатите, които имам:

    Пример 2. Намиране и подчертаване на дубликати в две колони в Google Sheets

    Можете да оцветите общите стойности след леки промени в двете формули от предишния пример. Просто направете така, че формулата да брои всичко, което е по-голямо от нула.

    Дублиране на цветове между колони само в A: =COUNTIF($C$2:$C$9,$A2)>0

    Цветови дубликати между колони само в C: =COUNTIF($A$2:$A$10,$C2)>0

    Съвет. В този урок ще намерите още много примери за формули за подчертаване на дубликати в Google Sheets.

    Бърз начин за съпоставяне на колони и подчертаване на записи

    Условното форматиране понякога може да бъде сложно: може случайно да създадете няколко правила върху един и същ диапазон или да приложите ръчно цветове върху клетките с правила. Също така трябва да следите всички диапазони: тези, които подчертавате чрез правила, и тези, които използвате в самите правила. Всичко това може да ви обърка много, ако не сте подготвени и не сте сигурни къде да търсите проблема.

    За щастие функцията за сравняване на колони или листове е достатъчно интуитивна, за да ви помогне да съпоставите две колони в една таблица, две различни таблици в един лист или дори два отделни листа и да подчертаете уникалните или дублиращите се колони, които могат да се промъкнат в данните ви.

    Ето как подчертах дублиранията между две таблици въз основа на Плодове и MSRP колони с помощта на инструмента:

    Мога също така да запазя тези настройки в сценарий за многократна употреба. Ако записите се актуализират, ще извикам този сценарий само с едно щракване и добавката веднага ще започне да обработва всички данни. По този начин избягвам многократното настройване на всички тези настройки в стъпките на добавката. Ще видите как работят сценариите в примера по-горе и в този урок.

    Съвет. Видяхте ли демонстрационния видеоклип за добавката за сравняване на колони или листове? Вижте го.

    Всички тези методи вече са на ваше разположение - експериментирайте с тях, модифицирайте ги и ги приложете към вашите данни. Ако нито едно от предложенията не помогне за вашата конкретна задача, не се колебайте да обсъдите вашия случай в коментарите по-долу.

    Майкъл Браун е отдаден технологичен ентусиаст със страст към опростяване на сложни процеси с помощта на софтуерни инструменти. С повече от десетилетие опит в технологичната индустрия, той е усъвършенствал уменията си в Microsoft Excel и Outlook, както и в Google Sheets и Docs. Блогът на Майкъл е посветен на споделянето на неговите знания и опит с други, предоставяйки лесни за следване съвети и уроци за подобряване на продуктивността и ефективността. Независимо дали сте опитен професионалист или начинаещ, блогът на Michael предлага ценни прозрения и практически съвети за извличане на максимума от тези основни софтуерни инструменти.