Описание проблемы: Найдите instr(который является числом), затем проверьте, содержит ли значение instr какой-либо символ перед ним или нет (например, 123, x123). Если instr или instr с символом совпадает со значением из листа 2, тогда появится сообщение Да.

Проблема: я могу найти instr, но я не могу проверить, содержит ли instr какой-либо символ перед ним или нет. Как это проверить, с левой (chr) функцией или с чем-то еще. Вот мой код, но все, что он делает, просто находит instr, а не chr с instr.

  Sub tym()

Dim ws1 As Worksheet, wb As Workbook, ws2 As Worksheet
Dim b, c As Range, rngNums As Range, rngText As Range
Dim dNums, dText, rN As Long, rT As Long, t, m

Set wb = ActiveWorkbook
Set ws1 = wb.Worksheets("Sheet1")
Set ws2 = wb.Worksheets("Sheet2")
Set c = wb.Worksheets("Sheet3").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)

Set rngNums = ws1.Range(ws1.Range("A1"), ws1.Cells(Rows.Count, 1).End(xlUp))
dNums = rngNums.Value
Set rngText = ws2.Range(ws2.Range("A1"), ws2.Cells(Rows.Count, 1).End(xlUp))
dText = rngText.Value

For rN = 1 To UBound(dNums, 1)
    b = "-" & dNums(rN, 1) & "-" (right here im defining to find instr but how do i add a function to find char front of instr)
    For rT = 1 To UBound(dText, 1)
        If InStr(1, dText(rT, 1), b) > 0 Then

          MsgBox "yes"

        End If
    Next rT
Next rN

End Sub

1 ответ1

0

Там должно быть никаких проблем. Если

Instr(1,BigString,SubString)

возвращает 1, тогда SubString находится в начале BigString.

Например, ищите подстроку "Альфа"

Sub dural()
   MsgBox InStr(1, ActiveCell.Value, "Alpha")
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .