Я использовал фрагмент кода для поиска определенного текста в модулях vba.
Он хорошо подходит для поиска одной строки (или меньше) текста. Так, например, он найдет mySub в модуле с текстом:
Private sub mySub()
Dim a as Integer
Dim b as Integer
End Sub
Код, который я использую:
Set m = myAp.Modules(name)
m.find(text_find, 1, 1, -1, -1, False, False, False)
Проблема начинается, когда я хочу искать многострочные тексты. Например, я хочу найти раздел текста:
Dim a как целое число
Dim b как целое число
К сожалению, функция поиска возвращает false, когда я пытаюсь представить свой многострочный текст для поиска.
Используя отладку (смотреть / немедленно), я подтвердил, что мои критерии поиска (text_find) действительно содержат chrs 13 + 10 между первым «Integer» и «Dim b».
Я также изучил значение module.Line для строки «Dim a», которая также заканчивается chrs 13 + 10.
Итак, теперь я действительно изо всех сил пытаюсь понять, как заставить это работать.
Если у кого-то есть помощь по этому поводу - буду признателен.
Спасибо
.Find("Dim a as Integer*Dim b as Integer", y1, x1, y2, x2, PatternSearch:=True)
тоже не работает. Это может быть невозможно, но тогда параметрEndLine
был бы бессмысленным. - person Andre   schedule 01.11.2015