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

Вход

Регистрация

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

 

= Мир MS Excel/Индексирование списка на базе нечёткого поиска - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: _Boroda_, китин  
Мир MS Excel » Вопросы и решения » Готовые решения » Индексирование списка на базе нечёткого поиска (VBA)
Индексирование списка на базе нечёткого поиска
Формуляр Дата: Воскресенье, 18.05.2014, 21:39 | Сообщение № 1
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Данная тема возникла как результат эволюции Простой метрики сходства текстовых строк.
В процессе развития задача изменилась, область примененя сместилась, а сама процедура уже никак не вписывается в категорию "простой".
Итак, на данный момент мы имеем UDF TxtSimIndex_Nx2(), которая находит в указанном списке (списке поиска) наиболее подходящие ключевые словосочетания из другого списка (справочника). В качестве результата выдаёт таблицу с номером самого подходящего ключа и степень его сходства для каждой строки списка поиска.

В файле SimTextIdx_Vlad - решение под конкретную задачу от Vlad_i_mir, где индексирование запускается кнопкой.
В файле SimTextIdx - другие вариации на ту же тему: реализация как макросом, таки непосредственным вводом UDF в ячейку. На последнем листе проверочный расчёт метрики сходства для отдельно взятой пары строк. При желании можно поэкспериментировать с настройками.

Принцип работы и настроечные параметры описываются в старой теме, а также в обрывочных коммениариях в файле.
Прописывал всё, честно признаться, очень сумбурно. Сомневаюсь, что найдётся много желающих углубляться внутрь. Ну а на пользовательском уровне, разобраться, думаю, можно.
Спрашивайте, если где чего непонятно.
К сообщению приложен файл: SimTextIdx_Vlad.rar (61.2 Kb) · SimTextIdx621.rar (70.0 Kb)


Excel 2003 EN, 2013 EN
 
Ответить
СообщениеДанная тема возникла как результат эволюции Простой метрики сходства текстовых строк.
В процессе развития задача изменилась, область примененя сместилась, а сама процедура уже никак не вписывается в категорию "простой".
Итак, на данный момент мы имеем UDF TxtSimIndex_Nx2(), которая находит в указанном списке (списке поиска) наиболее подходящие ключевые словосочетания из другого списка (справочника). В качестве результата выдаёт таблицу с номером самого подходящего ключа и степень его сходства для каждой строки списка поиска.

В файле SimTextIdx_Vlad - решение под конкретную задачу от Vlad_i_mir, где индексирование запускается кнопкой.
В файле SimTextIdx - другие вариации на ту же тему: реализация как макросом, таки непосредственным вводом UDF в ячейку. На последнем листе проверочный расчёт метрики сходства для отдельно взятой пары строк. При желании можно поэкспериментировать с настройками.

Принцип работы и настроечные параметры описываются в старой теме, а также в обрывочных коммениариях в файле.
Прописывал всё, честно признаться, очень сумбурно. Сомневаюсь, что найдётся много желающих углубляться внутрь. Ну а на пользовательском уровне, разобраться, думаю, можно.
Спрашивайте, если где чего непонятно.

Автор - Формуляр
Дата добавления - 18.05.2014 в 21:39
Vlad_i_mir Дата: Вторник, 20.05.2014, 11:00 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Саня, спасибо!
Такой вопрос: если увеличить константы "FRAG_REPT_LIM_1" и "WORD_NUM_LIM_1" это приведёт только к увеличению времени расчёта и потребляемых ресурсов или это отразиться ещё на чём-то?
 
Ответить
СообщениеСаня, спасибо!
Такой вопрос: если увеличить константы "FRAG_REPT_LIM_1" и "WORD_NUM_LIM_1" это приведёт только к увеличению времени расчёта и потребляемых ресурсов или это отразиться ещё на чём-то?

Автор - Vlad_i_mir
Дата добавления - 20.05.2014 в 11:00
Формуляр Дата: Вторник, 20.05.2014, 11:48 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Сами константы влияют только на ресурсы.
Но в реальности я пока ни разу в их ограничение не упирался.
Думаю, справочник на несколько тыс. записейможет потянуть. Если нет, нужно будет, видимо, группировать по городам.
Время увеличится, когда увеличится объём самой информации в справочнике. Пустые записи просто игнорируются.


Excel 2003 EN, 2013 EN
 
