Funktionen InStr

Vigtigt: Denne artikel er maskinoversat. Se ansvarsfraskrivelsen. Du kan finde den engelske version af denne artikel her til din orientering.

Returnerer en Variant (Lang), der angiver placeringen af den første forekomst af én string inde i en anden.

Se eksempler

Syntaks

InStr ([start, ] streng1, streng2 [sammenligning ] )

Syntaksen for funktionen InStr har følgende argumenter:

Argument

Beskrivelse

Start

Valgfrit. Numerisk udtryk, der angiver startpositionen for hver søgning. Hvis udelades, starter søgningen ved det første tegn. Hvis start indeholder Null, opstår der en fejl. Argumentet start er påkrævet, hvis Sammenlign er angivet.

streng1

Der er påkrævet. Strengudtryk, der søges.

streng2

Påkrævet. Strengudtryk, der blev søgt efter.

sammenlign

Valgfrit. Angiver typen strengsammenligninger. Hvis Sammenlign er Null, opstår der en fejl. Hvis Sammenlign udelades, bestemmer indstillingenSammenligntypen sammenligning. Angiv et gyldigt LCID (landestandard-id) til at bruge landespecifikke regler i sammenligningen.

Tip: I Access 2010 har Udtryksgeneratoren IntelliSense, så du kan se, hvilke argumenter udtrykket kræver. 

Indstillinger

Der er følgende indstillinger for argumentet sammenlign:

Konstant

Værdi

Beskrivelse

vbUseCompareOption

-1

Udfører en sammenligning ved hjælp af indstillingen i sætningen Option Compare.

vbBinaryCompare

0

Udfører en binær sammenligning.

vbTextCompare

1

Udfører en tekstsammenligning.

vbDatabaseCompare

2

Kun Microsoft Office Access 2007. Udfører en sammenligning på baggrund af oplysninger fra databasen.


Returværdier

Hvis

InStr returnerer

streng1 har længden nul

0

streng1 er Null

Null

streng2 har længden nul

Start

streng2 er Null

Null

streng2 blev ikke fundet

0

streng2 blev fundet i streng1

Position at which match is found

Start > streng2

0


Bemærkninger

Funktionen InStrB anvendes med bytedata, som er indeholdt i en streng. I stedet for at returnere tegnplaceringen for den første forekomst af én streng i en anden, returnerer InStrB byteplaceringen.

Eksempler

Brug af funktionen InStr i et udtryk    Du kan bruge InStr, når du kan bruge udtryk. Hvis du f.eks. vil finde positionen for det første punktum (.) i et felt, der indeholder IP-adresser (kaldet IPAddress), kan du bruge InStr til at finde det som i følgende eksempel:

InStr(1,[IPAddress],".")

Funktionen InStr undersøger hver værdi i feltet IPAddress og returnerer positionen for det første punktum. Hvis den første del af IP-adressen er 10., returnerer funktionen værdien 3.

Du kan derefter bruge andre funktioner til at behandle outputtet af funktionen InStr til at udtrække den del af IP-adressen, der kommer før det første punktum, som vist i følgende eksempel:

Left([IPAddress],(InStr(1,[IPAddress],".")-1))

I dette eksempel returnerer InStr(1,[IPAddress],".") positionen af det første punktum. Ved at fratrække 1 bestemmes det, hvor mange tegn der kommer før det første punktum, i dette tilfælde 2. Funktionen Left udtrækker derefter det antal tegn fra den venstre del af feltet IPAddress og returnerer værdien 10.

Bruge InStr i VBA-kode   

Bemærk: Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.

I eksemplet anvendes funktionen InStr til at returnere placeringen af den første forekomst af én streng i en anden.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.

Bemærk: Ansvarsfraskrivelse for maskinoversættelse: Denne artikel er blevet oversat af et computersystem uden menneskelig indgriben. Microsoft tilbyder disse maskinoversættelse for at hjælpe ikke-engelsktalende brugere til at kunne nyde indhold om Microsofts produkter, tjenester og teknologier. Da artiklen er maskinoversat, kan den indeholde forkerte ord eller syntaks- eller grammatikfejl.

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×