Instr in Excel VBA - Eenvoudige Excel-macro's

Inhoudsopgave

Eenvoudige Instr-functie | Startpositie | Nul | Instr en Als | Hoofdletterongevoelig zoeken

Gebruik maken van Instructie in Excel VBA om de positie van een substring in een string te vinden. De Instr-functie is vrij veelzijdig.

Plaats een opdrachtknop op uw werkblad en voeg de onderstaande coderegels toe. Om de coderegels uit te voeren, klikt u op de opdrachtknop op het blad.

Eenvoudige Instr-functie

Standaard begint de Instr-functie te zoeken aan het begin van de tekenreeks (positie 1).

Code:

Gedimde toestand Als String
staat = "Virginia"
MsgBox InStr(staat, "gin")

Resultaat:

Opmerking: string "gin" gevonden op positie 4.

Begin positie

De tweede Instr-functie hieronder begint te zoeken op positie 7.

Code:

Gedimde toestand Als String
staat = "Zuid-Carolina"
MsgBox InStr(staat, "o")
MsgBox InStr(7, staat, "o")

Resultaat:

Uitleg: de eerste Instr-functie vindt de tekenreeks "o" op positie 2. De tweede Instr-functie begint te zoeken op positie 7 en vindt de tekenreeks "o" op positie 10.

Nul

De functie Instr retourneert 0 als de tekenreeks niet wordt gevonden (belangrijk zoals we hierna zullen zien).

Code:

Gedimde toestand Als String
staat = "Florida"
MsgBox InStr(staat, "ons")

Resultaat:

Conclusie: string "ons" niet gevonden.

Instr en If

Laten we een eenvoudig VBA-programma maken dat gebruikmaakt van de Instr-functie.

Code:

Gedimde toestand As String, substring As String
staat = Bereik ("A2"). Waarde
subtekenreeks = Bereik ("B2"). Waarde
Als InStr(status, subtekenreeks) > 0 Dan
Bereik ("C2"). Waarde = "Gevonden"
Anders
Bereik ("C2"). Waarde = "Niet gevonden"
Stop als

Resultaat wanneer u op de opdrachtknop op het werkblad klikt:

Uitleg: string "outh" gevonden op positie 2. De functie Instr retourneert 2. Als resultaat plaatst Excel VBA de string "Gevonden" in cel C2.

Hoofdletterongevoelig zoeken

Standaard voert de Instr-functie een hoofdlettergevoelige zoekopdracht uit. Voer de tekenreeks "dakota" in cel B2 in en klik op de opdrachtknop op het blad.

Uitleg: string "dakota" niet gevonden (eerste letter niet met hoofdletter). De functie Instr retourneert 0. Als resultaat plaatst Excel VBA de tekenreeks "Niet gevonden" in cel C2.

Om een ​​hoofdletterongevoelige zoekopdracht uit te voeren, werkt u de code als volgt bij:

Gedimde toestand As String, substring As String
staat = Bereik ("A2"). Waarde
subtekenreeks = Bereik ("B2"). Waarde
Als InStr(1, staat, subtekenreeks, vbTextCompare) > 0 Dan
Bereik ("C2"). Waarde = "Gevonden"
Anders
Bereik ("C2"). Waarde = "Niet gevonden"
Stop als

Resultaat wanneer u op de opdrachtknop op het werkblad klikt:

Uitleg: de hierboven getoonde Instr-functie heeft 4 argumenten. Om een ​​hoofdletterongevoelige zoekopdracht uit te voeren, geeft u altijd een startpositie op (eerste argument) en gebruikt u vbTextCompare (vierde argument).

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave