如何在vba中找到instr的字元前面

如何在vba中找到instr的字元前面

問題描述:找到一個instr(它是數字),然後檢查該instr值前面是否帶有任何字元(例如123,x123)。如果 instr 或帶有字元的 instr 與工作表 2 中的值匹配,則訊息方塊是 yes。

問題:我可以找到該指令,但無法檢查該指令是否包含其前面的任何字元。我如何檢查它,是否使用 left(chr) 函數或其他函數。這是我的程式碼,但它所做的只是查找 instr 而不是帶有 instr 的 chr。

  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

在此輸入影像描述

應該沒有問題。如果

Instr(1,BigString,SubString)

返回一個1,則 SubString 位於 BigString 的開頭。

例如,查找子字串“Α”

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

在此輸入影像描述

相關內容