Ответить
СообщениеСами константы влияют только на ресурсы.
Но в реальности я пока ни разу в их ограничение не упирался.
Думаю, справочник на несколько тыс. записейможет потянуть. Если нет, нужно будет, видимо, группировать по городам.
Время увеличится, когда увеличится объём самой информации в справочнике. Пустые записи просто игнорируются.

Автор - Формуляр
Дата добавления - 20.05.2014 в 11:48
Zorro063 Дата: Среда, 13.08.2014, 21:20 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Доброго времени суток, перешел с ветки про нечеткий поиск за помощью:

В приложенном файле нужно на первый лист подтянуть значения аналитики (вторая колонка) со второго листа. Попробовал разобраться с помощью =fuzzylookup, но, ввиду очень большого справочника (больше, чем массив поиска), обработка файла оказалась ооочень долгой и результаты оказались совсем неоднозначные.

С функцией TxtSimIndex_Nx2 не пойму как работать. Получится ли использовать эту функцию в данном случае?

Очень рассчитываю на вашу помощь
К сообщению приложен файл: 6710370.xlsx (97.9 Kb)


Сообщение отредактировал Zorro063 - Четверг, 14.08.2014, 08:45
 
Ответить
СообщениеДоброго времени суток, перешел с ветки про нечеткий поиск за помощью:

В приложенном файле нужно на первый лист подтянуть значения аналитики (вторая колонка) со второго листа. Попробовал разобраться с помощью =fuzzylookup, но, ввиду очень большого справочника (больше, чем массив поиска), обработка файла оказалась ооочень долгой и результаты оказались совсем неоднозначные.

С функцией TxtSimIndex_Nx2 не пойму как работать. Получится ли использовать эту функцию в данном случае?

Очень рассчитываю на вашу помощь

Автор - Zorro063
Дата добавления - 13.08.2014 в 21:20
Формуляр Дата: Вторник, 26.08.2014, 16:45 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Использовать можно.
Только сперва нужно справочник в порядок привести: выкинуть всякий мусор и оставить реально ключевые слова (ну или номера), по которым происходит сравнение.
Справочник в нынешнем виде со страшной силой жрёт память (поэтому в прилагаемом файле ограничен первыми 333 строками) и снижает качество сравнения за счёт огромного числа случайных несущественных совпадений.

PS: прошу извинить за замедленную реакцию, как-то пропустил ваш пост, а потом наткнулся случайно.
К сообщению приложен файл: SimTextIdxZorro.rar (86.3 Kb)


Excel 2003 EN, 2013 EN

Сообщение отредактировал Формуляр - Вторник, 26.08.2014, 16:48
 
Ответить
СообщениеИспользовать можно.
Только сперва нужно справочник в порядок привести: выкинуть всякий мусор и оставить реально ключевые слова (ну или номера), по которым происходит сравнение.
Справочник в нынешнем виде со страшной силой жрёт память (поэтому в прилагаемом файле ограничен первыми 333 строками) и снижает качество сравнения за счёт огромного числа случайных несущественных совпадений.

PS: прошу извинить за замедленную реакцию, как-то пропустил ваш пост, а потом наткнулся случайно.

Автор - Формуляр
Дата добавления - 26.08.2014 в 16:45
biokir Дата: Среда, 01.10.2014, 14:45 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Александр, прошу помочь в разрешении следующей задачки.
Во вложенном файле пример базы с которой работаю при помощи FindBestMatchTxt.
Наша база увеличилась в разы и на данный момент в ней более 10000 контрагентов с разными адресами.
Очень часто контрагенты располагаются на одной улице но в разных домах, скажем ул. Комсомола, 12 и ул. Комсомола, 14, TextSimilarity считает это 100% совпадением, но это не так.
Как настроить более точно и тонко поиск по адресу.
Спасибо

ЗЫ. Программирования касался косвенно поэтому прошу объяснить более доступно.
К сообщению приложен файл: 011014.xlsm (69.8 Kb)


Сообщение отредактировал biokir - Среда, 01.10.2014, 14:47
 
Ответить
СообщениеФормуляр,
Александр, прошу помочь в разрешении следующей задачки.
Во вложенном файле пример базы с которой работаю при помощи FindBestMatchTxt.
Наша база увеличилась в разы и на данный момент в ней более 10000 контрагентов с разными адресами.
Очень часто контрагенты располагаются на одной улице но в разных домах, скажем ул. Комсомола, 12 и ул. Комсомола, 14, TextSimilarity считает это 100% совпадением, но это не так.
Как настроить более точно и тонко поиск по адресу.
Спасибо

