Sök…


Anmärkningar

När du måste kontrollera om det finns en substring i en sträng närvaro eller position, erbjuder VBA InStr och InStrRev funktionerna som returnerar karaktärspositionen för substrängen i strängen, om den är närvarande.

Använd InStr för att avgöra om en sträng innehåller en substring

Const baseString As String = "Foo Bar"
Dim containsBar As Boolean

'Check if baseString contains "bar" (case insensitive)
containsBar = InStr(1, baseString, "bar", vbTextCompare) > 0
'containsBar = True

'Check if baseString contains bar (case insensitive)
containsBar = InStr(1, baseString, "bar", vbBinaryCompare) > 0
'containsBar = False

Använd InStr för att hitta positionen för den första instansen av en substring

Const baseString As String = "Foo Bar"
Dim containsBar As Boolean

Dim posB As Long
posB = InStr(1, baseString, "B", vbBinaryCompare)
'posB = 5

Använd InStrRev för att hitta positionen för den sista instansen av en substring

Const baseString As String = "Foo Bar"
Dim containsBar As Boolean

'Find the position of the last "B"
Dim posX As Long
'Note the different number and order of the paramters for InStrRev
posX = InStrRev(baseString, "X", -1, vbBinaryCompare)
'posX = 0


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow