Huomautus: Tässä ohjeaiheessa kuvattu funktio, menetelmä, objekti tai ominaisuus ei ole käytössä, jos Microsoft Jet Expression Service toimii eristetyssä tilassa, mikä estää mahdollisesti vahingollisten lausekkeiden arvioimisen. Katso lisätietoja eristetystä tilasta ohjeen ”Eristetty tila” -kohdasta.
Palauttaa pitkän kokonaisluvun, joka määrittää nykyisen luku-/kirjoituskohdan Open-lauseella avatussa tiedostossa.
Syntaksi
Seek( tiedostonumero )
Pakollinen tiedostonumeroargumentti on kokonaisluku, jossa on kelvollinen tiedoston numero.
Huomautuksia
Seek palauttaa arvon väliltä 1–2 147 483 647 (vastaa 2^31 – 1).
Seuraavassa kuvataan kunkin tiedoston käyttötilan palautusarvot.
Tila |
Palautusarvo |
Satunnainen |
Seuraavan luetun tai kirjoitetun tietueen numero |
Binaari, Tulos, Liitä, Syöttö |
Tavusijainti, jossa seuraava toiminto tapahtuu. Tiedoston ensimmäinen tavu on kohdassa 1, toinen tavu on kohdassa 2 ja niin edelleen. |
Esimerkki
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ä Seek-funktion avulla palautetaan tiedoston nykyinen sijainti. Esimerkissä oletetaan, että TESTFILE on tiedosto, joka sisältää käyttäjän määrittämän tyypin Record tietueita.
Type Record ' Define user-defined type.
ID As Integer Name As String * 20 End Type
Satunnaistilassa avatuissa tiedostoissa Seek palauttaa seuraavan tietueen numeron.
Dim MyRecord As Record ' Declare variable.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord) Do While Not EOF(1) ' Loop until end of file. Get #1, , MyRecord ' Read next record. ' Print record number to the Immediate window. Debug.Print Seek(1) Loop Close #1 ' Close file.
Muussa kuin satunnaistilassa avatuissa tiedostoissa Seek palauttaa tavusijainnin, jossa seuraava toiminto tapahtuu. Oletetaan, että TESTFILE on muutaman tekstirivin sisältävä tiedosto.
Dim MyChar
Open "TESTFILE" For Input As #1 ' Open file for reading. Do While Not EOF(1) ' Loop until end of file. MyChar = Input(1, #1) ' Read next character of data. ' Print byte position to the Immediate window. Debug.Print Seek(1) Loop Close #1 ' Close file.