В настоящее время я пытаюсь согласовать поля «Имя» из двух отдельных источников данных. У меня есть несколько имен, которые не являются точным соответствием, но достаточно близки, чтобы считаться совпадающими (примеры ниже). У вас есть идеи, как я могу улучшить количество автоматических матчей? Я уже исключаю средние инициалы из критериев соответствия.
Формула текущего матча:
=IFERROR(IF(LEFT(SYSTEM A,IF(ISERROR(SEARCH(" ",SYSTEM A)),LEN(SYSTEM A),SEARCH(" ",SYSTEM A)-1))=LEFT(SYSTEM B,IF(ISERROR(SEARCH(" ",SYSTEM B)),LEN(SYSTEM B),SEARCH(" ",SYSTEM B)-1)),"",IF(LEFT(SYSTEM A,FIND(",",SYSTEM A))=LEFT(SYSTEM B,FIND(",",SYSTEM B)),"Last Name Match","RESEARCH")),"RESEARCH")
источник
Я хотел бы использовать этот список (только на английском языке), чтобы отсеять обычные сокращения.
Кроме того, вы можете рассмотреть возможность использования функции, которая точно скажет вам, насколько «близки» две строки. Следующий код пришел отсюда и благодаря ухмылке .
Это скажет вам, сколько вставок и удалений нужно сделать с одной строкой, чтобы перейти к другой. Я бы попытался сохранить это число низким (и фамилии должны быть точными).
источник
У меня есть (длинная) формула, которую вы можете использовать. Он не так хорошо отточен, как те, что указаны выше - и работает только для фамилии, а не для полного имени - но вы можете найти это полезным.
Так что если у вас есть строка заголовка , и хотите , чтобы сравнить
A2
сB2
, поместите это в любой другой ячейке в этой строке (например,C2
) и скопировать вниз до конца.Это вернет:
После этого он даст вам степень от 0 ° до 6 ° в зависимости от количества точек сравнения между ними. (то есть 6 ° сравнивает лучше).
Как я уже сказал, немного грубо и готово, но, надеюсь, приведет вас примерно к правильному балл-парку.
источник
Искал что-то подобное. Я нашел код ниже. Я надеюсь, что это поможет следующему пользователю, который приходит к этому вопросу
Я бы сказал, что это достаточно близко к тому, что вы хотели :)
источник
Вы можете использовать функцию подобия (pwrSIMILARITY), чтобы сравнить строки и получить процентное совпадение двух. Вы можете сделать это с учетом регистра или нет. Вам нужно будет решить, какой процент совпадений «достаточно близок» для ваших нужд.
Там есть справочная страница по адресу http://officepowerups.com/help-support/excel-function-reference/excel-text-analyzer/pwrsdentifity/ .
Но это работает довольно хорошо для сравнения текста в столбце A с столбцом B.
источник
Хотя мое решение не позволяет идентифицировать очень разные строки, оно полезно для частичного соответствия (совпадение подстроки), например, «это строка» и «строка» будет выглядеть как «соответствие»:
просто добавьте «*» до и после строки для поиска в таблице.
Обычная формула:
становится
«&» - это «короткая версия» для concatenate ()
источник
Этот код сканирует столбцы a и b, если обнаруживает сходство в обоих столбцах, которые показаны желтым цветом. Вы можете использовать цветной фильтр, чтобы получить окончательное значение. Я не добавил эту часть в код.
источник