Excel works!
Чтобы сравнить две ячейки, в которых содержится текст, необходимо просто приравнять их в соседней ячейке. Но что делать, если вам нужно сравнить текст с учетом больших и маленьких букв? А если с учетом английских букв?
Появилась такая потребность, как сравнение текста в Excel? Читайте далее, и, уверен, статья вам поможет:

1) С простым сравнением разобрались? Отлично 🙂
2) Сравнение текста в Excel по регистрам
Сравнение текстов происходит простой формулой в примере номер 1, на картинке. Если необходимо сравнить прописные и заглавные буквы воспользуйтесь функцией =СОВПАД(). Пример 2.
3) Поиск чисел в ячейки с текстом
Самый простой способ найти числа в строке, воспользоваться формулой
=ИЛИ(ЕЧИСЛО(ПОИСК(;B5)))
Самая распространенная ошибка — вместо буквы О пишут число 0 и наоборот
Но обязательно воспользуйтесь формулой массива — нажмите ctrl+shift+enter вместо enter после ввода формулы.
4) Поиск определенных символов в тексте
В примере показывается, как можно найти все заглавные буквы русского алфавита. Но можно использовать эту группу функций для поиска любых символов.
=ИЛИ(ЕЧИСЛО(ПОИСК("A";"Б";"В";"Г";"Д";"Е";"Ж";"З";"И";"Й";"К";"Л";"М";"Н";"О";"П";"Р";"С";"Т";"У";"Ф";"Х";"Ц";"Ч";"Ш";"Щ";"Ъ";"Ы";"Ь";"Э";"Ю";"Я">;B8)))
Опять же не забываем про формулы массивов!
5) Удалить лишние пробелы в начале и конце строки
В версии excel 2007 появилась замечательная функция =СЖПРОБЕЛЫ() — она удаляет все лишние пробелы в начале и конце текста, а так же все задвоенные пробелы. Настоятельно рекомендую запомнить — использую ее чуть ли не каждый день.
6) Поиск символов
Для поиска символов можно использовать функцию =ПОИСК(), она возвращает (считает), на какой позиции находиться заданный вами символ. Подробнее здесь .
7) Поиск символов с помощью условного форматирования или фильтра. Возможность «Содержит»
Можно окрасить все ячейки цветом, которые содержат заданные символы или надписи в них. Для этого воспользуйтесь условным форматированием , как показано на рисунке.

Чтобы оставить только те ячейки, которые содержат нужные символы, воспользуйтесь фильтрами. В фильтрах есть возможность отобрать строки по заданным условиям

Удачной охоты за символами!
Похожие статьи
- 25.10.2015Автофильтр в Excel. Расширенный фильтрPosted in Excel, Работа с текстом, Работа с ячейками
- 12.03.2016Заглавные буквы в Excel. Работа с регистромPosted in Работа с текстом
- 18.03.2015Как разделить текст в Excel по столбцам?Posted in Excel, Работа с текстом
- 27.11.2015Как удалить символ в ячейке Excel?Posted in Работа с текстом
- 19.04.2015Как вставить текст в Excel?Posted in Работа с текстом
- 21.07.2015Как преобразовать текст в число в Excel?Posted in Формулы
- 23.10.2015Сортировка формулойPosted in Excel
- 28.10.2015Как защитить Excel от редактирования?Posted in Файл
Как сравнить текст в двух ячейках в excel
Здравствуйте гуру
Может ли Excel при сравнении текста в двух ячейках (=А1=В1) кроме результата "Истина" и "Ложь", показать что же в этих ячейках различается. Пример файлика прицепляю. Это простейший пример а нужно отслеживать более объемные наименования и указывать в чем ошибка.
Прикрепленные файлы
- шаблон проверки.xlsx (22.1 КБ)
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 8 Регистрация: 09.11.2013
20.11.2013 09:19:51
еще самое элементарное можно посчитать количество знаков в в той и другой строке и сравнить А побуквенное сравнение нужен макрос и довольно сложный Возможно есть готовое решение в других программах
Пользователь
Сообщений: 11907 Регистрация: 22.12.2012
Excel 2016, 365
20.11.2013 09:28:33
UDF, упрощённо
Прикрепленные файлы
- Копия шаблон проверки.xlsb (27.05 КБ)
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
20.11.2013 10:02:26
anvg прикольно, а что это за функция Difference в справочнике эксель не могу найти, какова логика работы почему она в одном месте показывает "ВД" в данном случае в сравниваемых ячейках есть два разных слова "рыбоводство" и "рыболовство" но в другом случае отражаетмя результат "А РОСИЙСКОЙ ФЕДЕРАЦИ И МУНИЦИПАЛЬНЫХ ОБРАЗОВАНИЙ (проверяемая короче эталона)" при этом тут так же есть два разных слова "субъекта" и "субъектов".
PS
Но данная функция не решает всей проблемы все равно текст надо сравнивать глазами что там не так например по строкам 5 и 45 в одном случае не хватает слова и формула пишет (проверяемая короче эталона), в другом случае присутствует лишний пробел и результат тогда такой " ДЕЯТЕЛЬНОСТИ ФИНАНСОВЫХ, НАЛОГОВЫХ И ТАМОЖЕНЫХ ОРГАНОВ И ОРГАНОВ ФИНАНСОВОГО (ФИНАНСОВО-БЮДЖЕТНОГО) НАДЗОРА (проверяемая длиннее эталона)"
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 6111 Регистрация: 21.12.2012
Win 10, MSO 2013 SP1
20.11.2013 10:10:21
| Цитата |
|---|
| прикольно |
"Ctrl+S" - достойное завершение ваших гениальных мыслей. 😉
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
20.11.2013 10:21:37
Z спасибо погляжу
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 11907 Регистрация: 22.12.2012
Excel 2016, 365
20.11.2013 10:27:45
В файле макрос-функция Difference - поэтому и нет её описания в справке.
Выдаёт различие между исследуемой строкой и эталонной + сравнение по длине.
Как дополнение к вариантам Z есть ещё надстройка , найденная Владимиром (ZVI), которая по приблизительному совпадению выдаст, на манер ВПР, правильное значение по приблизительно похожему.
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
20.11.2013 15:48:12
anvg пытаюсь понять логику вашего макроса (хотя в макросах 😮 нихт ферштейн) как он выводит результат
1. в случае с 5 строкой до лишнего пробела у макроса все совпадало но лишний пробел сместил значения и пошел бардак для кода (я так понимаю), вследствии чего отразился такой результат в ячейке контроля (в смысле несовпадение в проверяемых ячейках) и (проверяемая длиннее эталона) это лишний пробел
2. по строке 15 по количеству знаков все ОК но содержание макрос напрягло типа в эталоне рыбо Л о В ство а в проверяемом рыбо В о Д ство и эти буквы ВД несоответствуют эталону
3. по строке 45 количество знаков посчитал их мало (проверяемая короче эталона) далее я так понимаю в проверяемой ячейке проверил совпадения которые нашел в эталоне а что не нашел типа ну на нет и суда нет
4. по строке 52 количество знаков посчитал их мало (проверяемая короче эталона), далее пошел сравнивать текстовку дошел до контрольного слова субъектОВ и начался бардак вместо буквы О (эталон) в проверяемой ячейке идет буква А, вместо буквы В идет пробел и после пробела код теряется в ориентации и для него все становитсмя не то.
Вот вроде все прально делает макрос находит косяки но как то он спотыкается об пробел, это просто мое мнение не претендующее на правильное
PS просто понравился макрос может его как то доработать можно
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
20.11.2013 16:12:59
Еще мысли в слух может ему дать такое условие если это вообще возможно что текст сравнивается не учитывая пробел. А в вывод результата добавить колличество знаков на которые разница типа (проверяемая длиннее эталона 3) глядя на результат если других ошибок нет можно предположить что это по тексту лишние пробелы, а если (проверяемая длиннее эталона 20) то явно впендюрили какое то лишнее слово или в случае (проверяемая короче эталона 20) явно что то удалили
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 6111 Регистрация: 21.12.2012
Win 10, MSO 2013 SP1
20.11.2013 16:22:05
| Цитата |
|---|
| Еще мысли в слух может ему дать. |
"Ctrl+S" - достойное завершение ваших гениальных мыслей. 😉
Пользователь
Сообщений: 14868 Регистрация: 21.12.2012
E-mail и реквизиты в профиле.
20.11.2013 16:23:53
seregeyss, вообще Ваша идея изначально плоха. Не будет пробела, будут знаки препинания, любые символы, сдвоенные буквы, перестановки букв. Эксель не умеет мыслить абстрактно, только вычислять. Может сравнить длину строк, вычислить позицию первого несовпадения и т.д. А так, как Вам хочется, не получится.
Я сам - дурнее всякого примера! .
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
20.11.2013 16:26:23
Z спасиб за ссылка пытался но не смог контора связана с финансами пользователи урезаны в правах на установку ПО чего либо сами, все через админа а у них установка "ни фига не ставить кроме как официально разрешенного" вот таки дела
Лень двигатель прогресса, доказано.
Пользователь
Сообщений: 11907 Регистрация: 22.12.2012
Excel 2016, 365
21.11.2013 04:11:35
Скрытый текст
Public Function Difference(ByVal inspectStr As String, ByVal etalonStr As String) As Variant Dim vLen1 As Long, vLen2 As Long Dim vLen, i As Long, sAdd As String Dim sDif As String, sChar As String With Application.WorksheetFunction inspectStr = .Trim(inspectStr) etalonStr = .Trim(etalonStr) End With If VBA.StrComp(inspectStr, etalonStr, vbTextCompare) = 0 Then Difference = True Else vLen1 = Len(inspectStr): vLen2 = Len(etalonStr): vLen = vLen1 If vLen1 > vLen2 Then vLen = vLen2 sAdd = " (проверяемая длиннее эталона)" ElseIf vLen1 < vLen2 Then sAdd = " (проверяемая короче эталона)" End If inspectStr = UCase$(inspectStr): etalonStr = UCase$(etalonStr) For i = 1 To vLen1 sChar = Mid$(inspectStr, i, 1) If sChar <>Mid$(etalonStr, i, 1) Then sDif = sDif & sChar Next Difference = sDif & sAdd End If End Function
Изменено: anvg - 21.11.2013 04:16:21
Пользователь
Сообщений: 11251 Регистрация: 01.01.1970
21.11.2013 07:46:15
anvg спасиб второй вариант макроса снимает процентов 30 ложных значений по моей проверке связанных с двойными пробелами
покупка
Как сравнить две строки на сходство или выделить различия в Excel?
В некоторых случаях вам может потребоваться только сравнить две соседние ячейки строк и отметить их сходство или различие в Excel. В этой статье представлены два метода достижения этой цели.
Easily compare two ranges/worksheets and highlight the same/different cells in Excel
Click Kutools > Select > Select Same & Different Cells. The Kutools for Excel's Select Same & Diffferent Cells utility helps you easily compare two ranges or worksheets and then highlight the same or different cells in Excel. See below screenshot:
Kutools for Excel includes more than 300 handy Excel tools. Free to try with no limitation in 60 days. Download the free trial now

