Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Сравнение частично совпадающего текста в двух столбцах - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Сравнение частично совпадающего текста в двух столбцах
my_nick_is_so_awesome Дата: Вторник, 15.07.2014, 20:56 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте!
У меня есть список-эталон, который нужно сравнить с другим списком (см. вложение).
Особенность в том, что значения в списке для сравнения могут лишь частично совпадать с эталоном.
Вопрос: как автоматизировать сравнение и вывод результата о наличии совпадения/частичного совпадения.
(желаемые результаты вывода отмечены во вложении цветом)
Заранее спасибо!
К сообщению приложен файл: ______.xlsx (8.7 Kb)
 
Ответить
СообщениеЗдравствуйте!
У меня есть список-эталон, который нужно сравнить с другим списком (см. вложение).
Особенность в том, что значения в списке для сравнения могут лишь частично совпадать с эталоном.
Вопрос: как автоматизировать сравнение и вывод результата о наличии совпадения/частичного совпадения.
(желаемые результаты вывода отмечены во вложении цветом)
Заранее спасибо!

Автор - my_nick_is_so_awesome
Дата добавления - 15.07.2014 в 20:56
_Boroda_ Дата: Вторник, 15.07.2014, 23:47 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16711
Репутация: 6502 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Так нужно?
Запятые игнорирует в обоих списках. Точки в эталоне игнорирует, в списке для сравнения воспринимает как сокращение. До 99 слов в каждой строке списка для сравнения (можно увеличить).
Код
=ЕСЛИ(СУММ(--ЕЧИСЛО(ПОИСК(" "&СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(" "&F3;" ";ПОВТОР(" ";99));99*СТРОКА(ДВССЫЛ("A1:A"&ДЛСТР(F3)-ДЛСТР(ПОДСТАВИТЬ(F3;" ";""))+1));99);",";"");".";"*"))&" ";ТРАНСП(ПОДСТАВИТЬ(ПОДСТАВИТЬ(" "&C$3:C$8&" ";",";"");".";"")))));"да";"нет")
Формула массива, вводится Контрл Шифт Ентер.
Формулу можно сократить. Если никто до завтра не сделает, то, возможно, покороче напишу, если не забуду. Сейчас занят.
К сообщению приложен файл: 777779_1.xlsx (10.0 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеТак нужно?
Запятые игнорирует в обоих списках. Точки в эталоне игнорирует, в списке для сравнения воспринимает как сокращение. До 99 слов в каждой строке списка для сравнения (можно увеличить).
Код
=ЕСЛИ(СУММ(--ЕЧИСЛО(ПОИСК(" "&СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПСТР(ПОДСТАВИТЬ(" "&F3;" ";ПОВТОР(" ";99));99*СТРОКА(ДВССЫЛ("A1:A"&ДЛСТР(F3)-ДЛСТР(ПОДСТАВИТЬ(F3;" ";""))+1));99);",";"");".";"*"))&" ";ТРАНСП(ПОДСТАВИТЬ(ПОДСТАВИТЬ(" "&C$3:C$8&" ";",";"");".";"")))));"да";"нет")
Формула массива, вводится Контрл Шифт Ентер.
Формулу можно сократить. Если никто до завтра не сделает, то, возможно, покороче напишу, если не забуду. Сейчас занят.

Автор - _Boroda_
Дата добавления - 15.07.2014 в 23:47
Serge_007 Дата: Вторник, 15.07.2014, 23:48 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Вряд ли Вы это хотите, но для примера подходит :)
Код
=-ЕЧИСЛО(ПОИСК(ЛЕВБ(F3;7);C$3))
К сообщению приложен файл: my_nick_is_so_a.xls (29.5 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеВряд ли Вы это хотите, но для примера подходит :)
Код
=-ЕЧИСЛО(ПОИСК(ЛЕВБ(F3;7);C$3))

Автор - Serge_007
Дата добавления - 15.07.2014 в 23:48
Формуляр Дата: Среда, 16.07.2014, 23:12 | Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
my_nick_is_so_awesome, рекомундую заглянуть вот в эту тему.
Но на мой взгляд задача пока недостаточно формализована.
Почитайте, определитесь с критериями сравнения, что куда должно входить, какая часть игнорироваться и почему.
Тогда будет ясно, какой из вариантов больше подходит.


Excel 2003 EN, 2013 EN
 
Ответить
Сообщениеmy_nick_is_so_awesome, рекомундую заглянуть вот в эту тему.
Но на мой взгляд задача пока недостаточно формализована.
Почитайте, определитесь с критериями сравнения, что куда должно входить, какая часть игнорироваться и почему.
Тогда будет ясно, какой из вариантов больше подходит.

Автор - Формуляр
Дата добавления - 16.07.2014 в 23:12
my_nick_is_so_awesome Дата: Четверг, 17.07.2014, 20:14 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
_Boroda_,
Спасибо! Попробовал вручную на нескольких вариантах - работает)
Протестирую еще на нескольких "живых" списках сравнения.

Формулу можно сократить

На что может повлиять длина формулы? На скорость обработки файла?

Serge_007,
Если я правильно понял, в Вашей формуле поиск осуществляется по первым семи символам из списка эталона?


Сообщение отредактировал my_nick_is_so_awesome - Четверг, 17.07.2014, 20:19
 
Ответить
Сообщение_Boroda_,
Спасибо! Попробовал вручную на нескольких вариантах - работает)
Протестирую еще на нескольких "живых" списках сравнения.

Формулу можно сократить

На что может повлиять длина формулы? На скорость обработки файла?

Serge_007,
Если я правильно понял, в Вашей формуле поиск осуществляется по первым семи символам из списка эталона?

Автор - my_nick_is_so_awesome
Дата добавления - 17.07.2014 в 20:14
Serge_007 Дата: Четверг, 17.07.2014, 20:15 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Да


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеДа

Автор - Serge_007
Дата добавления - 17.07.2014 в 20:15
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!