ЗЫ. Программирования касался косвенно поэтому прошу объяснить более доступно.

Автор - biokir
Дата добавления - 01.10.2014 в 14:45
Формуляр Дата: Среда, 01.10.2014, 22:41 | Сообщение № 7
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Вставил более свежую версию FindBestMatchTxt().
Добавлено сравнение цифр и фрагментов короче 2-х символов.
Сравнение стало точнее, не уверен, правда, что от этого лучше.
Но со скоростью сложнее...
В качестве слабой меры можно убрать условное форматирование и пресчёт TextSimilarity().
Давно подбирался к задаче сравнения адресов через индексирование по справочникам.
Сейчас довольно занят. В течение недели что-нибудь придумаем.
К сообщению приложен файл: 011014.zip (62.8 Kb)


Excel 2003 EN, 2013 EN

Сообщение отредактировал Формуляр - Среда, 01.10.2014, 22:45
 
Ответить
СообщениеВставил более свежую версию FindBestMatchTxt().
Добавлено сравнение цифр и фрагментов короче 2-х символов.
Сравнение стало точнее, не уверен, правда, что от этого лучше.
Но со скоростью сложнее...
В качестве слабой меры можно убрать условное форматирование и пресчёт TextSimilarity().
Давно подбирался к задаче сравнения адресов через индексирование по справочникам.
Сейчас довольно занят. В течение недели что-нибудь придумаем.

Автор - Формуляр
Дата добавления - 01.10.2014 в 22:41
biokir Дата: Четверг, 02.10.2014, 10:19 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Александр, спасибо. Буду тестировать.

Изменил значение F=0 на F=0.2 результат улучшился.


Сообщение отредактировал biokir - Четверг, 02.10.2014, 10:52
 
Ответить
СообщениеФормуляр,
Александр, спасибо. Буду тестировать.

Изменил значение F=0 на F=0.2 результат улучшился.

Автор - biokir
Дата добавления - 02.10.2014 в 10:19
Формуляр Дата: Четверг, 02.10.2014, 11:14 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
biokir,
ну тогда попробуйте F=1.

Ещё вопросы:
База сравнения, значит, порядка 10000, а какой длины обрабатываемый список на 1ом листе?
Нужно ли его каждый раз обрабатывать целиком?
Или в него добавляются отдельные записи и всё пересчитывать не нужно?


Excel 2003 EN, 2013 EN
 
Ответить
Сообщениеbiokir,
ну тогда попробуйте F=1.

Ещё вопросы:
База сравнения, значит, порядка 10000, а какой длины обрабатываемый список на 1ом листе?
Нужно ли его каждый раз обрабатывать целиком?
Или в него добавляются отдельные записи и всё пересчитывать не нужно?

Автор - Формуляр
Дата добавления - 02.10.2014 в 11:14
biokir Дата: Пятница, 03.10.2014, 09:51 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
F=1 пробовал все вернулось к первоначальной проблеме, остановился на 0.2, так как это оптимально.

Ответы:
Список бывает и больше самой базы.
Каждый раз он обрабатывается целиком.
Пересчитывать необходимо каждый раз по новому (специфика работы).

Александр, нашел на форуме еще одно Ваше творение SimTextX, там проводится поиск по аббревиатурам и это здорово, так как у меня тоже есть похожие проблемы.
Вчера тестировал на базе и столкнулся с тем, что в списках бывает несколько контрагентов расположенных по одному и тому же адресу, но наименование их разные.
Попробовал сцепить наименование и адрес, но результат только ухудшился. При сравнении отдельно адреса и наименования ничего не изменилось, только увеличилось время на обработку.
Как можно сделать так чтобы первостепенно проверялся адрес, при нахождении нужного проверялось наименование контрагента как в SimTextX.
Кстати столкнулся еще с такой вещью, после обработки списка при выполнении в нем манипуляций с фильтрами он пересчитывается заново, мне кажется было бы удобнее добавить "баттончик" при клике на который производилась операция сверки посредством макроса.
Как думаете?
 
