Другие языки программирования и технологии
Подскажите строчку в макросах Ексель
Есть ли строчка в макросах Ексель, которую можно добавить и присвоить ей значение False, отвечающая за уникальность строк, другими словами словоформы. В итоге надо, к примеру, что бы ексель воспринимал ячейку: "эффективность зимних покрышек" и "эффективные зимние покрышки" как ячейку с одинаковыми значениями? Спасибо за ответы. В макросах пока мало, что понимаю, поэтому подозреваю, что спросил полную глупость)))
Это не глупость, а называется нечеткий/неточный поиск/сравнение.
На уровне формул _листа_ это практически нерешаемо. (ИМХО)
Разве только если точно знать по каким частям слов сравнивать и использовать LIKE (VBA) или искать подстроки (н-р корни слов).
https://msdn.microsoft.com/ru-ru/library/swf8kaxw.aspx
Н-р
Sub t()
Dim s1 As String
Dim s2 As String
Dim sTemplate As String
s1 = "эффективность зимних покрышек"
s2 = "эффективные зимние покрышки"
sTemplate = "*эфф* *зимн* *покр*"
If s1 Like sTemplate And s2 Like sTemplate Then MsgBox "Да! "
End Sub
Выведет Да. т. к. и первая и вторая строка попали под шаблон sTemplate и соовт. "похожи" =)
Или писать функцию неточного сравнения. Даже её как-то делал (честно - стырил алгоритм и переписал на VBA, но сейчас сходу не найду. Тем более она может быть дома, а не на работе =). Если вот прямо ну очень надо - пишите на почту или в коммент - попробую покопаться.
На уровне формул _листа_ это практически нерешаемо. (ИМХО)
Разве только если точно знать по каким частям слов сравнивать и использовать LIKE (VBA) или искать подстроки (н-р корни слов).
https://msdn.microsoft.com/ru-ru/library/swf8kaxw.aspx
Н-р
Sub t()
Dim s1 As String
Dim s2 As String
Dim sTemplate As String
s1 = "эффективность зимних покрышек"
s2 = "эффективные зимние покрышки"
sTemplate = "*эфф* *зимн* *покр*"
If s1 Like sTemplate And s2 Like sTemplate Then MsgBox "Да! "
End Sub
Выведет Да. т. к. и первая и вторая строка попали под шаблон sTemplate и соовт. "похожи" =)
Или писать функцию неточного сравнения. Даже её как-то делал (честно - стырил алгоритм и переписал на VBA, но сейчас сходу не найду. Тем более она может быть дома, а не на работе =). Если вот прямо ну очень надо - пишите на почту или в коммент - попробую покопаться.
Вопрос серьёзный. Вот тут обсуждали, может и пригодится...
http://www.excelworld.ru/forum/3-717-1
Да и просто посмотреть на тему "Excel нечеткий поиск" - 7000 страниц.
А "строчки" такой НЕТ!
http://www.excelworld.ru/forum/3-717-1
Да и просто посмотреть на тему "Excel нечеткий поиск" - 7000 страниц.
А "строчки" такой НЕТ!
В макросах вроде словоформы даже для 1 слова не встречал, но кто его знает, ексель развивается могут че и еще придумать.
А сам ты можешь сделать функцию которая подобное будет делать, допустим брать строку, разбивать на слова и если только последние символы слова отличаются, то считать их словоформами.. это так, грубо. Точно сделать сложно, так как целую базу словоформ надо иметь и сравнивать.
А сам ты можешь сделать функцию которая подобное будет делать, допустим брать строку, разбивать на слова и если только последние символы слова отличаются, то считать их словоформами.. это так, грубо. Точно сделать сложно, так как целую базу словоформ надо иметь и сравнивать.
Похожие вопросы
- Подскажите, что такое макросы на клавишах клавиатуры и что такое клавиши с поддержкой макрокоманд?? Заранее спасибо!
- Помогите написать формулу в екселе без макроса!
- Excel. Макрос. Найти в Листе1 значение активной ячейки из Листа2.
- Помогите с макросами в Word 2007
- Как написать макрос для Word 2003 чтобы выполнял сортировку чисел в квадратных скобках?
- Вопрос по макросам MS Excel
- VB. Макросы в MS Exel.
- Необходимо создать макрос для excel
- Помоги запустить макрос в OpenOffice
- Макрос для excel - VBA (гиперссылка)