Функция в Excel с помощью регулярных выражений - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день!
Хочу сделать функцию в Excel, с помощью регулярного выражения, но не знаю как к ней подойти, вернее, не знаю как задать на поиск некий диапазон данных.
Пример: я хочу сделать функцию вида = FINDTXT( strSourse, rangeFindtxt), где
strSourse - текстовая строка в ячейке, в которой будет производится поиск
rangeFindtxt - диапозон ячеек со словами, которые необходимо найти
Это будет выглядеть так: = FINDTXT( A1, B1:B3)

Я не знаю как в Pattern регулярки передать на поиск любого значения массива.

Решение задачи: «Функция в Excel с помощью регулярных выражений»

textual
Листинг программы
Public Function FINDTXT(data, text_find) As String

'text_find

Dim myRegExp As New RegExp


For Each Formula In text_find

With myRegExp
.MultiLine = False
.Global = False
.IgnoreCase = True
.Pattern = Formula.Value
End With

If myRegExp.Test(data) Then
Set colMatches = myRegExp.Execute(data)
FINDTXT = colMatches(0)
Exit Function
  Else
FINDTXT = "НЕТУ"
End If

Next


End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.167 из 5