Ответить
СообщениеФормуляр,
F=1 пробовал все вернулось к первоначальной проблеме, остановился на 0.2, так как это оптимально.

Ответы:
Список бывает и больше самой базы.
Каждый раз он обрабатывается целиком.
Пересчитывать необходимо каждый раз по новому (специфика работы).

Александр, нашел на форуме еще одно Ваше творение SimTextX, там проводится поиск по аббревиатурам и это здорово, так как у меня тоже есть похожие проблемы.
Вчера тестировал на базе и столкнулся с тем, что в списках бывает несколько контрагентов расположенных по одному и тому же адресу, но наименование их разные.
Попробовал сцепить наименование и адрес, но результат только ухудшился. При сравнении отдельно адреса и наименования ничего не изменилось, только увеличилось время на обработку.
Как можно сделать так чтобы первостепенно проверялся адрес, при нахождении нужного проверялось наименование контрагента как в SimTextX.
Кстати столкнулся еще с такой вещью, после обработки списка при выполнении в нем манипуляций с фильтрами он пересчитывается заново, мне кажется было бы удобнее добавить "баттончик" при клике на который производилась операция сверки посредством макроса.
Как думаете?

Автор - biokir
Дата добавления - 03.10.2014 в 09:51
Формуляр Дата: Суббота, 04.10.2014, 08:31 | Сообщение № 11
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
столкнулся с тем, что в списках бывает несколько контрагентов расположенных по одному и тому же адресу, но наименование их разные.
Будем решать проблемы в порядке поступления. В принципе, если база упорядочена по адресам, можно отслеживать число повторов и в них потом искать по наименованию.
после обработки списка при выполнении в нем манипуляций с фильтрами он пересчитывается заново, мне кажется было бы удобнее добавить "баттончик" при клике на который производилась операция сверки посредством макроса.
Мысль абсолютно правильная. На больших объёмах я так обычно и делаю. Можно, впрочем, просто отключить автоматический пересчёт.


Excel 2003 EN, 2013 EN
 
Ответить
Сообщение
столкнулся с тем, что в списках бывает несколько контрагентов расположенных по одному и тому же адресу, но наименование их разные.
Будем решать проблемы в порядке поступления. В принципе, если база упорядочена по адресам, можно отслеживать число повторов и в них потом искать по наименованию.
после обработки списка при выполнении в нем манипуляций с фильтрами он пересчитывается заново, мне кажется было бы удобнее добавить "баттончик" при клике на который производилась операция сверки посредством макроса.
Мысль абсолютно правильная. На больших объёмах я так обычно и делаю. Можно, впрочем, просто отключить автоматический пересчёт.

Автор - Формуляр
Дата добавления - 04.10.2014 в 08:31
Формуляр Дата: Воскресенье, 05.10.2014, 15:14 | Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
biokir,
Стоит отметить, что база адресов поддерживается в весьма аккуратном состоянии. (Если не считать хаотически разбросанных включений типа "НЕТ ТЕРРИТОРИАЛЬНОГО ОТДЕЛЕНИЯ").
Но, с точки зрения формального поиска, в ней много лишних "букав", которые не только съедают вычислительные ресурсы, но и снижают точность сравнения.
Я написал UDF, которая оставляет только "уличную" часть адреса, её и будем использовать при индексировании списка.
[vba]
Код
Public Function StreetAdr(adrStr As String) As String
     StreetAdr = Trim$(Mid$(adrStr, InStrRev(adrStr, ",", InStrRev(adrStr, "д.") - 3) + 1, 99))
End Function
[/vba]
Прошу обработать ею весь ст-ц C вашей базы, экспортировать в обычный текстовый формат, зазиповать и выложить. Думаю, в 100К должно уместиться. Если не влезет, выложите, сколько получится. Мне это нужно для отладки на реальном объёме с реальнной спецификой данных.


Excel 2003 EN, 2013 EN
 
Ответить
Сообщениеbiokir,
Стоит отметить, что база адресов поддерживается в весьма аккуратном состоянии. (Если не считать хаотически разбросанных включений типа "НЕТ ТЕРРИТОРИАЛЬНОГО ОТДЕЛЕНИЯ").
Но, с точки зрения формального поиска, в ней много лишних "букав", которые не только съедают вычислительные ресурсы, но и снижают точность сравнения.
Я написал UDF, которая оставляет только "уличную" часть адреса, её и будем использовать при индексировании списка.
[vba]
Код
Public Function StreetAdr(adrStr As String) As String
     StreetAdr = Trim$(Mid$(adrStr, InStrRev(adrStr, ",", InStrRev(adrStr, "д.") - 3) + 1, 99))
