Мой файл выискивает наиболее часто встречающееся слово в текстовой ячейке. Но есть один недостаток - коротенькие слова, союзы, междометия (в один или два символа) - он воспринимает как полноценные слова. Например "и","он","в","на" и т.д. Как задать - ограничение на поиск часто встречающегося слова - не менее 3 символов ?
Доброе утро. Помогите с решением проблемы.
Мой файл выискивает наиболее часто встречающееся слово в текстовой ячейке. Но есть один недостаток - коротенькие слова, союзы, междометия (в один или два символа) - он воспринимает как полноценные слова. Например "и","он","в","на" и т.д. Как задать - ограничение на поиск часто встречающегося слова - не менее 3 символов ?rotten41
В файле нет примеров строк, где слова встречаются более одного раза. Покажите 10-15 строк и ожидаемый результат. Чем считать формулами или макросом?
В файле нет примеров строк, где слова встречаются более одного раза. Покажите 10-15 строк и ожидаемый результат. Чем считать формулами или макросом?AlexM
Номер мобильного модема (без голосовой связи) 9269171249 МегаФон, Московский регион.
Sub tt() Dim re As Object, di As Object, x, xm, m Set re = CreateObject("vbscript.regexp") re.Global = True re.Pattern = "[а-яё]{3,}" re.ignorecase = True Set di = CreateObject("scripting.dictionary") di.comparemode = vbTextCompare For Each x In re.Execute([b8]) x = x.Value di(x) = di(x) + 1 If di(x) > m Then xm = x: m = di(x) Next [e8] = xm: [h8] = m End Sub
[/vba]
перепишите паттерн как "[а-яё]{3,}" [vba]
Код
Sub tt() Dim re As Object, di As Object, x, xm, m Set re = CreateObject("vbscript.regexp") re.Global = True re.Pattern = "[а-яё]{3,}" re.ignorecase = True Set di = CreateObject("scripting.dictionary") di.comparemode = vbTextCompare For Each x In re.Execute([b8]) x = x.Value di(x) = di(x) + 1 If di(x) > m Then xm = x: m = di(x) Next [e8] = xm: [h8] = m End Sub