Страницы: 1
RSS
Поиск ЛЮБОГО Слова в тексте из списка слов в справочнике
 
Нужно найти и вывести в любую ячейку, слово или словосочетание из какого либо текста на основе списка слов в каком либо столбике. В прикрепленном файле пример с описанием.
Спасибо громадное!
 
UDF. Аргументы: cl - ячейка, в которой ищем слово/словосочетание, rng - диапазон искомых слов/словосочетаний. Если найдено несколько слов/словосочетаний, они сцепляются в целевую ячейку через запятую
Код
Function LikeCell(cl As Range, rng As Range) As String
    For Each clr In rng.Cells
        If cl Like "*" & clr & "*" Then
            If rez = Empty Then
                rez = clr
            Else
                rez = rez & ", " & clr
            End If
        End If
    Next
LikeCell = rez
End Function
Согласие есть продукт при полном непротивлении сторон
 
Боюсь, что Like тут не подойдёт: искомое газ, а диапазоне, например, маГАЗин.
 
Согласен, но с чего-то нужно начать  :)
Согласие есть продукт при полном непротивлении сторон
 
Формула массива:
=ИНДЕКС($E$2:$E$42;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ПОИСК($E$2:$E$42;$B$6));СТРОКА($E$2:$E$42)-1);СТРОКА(A1)))
 
Вижу такой вариант: цикл по столбцу В (или массиву), вложенный цикл по строке - перебираем слова, и CountIf (или Find) в диапазоне.
 
Тут проблема возникнет при поиске СЛОВОСОЧЕТАНИЯ, но может кому пригодиться
Код
Function LikeCell(cl As Range, rng As Range) As String
    For Each clr In rng.Cells
        For I = 0 To UBound(Split(cl, " "))
            If Split(cl, " ")(I) = clr Then
                If rez = Empty Then
                    rez = clr
                Else
                    rez = rez & ", " & clr
                End If
            End If
        Next
    Next
LikeCell = rez
End Function
Изменено: Sanja - 03.09.2015 14:36:48
Согласие есть продукт при полном непротивлении сторон
 
vikttur Спасибо!  
 
Если уж через Like, то имеет смысл для каждого слова-образца добавлять пробелы слева и справа и так же пробелы добавлять к сравниваемому тексту. Тогда будут находится только целые слова/словосочетания.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Читают тему
Наверх