End Function
[/vba]
Прошу обработать ею весь ст-ц C вашей базы, экспортировать в обычный текстовый формат, зазиповать и выложить. Думаю, в 100К должно уместиться. Если не влезет, выложите, сколько получится. Мне это нужно для отладки на реальном объёме с реальнной спецификой данных.

Автор - Формуляр
Дата добавления - 05.10.2014 в 15:14
biokir Дата: Понедельник, 06.10.2014, 13:45 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Александр, добрый день!

Попробую, сейчас завалили работой, пока не когда.

Оставить только улицу для того чтобы сэкономить ресурсы это правильно, но как же быть с городом, ведь контрагенты в разных городах. А как знаешь ул. Ленина есть в каждом городе РФ :)
К сообщению приложен файл: 3570348.zip (45.6 Kb)


Сообщение отредактировал biokir - Понедельник, 06.10.2014, 14:39
 
Ответить
СообщениеФормуляр,
Александр, добрый день!

Попробую, сейчас завалили работой, пока не когда.

Оставить только улицу для того чтобы сэкономить ресурсы это правильно, но как же быть с городом, ведь контрагенты в разных городах. А как знаешь ул. Ленина есть в каждом городе РФ :)

Автор - biokir
Дата добавления - 06.10.2014 в 13:45
Формуляр Дата: Понедельник, 06.10.2014, 21:00 | Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Ну я же не предлагаю уничтожить их как класс.
Просто для поиска они ни к чему, тем более выяснилось, что могут быть контрагенты с абсолютно одинаковыми адресами.
Тут хоть Ленина, хоть Тюленинина, придётся 2ым слоем по названию искать.


Excel 2003 EN, 2013 EN

Сообщение отредактировал Формуляр - Понедельник, 06.10.2014, 21:00
 
Ответить
СообщениеНу я же не предлагаю уничтожить их как класс.
Просто для поиска они ни к чему, тем более выяснилось, что могут быть контрагенты с абсолютно одинаковыми адресами.
Тут хоть Ленина, хоть Тюленинина, придётся 2ым слоем по названию искать.

Автор - Формуляр
Дата добавления - 06.10.2014 в 21:00
biokir Дата: Вторник, 07.10.2014, 13:06 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Александр, понятно что контрагенты с абсолютно одинаковыми адресами, не получится ли так что контрагент на улице Тюленина 1 в городе Н и на той же улице в городе М будет иметь один адрес по улице, но разный по городам... Или ты хочешь делать все последовательно, город, улица, дом, наименование.
 
Ответить
СообщениеФормуляр,
Александр, понятно что контрагенты с абсолютно одинаковыми адресами, не получится ли так что контрагент на улице Тюленина 1 в городе Н и на той же улице в городе М будет иметь один адрес по улице, но разный по городам... Или ты хочешь делать все последовательно, город, улица, дом, наименование.

Автор - biokir
Дата добавления - 07.10.2014 в 13:06
Формуляр Дата: Вторник, 07.10.2014, 21:50 | Сообщение № 16
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
biokir,
абсолютной гарантии быть, конечно, не может, но мне кажется, вероятность полного совпадения и "уличной части" адреса и названия контрагента пренебрежимо мала.
По крайней мере, значительно меньше вероятности всех прочих ошибок, которые всё равно придётся контролировать и исправлять руками.


Excel 2003 EN, 2013 EN

Сообщение отредактировал Формуляр - Вторник, 07.10.2014, 21:51
 
Ответить
Сообщениеbiokir,
абсолютной гарантии быть, конечно, не может, но мне кажется, вероятность полного совпадения и "уличной части" адреса и названия контрагента пренебрежимо мала.
По крайней мере, значительно меньше вероятности всех прочих ошибок, которые всё равно придётся контролировать и исправлять руками.

Автор - Формуляр
Дата добавления - 07.10.2014 в 21:50
Формуляр Дата: Среда, 08.10.2014, 15:52 | Сообщение № 17
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Ну вот, в первом приближении готово.
Работает быстро, но не точно! :D :D :D

