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

Palauttaa variantin (Long), joka määrittää toisessa merkkijonossa olevan yhden merkkijonon ensimmäisen esiintymän sijainnin.

Esimerkkejä

Syntaksi

InStr ([alku, ] merkkijono1, merkkijono2 [, vertailu ] )

InStr-funktion syntaksilla on seuraavat argumentit:

Argumentti

Kuvaus

alku

Valinnainen. Numeerinen lauseke, joka määrittää kunkin haun alkamiskohdan. Jos se jätetään pois, haku alkaa ensimmäisen merkin kohdasta. Jos alku sisältää tyhjäarvon, ilmenee virhe. Alku-argumentti on pakollinen, jos vertailu on määritetty.

merkkijono1

Pakollinen. Merkkijonolauseke, johon haku kohdistuu.

merkkijono2

Pakollinen. Merkkijonolauseke, jota haetaan.

vertailu

Valinnainen. Määrittää merkkijonovertailutyypin. Jos vertailu on tyhjäarvo, ilmenee virhe. Jos vertailu jätetään pois, Asetuksenvertailu-asetus määrittää vertailun lajin. Määritä kelvollinen LCID-tunniste (aluekohtaisen asetuksen tunniste) käyttämään aluekohtaisia sääntöjä vertailussa.

Vihje: Lausekkeenmuodostimessa on IntelliSense, joten näet, mitä argumentteja lauseke vaatii.

Asetukset

Vertailu-argumentin asetukset ovat seuraavat:

Vakio

Arvo

Kuvaus

vbUseCompareOption

-1

Suorittaa vertailun käyttämällä Asetuksen vertailu -lausekkeen asetusta.

vbBinaryCompare

0

Suorittaa binaarisen vertailun.

vbTextCompare

1

Suorittaa tekstivertailun.

Palautusarvot

Jos

InStr palauttaa

merkkijono1 on tyhjä

0

merkkijono1 on tyhjäarvo

tyhjäarvo

merkkijono2 on tyhjä

alku

merkkijono2 on tyhjäarvo

tyhjäarvo

merkkijono2:ta ei löydy

0

merkkijono2 löytyy merkkijono1:stä

Sijainti, josta vastine löydetään.

alku > merkkijono2

0

Huomautuksia

InStrB-funktiota käytetään merkkijonoon sisältyvien tavutietojen kanssa. InStrB palauttaa tavun sijainnin sen sijaan, että se palauttaisi toisessa merkkijonossa olevan yhden merkkijonon ensimmäisen esiintymän merkin.

Esimerkkejä

InStr-funktion käyttäminen lausekkeessa    Voit käyttää InStr-funktiota niissä kohdissa, missä voit käyttää lausekkeitakin. Jos haluat löytää ensimmäisen pisteen (.) sijainnin kentästä, joka sisältää IP-osoitteet (nimellä IPOsoite), voit etsiä sen InStr-funktion avulla seuraavasti:

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

InStr-funktio tutkii jokaisen IPOsoite-kentän arvon ja palauttaa ensimmäisen pisteen sijainnin. Jos IP-osoitteen ensimmäinen osa on 10., funktio palauttaa arvon 3.

Käyttämällä sen jälkeen muita funktioita InStr-funktion tuloksessa voit poimia ensimmäistä pistettä edeltävän IP-osoitteen osan seuraavasti

Left([IPOsoite],(InStr(1,[IPOsoite],”.”) -1))

Tässä esimerkissä InStr(1,[IPOsoite],”.”) palauttaa ensimmäisen pisteen sijainnin. Vähentämällä 1 määritetään, kuinka monta merkkiä ensimmäistä pistettä edeltää, eli tässä tapauksessa 2. Left-funktio poimii sen jälkeen niin monta merkkiä IPOsoite-kentän vasemmasta osasta ja palauttaa arvon 10.

InStr-funktion käyttäminen VBA-koodissa    

Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa.

Tässä esimerkissä InStr-funktiota käytetään palauttamaan toisessa merkkijonossa olevan yhden merkkijonon ensimmäisen esiintymän sijainti.

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.

Katso myös

Merkkijonofunktiot ja niiden käyttö

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.