VBA InStr-funktion

I VBA har vi en funktion kaldet InStr-funktion, der bruges til at returnere positionen for den første forekomst af en substring i en streng. Hvilket betyder, for eksempel, at vi har et navn kaldet "Jhon", og vi er nødt til at finde forekomsten af ​​placeringen af ​​H-alfabetet i strengen. Dette er, hvad funktionen bruges til.

Formel til InStr-funktion i Excel VBA

Excel VBA InStr-funktion har følgende syntaks:

I syntaks er Start og sammenligning valgfri, mens streng- og substringsværdier er påkrævet. En streng er en streng, hvor vi vil finde vores substring, og substring er den værdi, der kræves for at findes i strengen. Antag, at hvis vi skulle bruge ovenstående syntaks på vores eksempel på Jhon over VBA-koden, ville det være som nedenfor,

Instr (“Jhon”, “H”) og resultatet ville være 2, da alfabetets H position er 2 i strengen.

Nu bevæger vi os mod de valgfri dele af syntaks, som er, start og sammenlign. Starten er placeringen af ​​strengen, hvorfra vi vil starte søgningen, mens sammenligning er af tre typer,

  1. VbUseCompareOption: (-1) Det bruges til at sammenligne valgmuligheder.
  2. VbBinaryCompare: (0) Det bruges til binær sammenligning.
  3. VbTextCompare: (1) Det bruges til den tekstmæssige sammenligning.

Men vi har brug for en variabel til at gemme værdien af ​​resultatet. Da værdien er et heltal, skal den definerede variabel også være et heltal. Hvis vi nu har beregnet værdien, er vi også nødt til at vise resultatet, vi bruger msgbox-funktionen til at vise resultatet.

Sådan bruges Excel VBA InStr-funktion?

Vi lærer, hvordan man bruger en VBA InStr Excel-funktion med få eksempler.

Du kan downloade denne VBA InStr Excel-skabelon her - VBA InStr Excel-skabelon

VBA InStr-funktion - eksempel # 1

I forklaringen ovenfor brugte jeg ordet Jhon som en streng og ønskede at finde placeringen af ​​H i strengen. Jeg skriver koden for den samme i VBA og bruger Instr-funktionen til at finde placeringen af ​​J i strengen.

Følg nedenstående trin for at bruge InStr-funktion i VBA.

Trin 1: I fanen Udvikler skal du klikke på Visual Basic for at åbne VB Editor.

Trin 2: Når modulet er åbent, erklær en underfunktion for at begynde at skrive koden.

Kode:

 Sub Sammenlign () Slut Sub 

Trin 3: Nu er funktionen deklareret. Vi er nødt til at deklarere en variabel for at gemme placeringen af ​​undertringen.

Kode:

 Sub Sammenligne () Dim Pos Som Heltal End Sub 

Trin 4: Nu skriver vi InStr-funktionen for at finde ud af placeringen af ​​vores substring.

Kode:

 Sub Compare () Dim Pos As Heeltal Pos = InStr ("Jhon", "J") End Sub 

Trin 5: For at returnere placeringen af ​​undertringen som en værdi, bruger vi MsgBox-funktionen og lukker subfunktionen.

Kode:

 Sub Sammenlign () Dim Pos som heltal Pos = InStr ("Jhon", "J") MsgBox Pos End Sub 

Trin 6: Hvis vi kører koden, viser den placeringen af ​​alfabetet J i strengen.

Trin 7: Hvis vi ændrer substring for at kontrollere, at koden kører korrekt, så lad os finde alfabetet n i strengen.

Kode:

 Sub Compare () Dim Pos As Integer Pos = InStr ("Jhon", "n") MsgBox Pos End Sub 

Trin 8: Hvis vi nu kører koden, kan vi se placeringen af ​​alfabet n i strengen.

VBA InStr-funktion - eksempel # 2

Nu har vi set, hvad de krævede argumenter for funktionen gør, lad os nu bruge de valgfrie dem. Strengen er "Jeg er en god dreng, men ikke en god løber". Vi finder substren "God" fra strengen, men ignorerer den første God fra sætningen.

Følg nedenstående trin for at bruge InStr-funktion i VBA.

Trin 1: Åbn VB-editoren fra fanebladet med udviklere ved at klikke på Visual Basic.

Trin 2: Start med at erklære en underfunktion.

Kode:

 Sub Compare1 () End Sub 

Trin 3: Angiv nu en variabel til at gemme placeringen af ​​undertringen.

Kode:

 Sub Compare1 () Dim Pos1 Som heltal End Sub 

Trin 4: Nu bruger vi InStr-funktionen til at finde strengens placering.

Kode:

 Sub Compare1 () Dim Pos1 Som heltal Pos = InStr (12, "Jeg er en god dreng, men er en god løber", "Good", vbBinaryCompare) End Sub 

Trin 5: Nu bruger vi Msgbox-funktionen til at returnere værdien af ​​strengen.

Kode:

 Sub Compare1 () Dim Pos1 Som heltal Pos = InStr (12, "Jeg er en god dreng, men er en god løber", "God", vbBinaryCompare) MsgBox Pos End Sub 

Trin 6: Hvis vi nu kører koden, kan vi få placeringen af ​​substringstrengen.

Forklaring af Excel VBA Instr-funktion

InStr-funktion i VBA bruges til at returnere placeringen af ​​værdien af ​​undertringen i en streng. Hvad sker der, hvis værdien ikke findes? Hvis værdien ikke findes i strengen, er det viste resultat nul.

Én ting, vi altid skal huske, at instrumentfunktionen er store og små bogstaver. For at bevise dette flytter vi til eksempel 1, hvor vi brugte instr-funktion til at søge i et alfabet.

Hvad sker der, hvis substrengen er “N” i stedet for “n”? lad os finde ud af det. Jeg har ændret alfabetet i strengen.

Hvis jeg nu kører koden, får jeg resultatet som vist nedenfor.

Dette beviser, at instr-funktionen er store og små bogstaver.

Ting at huske

  • De to krævede felter er streng og underlag.
  • Instr-funktion er store og små bogstaver.
  • Værdien af ​​InStr-funktionen er et heltal.

Anbefalede artikler

Dette har været en guide til VBA InStr-funktion. Her diskuterede vi, hvordan man bruger Excel VBA InStr-funktion sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA VLOOKUP-funktion
  2. Excel SWITCH-funktion
  3. Komplet guide til VBA ved fejl
  4. Anvendelser af rullebjælken i Excel

Kategori: