Поиск строки внутри ячейки Текст (VB) - PullRequest
0 голосов
/ 24 марта 2019

Я зацикливаю строку внутри листа и хочу найти строку внутри некоторого текста:

lr = ws.Cells(Rows.Count, "A").End(xlUp).Row
lrk = wsK.Cells(Rows.Count, "A").End(xlUp).Row

For i = 2 To lr --looping list
  look_name = UCase(ws.Range("E" & i).Value)

    For j = 2 To lrk --loop patern value
    look_text = UCase(wsK.Range("A" & j).Value)

        If look_name Like "*look_text*" Then --if found
            ws.Range("AB" & i) = wsK.Range("B" & j).Value --to do
            Exit For
        End If

    Next j
Next i

Я думаю, что-то не так я сделал с "*look_text*"

Если look_name = "New city" и look_text = "city", это не входит в ЕСЛИ.

Ответы [ 2 ]

2 голосов
/ 24 марта 2019

Другой вариант, поскольку вы добавляете подстановочный знак * в начале и в конце вашего String, заключается в использовании Instr функции.

If Instr(look_name, look_text) > 0 Then

Редактировать 1 : с текстом, предоставленным из PO

If InStr("abcabc testa abcbc", "test") > 0 Then
    MsgBox "Instr Works"
End If
1 голос
/ 24 марта 2019

Мне удалось решить проблему, изменив

If look_name Like "*look_text*" Then

на

If look_name Like "*" & look_text & "*" Then
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...