Пришлось пожертвовать попарным сравнением слов ради скорости.
Проверяйте пока на общую пригодность, а я точность ещё подтяну.
К сообщению приложен файл: SimTextIdx_biok.zip (76.5 Kb)


Excel 2003 EN, 2013 EN
 
Ответить
СообщениеНу вот, в первом приближении готово.
Работает быстро, но не точно! :D :D :D

Пришлось пожертвовать попарным сравнением слов ради скорости.
Проверяйте пока на общую пригодность, а я точность ещё подтяну.

Автор - Формуляр
Дата добавления - 08.10.2014 в 15:52
biokir Дата: Среда, 08.10.2014, 16:38 | Сообщение № 18
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Александр, ожиданный результат в принципе))))
Может не будем думать о времени обработки пока, и вернем в адрес город. А то в противном случае мне придется не только нашу базу причесывать, но и базу которая необходимо проверить (пришедшую).

убирать форму собственности нельзя, так как есть много контрагентов отличающихся только этой формой.
Например:
ООО Стоматология №1
ОАО Стоматология №1
МУЗ Стоматология №1
ЗАО Стоматология №1
и это не предел
 
Ответить
СообщениеФормуляр,
Александр, ожиданный результат в принципе))))
Может не будем думать о времени обработки пока, и вернем в адрес город. А то в противном случае мне придется не только нашу базу причесывать, но и базу которая необходимо проверить (пришедшую).

убирать форму собственности нельзя, так как есть много контрагентов отличающихся только этой формой.
Например:
ООО Стоматология №1
ОАО Стоматология №1
МУЗ Стоматология №1
ЗАО Стоматология №1
и это не предел

Автор - biokir
Дата добавления - 08.10.2014 в 16:38
Формуляр Дата: Среда, 08.10.2014, 16:58 | Сообщение № 19
Группа: Друзья
Ранг: Ветеран
Сообщений: 832
Репутация: 255 ±
Замечаний: 0% ±

Excel 2003, 2013
Может не будем думать о времени обработки пока, и вернем в адрес город.
Город - вернём. На следующем этапе. Но в ином виде.
убирать форму собственности нельзя, так как есть много контрагентов отличающихся только этой формой.
И что, у них при этом совпадает "уличный" адрес?
Сравнение по названию происходит после поиска по адресу.
К тому же, я писал "за исключением случаев, когда она является дифференцирующим признаком." В 99% случаев это не так.
Я, при этом, говорю про столбец базы, по которому производится поиск. Никто не запретит иметь в той же таблице други ст-цы с любой бесполезной или полезной информацией.


Excel 2003 EN, 2013 EN

Сообщение отредактировал Формуляр - Среда, 08.10.2014, 17:01
 
Ответить
Сообщение
Может не будем думать о времени обработки пока, и вернем в адрес город.
Город - вернём. На следующем этапе. Но в ином виде.
убирать форму собственности нельзя, так как есть много контрагентов отличающихся только этой формой.
И что, у них при этом совпадает "уличный" адрес?
Сравнение по названию происходит после поиска по адресу.
К тому же, я писал "за исключением случаев, когда она является дифференцирующим признаком." В 99% случаев это не так.
Я, при этом, говорю про столбец базы, по которому производится поиск. Никто не запретит иметь в той же таблице други ст-цы с любой бесполезной или полезной информацией.

Автор - Формуляр
Дата добавления - 08.10.2014 в 16:58
biokir Дата: Среда, 08.10.2014, 17:03 | Сообщение № 20
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Формуляр,
Ну если вернем, то я спокоен :)

И что у них при этом совпадает "уличный" адрес?

Ситуации бывают такие, что контрагент имел форму МУЗ, но потом изменил на ООО. У нас в базе исправлено, а в приходящей еще нет. А адреса совпадают и к сожалению таких не маленький процент.
 
Ответить
СообщениеФормуляр,
Ну если вернем, то я спокоен :)

И что у них при этом совпадает "уличный" адрес?

Ситуации бывают такие, что контрагент имел форму МУЗ, но потом изменил на ООО. У нас в базе исправлено, а в приходящей еще нет. А адреса совпадают и к сожалению таких не маленький процент.

Автор - biokir
Дата добавления - 08.10.2014 в 17:03
Мир MS Excel » Вопросы и решения » Готовые решения » Индексирование списка на базе нечёткого поиска (VBA)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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