Здравейте, как се съпоставят (чекват) две колони с цифри (ЕГН) за да се видят разликите можду тях?

Microsoft Excel

Съпоставяне на цифри в ексел

Нека приемем, че първата колона с числа е в областта А2:А13, а втората - В2:В13

Тогава формулата: =VLOOKUP(A2,$B$2:$B$13,1,0) ще покаже кои числа в колона А ги има в колона В А формулата: =VLOOKUP(B2,$A$2:$A$13,1,0) ще даде обратното - кои числа от В ги има и в А

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

А пък ако има и повторения, тогава нещата се усложняват още малко.

Какво по-точно се иска?

Когато сортираме таблицата по 2 критерия първо едната колона, а като втори критерий другата, ще ги видим подредени и лесно ще открием различните ЕГН-та.

това със сортирането е силно неефективно решение. Ако са 20-30 записа в колона може и да върши работа, но ако са по 2-3 хиляди - методът с VLOOKUP, който съм описал е по-удачен.

Здравейте, Благодаря за отговорите. Целта ми е да съпоставя списък с ЕГН сред които има повторения със списък на ЕГН, които би трябвало да са същите, но не са. Варианта с подрежането срещу всяко А да стои същото число от Б или празно е крайната ми цел. Ще съм благодарен ако ми покажте как а го направя. Записите са 1003 броя. Поздрави!

Според мен при Вас може този вариант да се окаже удачен. Копирала съм 2 пъти данните, за да се види промяната. Стъпките от 1 до 6 описват действията. Важно е да сме маркирали всички данни (при мен са само 2 колони). Аз препоръчвам да са маркирани и надписите на колоните (това улеснява избора на критерий за сортиране).

Аз лично бих препоръчала функцията Match за exact match - така ще ви каже кои ЕГН-та от едната колона се засичат с тези от другата. Може да използвате повече от 1 критерии като ги свържите с &. Напр. =MATCH(A2&B2,E:E&F:F,0) - име от колона А в клетка А2 заедно (&) със съответното ЕГН от колона В (В2) се сравняват с наличните в колони Е и F (Е:Е&F&F), като се търси точно съвпадение (т.е. 0) Формулата се изпълнява накрая чрез натискане едновременно на Ctrl+Shift+Enter. Като резултат ще даде цифра, която отговаря на реда, където е съответното точно съвпадение, или ако няма такова - #N/A. Аз лично използвам Index+Match вместо Vlookup, понеже дава по-точни резултати, но това е нужно само, когато искам да копирам точно съдържанието на клетката, ако условията в Match са точно съвпадение. Завършвате формулата със същата комбинация от клавиши. Представете си да го правите за файл с над 50 хиляди реда. :D Ако искате напр. да копирате данните от колона В срещу техния еквивалент от колона Е, тогава тази комбинация е удачна. Напр. =index(B:B,match(A2,E:E,)) - задаваш на системата да ти копира съответната клетка от колона В (В:В), ако имаш точно съвпадение (0) на клетка А2 в колона Е:Е. Ох, нещо много сложно го написах. Пишете, ако не разберете. Аз лично използвам тези 2 формули доста често, а боравя с данни, където редовете ми са над 50 хиляди във всеки файл. :)

Ще се опитам да разясня какво имах предвид, когато казах, че сортирането не е ефективно решение. След това ще покажа по-доброто решение, което не е с VLOOKUP, а с алтернативата - Index+Match

Пример: Имаме два списъка с имена и номера (ЕГН). Както обикновено се случва в живия живот, някои от имената и номерата се повтарят и в двата списъка, а някои се намират само в първия, трети - само във втория.

Сортираме ги (Дарина Иванова е обяснила много добре как става) получаваме това:

Това далеч не е това, което искаме. Гошо е срещу Гошо, но срещу Тошо е Ваня, срещу Диди - Лили, а срещу Лили - Катя.

На помощ идва една елементарна формула, която връща резултат TRUE, ако две стойности са еднакви:

Започваме с CUT / Paste да смъкваме редовете на втория списък, докато постигнем крайния резултат

Процесът е изцяло ръчен, изисква взиране и сравнение и много пъти копиране, рязане и пействане. За този пример от 10-на реда ми отне около пет минути, не ми се мисли с 1000 реда колко ще е.

Алтернативното решение с Index+Match:

Въвеждат се показаните формули за двата списъка. Те по същество търсят съответните ЕГН-та в другия списък и ако ги намерят - връщат името или ЕГН-то, ако не ги намерят - връщат празно.

Накрая тези, които ги има само във втория списък ръчно се копират и пействат под първия (оцветени са в синьо).

За повече редове, най-лесно става като се сложи филтър на списъка и се филтрират празните клетки примерно в колона К.

Цялата работа трае също около 5 минути, обаче няма значение дали са 10, 1000 или сто хиляди реда.

Надявам се да е станало ясно, ако не - питай


Вашият отговор

Научи компютърните програми онлайн от топ експертите на България
Регистрацията в АУЛА ви дава:
  • 20 безплатни урока
  • Трикове и тънкости за софтуера
  • Отговори на вашите въпроси
  • Регистрация