Выражение для проверки наличия одного или нескольких пробелов в VBA для поиска совпадений в ячейках Excel

#regex #vba #excel #excel-2010

#регулярное выражение #vba #excel #excel-2010

Вопрос:

Я пытаюсь использовать регулярные выражения в макросе для документа Excel.

Вот что у меня есть до сих пор:

 dim regex
regex.pattern = "s "
for p = 3 to totalparamcount
    if (regex.test(Worksheets("table").Cells(p,1)) then
        msgbox ("blah blah")
    end if
next
  

Шаблон, который я пытаюсь сопоставить, — это один или несколько пробелов, табуляции, новые строки, которые, как я видел, обозначаются "s" .

Строка « if (regex.test(Worksheets("table").Cells(p,1)) then выдает эту ошибку:

 Run-time error '424':

Object required
  

Я использую VBA 7.0 в Excel.

Комментарии:

1. может быть, лучше спросить в StackOverflow

Ответ №1:

Вам необходимо создать объект regexp, т.е.

 Dim regex
Set regex = CreateObject("vbscript.regexp")
regex.Pattern = "s "