Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Returnerer en variant (langt) som angir plasseringen av den første forekomsten av en streng sammen med en annen.

Se noen eksempler

Syntaks

InStr ([start, ] string1, string2 [, compare ] )

Syntaksen for funksjonen InStr har følgende argumenter:

Argument

Beskrivelse

start

Valgfritt. Numerisk uttrykk som angir startposisjonen for hvert søk. Hvis det utelates, begynner søket ved første tegnplassering. Hvis start inneholder Null, oppstår det en feil. Argumentet start kreves hvis compare er angitt.

streng1

Obligatorisk. Strenguttrykk som søkes i.

streng2

Obligatorisk. Strenguttrykk søkt.

sammenlign

Valgfritt. Angir typen strengsammenligning. Hvis sammenlign er Null, oppstår det en feil. Hvis sammenligning utelates, bestemmer innstillingenFor sammenligning av alternativ sammenligning sammenligningstypen. Angi en gyldig LCID (LocaleID) for å bruke regler for nasjonal innstilling i sammenligningen.

Tips!: Uttrykksverktøyet har IntelliSense, slik at du kan se hvilke argumenter uttrykket krever.

Innstillinger

Innstillingene for sammenligningsargumentet er:

Konstant

Value

Beskrivelse

vbUseCompareOption

-1

Utfører en sammenligning ved hjelp av innstillingen for Option Compare-setningen .

vbBinaryCompare

0

Utfører en binær sammenligning.

vbTextCompare

1

Utfører en tekstsammenligning.

Returner verdier

If

InStr returnerer

streng1 er tom

0

streng1 er null

Null

streng2 er tom

start

streng2 er null

Null

finner ikke streng2

0

streng2 finnes i streng1

Plasseringen der treff blir funnet

start > streng2

0

Merknader

InStrB-funksjonen brukes med bytedata i en streng. I stedet for å returnere tegnplasseringen for den første forekomsten av én streng i en annen, returnerer InStrB byteposisjonen.

Eksempler

Bruke InStr-funksjonen i et uttrykk    Du kan bruke InStr der du kan bruke uttrykk. Hvis du for eksempel vil finne posisjonen til den første perioden (.) i et felt som inneholder IP-adresser (kalt IPAddress), kan du bruke InStr til å finne den, slik som dette:

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

InStr-funksjonen undersøker hver verdi i IPAddress-feltet og returnerer posisjonen til den første perioden. Derfor, hvis den første delen av IP-adressen er 10., returnerer funksjonen verdien 3.

Du kan deretter bruke andre funksjoner, som opererer på utdataene fra InStr-funksjonen , til å trekke ut delen av IP-adressen som kommer før den første perioden, slik som dette:

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

I dette eksemplet, InStr(1,[IPAddress],".") returnerer posisjonen til den første perioden. Subtrahing 1 determines how many characters precede the first period, in this case, 2. Venstre-funksjonen trekker deretter ut så mange tegn fra den venstre delen av IPAddress-feltet, og returnerer verdien 10.

Bruk InStr i VBA-kode    

Obs!: I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications).

Dette eksemplet bruker InStr-funksjonen til å returnere posisjonen til den første forekomsten av én streng i en annen.

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.

Se også

Strengfunksjoner og hvordan du bruker dem

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.