Сравните две строки с формулой
Как показано на скриншоте ниже, если вы просто хотите узнать, совпадают ли сравниваемые строки или нет, вы можете применить следующую формулу.

1. Выберите пустую ячейку C2, введите формулу = ТОЧНЫЙ (A2; B2) в панель формул и нажмите клавишу Enter. Смотрите скриншот:

Внимание: В формуле A2 и B2 - это ячейки, содержащие сравниваемые строки.
2. Продолжайте выбирать ячейку результата, затем перетаскивайте маркер заполнения к ячейкам, пока не получите все сравниваемые результаты.
Результат FALSE означает, что сравниваемые строки различны, а результат TRUE указывает, что две сравниваемые строки совпадают. Смотрите скриншот:

Сравните две строки на сходство или выделите различия с кодом VBA
Если вы хотите сравнить две строки и выделить сходства или различия между ними. Следующий код VBA может вам помочь.
1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.
2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте следующий код в окно кода.
Код VBA: сравнить две строки столбца на предмет сходства или выделить различия
Sub highlight() Dim xRg1 As Range Dim xRg2 As Range Dim xTxt As String Dim xCell1 As Range Dim xCell2 As Range Dim I As Long Dim J As Integer Dim xLen As Integer Dim xDiffs As Boolean On Error Resume Next If ActiveWindow.RangeSelection.Count > 1 Then xTxt = ActiveWindow.RangeSelection.AddressLocal Else xTxt = ActiveSheet.UsedRange.AddressLocal End If lOne: Set xRg1 = Application.InputBox("Range A:", "Kutools for Excel", xTxt, , , , , 8) If xRg1 Is Nothing Then Exit Sub If xRg1.Columns.Count > 1 Or xRg1.Areas.Count > 1 Then MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel" GoTo lOne End If lTwo: Set xRg2 = Application.InputBox("Range B:", "Kutools for Excel", "", , , , , 8) If xRg2 Is Nothing Then Exit Sub If xRg2.Columns.Count > 1 Or xRg2.Areas.Count > 1 Then MsgBox "Multiple ranges or columns have been selected ", vbInformation, "Kutools for Excel" GoTo lTwo End If If xRg1.CountLarge <> xRg2.CountLarge Then MsgBox "Two selected ranges must have the same numbers of cells ", vbInformation, "Kutools for Excel" GoTo lTwo End If xDiffs = (MsgBox("Click Yes to highlight similarities, click No to highlight differences ", vbYesNo + vbQuestion, "Kutools for Excel") = vbNo) Application.ScreenUpdating = False xRg2.Font.ColorIndex = xlAutomatic For I = 1 To xRg1.Count Set xCell1 = xRg1.Cells(I) Set xCell2 = xRg2.Cells(I) If xCell1.Value2 = xCell2.Value2 Then If Not xDiffs Then xCell2.Font.Color = vbRed Else xLen = Len(xCell1.Value2) For J = 1 To xLen If Not xCell1.Characters(J, 1).Text = xCell2.Characters(J, 1).Text Then Exit For Next J If Not xDiffs Then If J 1 Then xCell2.Characters(1, J - 1).Font.Color = vbRed End If Else If J
3. нажмите F5 ключ для запуска кода. Во-первых Kutools for Excel в диалоговом окне выберите первый столбец текстовых строк, который необходимо сравнить, а затем щелкните значок OK кнопку.

4. Затем второй Kutools for Excel появится диалоговое окно, выберите вторую строку столбца и нажмите кнопку OK кнопку.

5. В последний Kutools for Excel диалоговом окне, если вы хотите сравнить строки на предмет сходства, щелкните Да кнопка. И чтобы выделить различия сравниваемых строк, нажмите кнопку Нет кнопка. Смотрите скриншот:

Затем вы можете увидеть сравниваемые результаты, как показано на скриншоте ниже.

Статьи по теме:
- Как сравнить два столбца и выделить несогласованные данные в Excel?
- Как точно сравнить две строки (с учетом регистра) в Excel?
Как сравнить текст в двух ячейках в excel
Прошу помощи с нетривиальной задачей. В интернете много искал, но решения не нашел. Суть в том, что нужно сравнить два вида записей адресов. Один записывался роботом, второй записывался человеком. Во всех адресах можно найти совпадения, например, по улице.
1. Необходимо сравнить тексты из двух ячеек, найти в них общие последовательности символов. Столбец 1 (первый лист) и Столбец 1 (второй лист).
2. Если есть совпадение, то вывести из первой таблицы данные из 2 и 3 столбца.
Сложность в том, что у нас нет эталонного текста для сравнения, нужно найти именно частичное совпадение в двух разных ячейках. Стоит также понимать, что интересует именно совпадение именно по адресу, а не по цифре дома. Соответственно последовательность совпавших символов должна быть больше 3 (как мне кажется).
Прошу помощи с нетривиальной задачей. В интернете много искал, но решения не нашел. Суть в том, что нужно сравнить два вида записей адресов. Один записывался роботом, второй записывался человеком. Во всех адресах можно найти совпадения, например, по улице.
1. Необходимо сравнить тексты из двух ячеек, найти в них общие последовательности символов. Столбец 1 (первый лист) и Столбец 1 (второй лист).
2. Если есть совпадение, то вывести из первой таблицы данные из 2 и 3 столбца.
Сложность в том, что у нас нет эталонного текста для сравнения, нужно найти именно частичное совпадение в двух разных ячейках. Стоит также понимать, что интересует именно совпадение именно по адресу, а не по цифре дома. Соответственно последовательность совпавших символов должна быть больше 3 (как мне кажется). Alexnef
К сообщению приложен файл: 0458913.xlsx (12.5 Kb)
Сообщение Добрый день.
Прошу помощи с нетривиальной задачей. В интернете много искал, но решения не нашел. Суть в том, что нужно сравнить два вида записей адресов. Один записывался роботом, второй записывался человеком. Во всех адресах можно найти совпадения, например, по улице.
1. Необходимо сравнить тексты из двух ячеек, найти в них общие последовательности символов. Столбец 1 (первый лист) и Столбец 1 (второй лист).
2. Если есть совпадение, то вывести из первой таблицы данные из 2 и 3 столбца.
Сложность в том, что у нас нет эталонного текста для сравнения, нужно найти именно частичное совпадение в двух разных ячейках. Стоит также понимать, что интересует именно совпадение именно по адресу, а не по цифре дома. Соответственно последовательность совпавших символов должна быть больше 3 (как мне кажется). Автор - Alexnef
Дата добавления - 18.09.2020 в 18:06
