Huomautus: Microsoft haluaa tarjota sinulle ajantasaisinta ohjesisältöä mahdollisimman nopeasti omalla kielelläsi. Tämä sivu on käännetty automaation avulla, ja siinä saattaa olla kielioppivirheitä tai epätarkkuuksia. Tarkoitus on, että sisällöstä on sinulle hyötyä. Kertoisitko sivun alareunassa olevan toiminnon avulla, oliko tiedoista hyötyä? Tästä pääset helposti artikkelin englanninkieliseen versioon.
Palauttaa variantin (Long), joka määrittää toisessa merkkijonossa olevan yhden merkkijonon ensimmäisen esiintymän sijainnin.
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: Access 2010:ssä Expression Builderillä on IntelliSense-toiminto, joten voit nähdä lausekkeen vaatimat argumentit.
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. |
vbDatabaseCompare |
2 |
Vain Microsoft Office Access 2007. Suorittaa tietokannan tietoihin perustuvan vertailun. |
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. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.
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.