Seek, functie

Opmerking: De functie, methode, object of eigenschap die in dit onderwerp wordt beschreven, is uitgeschakeld als de Microsoft Jet Expression-service wordt uitgevoerd in de sandboxmodus, waardoor mogelijk onveilige expressies niet kunnen worden geëvalueerd. Voor meer informatie over de sandbox-modus zoekt u naar 'sandbox-modus' in de Help.

Deze functie retourneert een long die de huidige lees-/schrijfpositie in een bestand opgeeft dat is geopend met de instructie Open.

Syntaxis

Seek( bestandsnummer )

Het vereiste argument bestandsnummer is een geheel getal met een geldige bestandsnummer.

Opmerkingen

Seek retourneert een waarde tussen 1 en 2.147.483.647 (gelijk aan 2^31 – 1), inclusief.

In het volgende artikel worden de retourwaarden voor elke toegangsmodus voor bestanden beschreven.

Modus

Retourwaarde

Willekeurig

Nummer van de volgende record gelezen of geschreven

Binair,
Uitvoer,
Append,
Invoer

De bytepositie waarop de volgende bewerking wordt uitgevoerd. De eerste byte in een bestand staat op positie 1, de tweede byte op positie 2, en meer.


Voorbeeld

Opmerking: In de volgende voorbeelden wordt het gebruik van deze functie in een VBA-module (Visual Basic for Applications) toegelicht. Meer informatie over het werken met VBA vindt u door in de vervolgkeuzelijst naast Zoeken de optie Referentie voor ontwikkelaars te selecteren en een of meer termen in het zoekvenster te typen.

In dit voorbeeld wordt de functie Seek gebruikt om de huidige bestandspositie op te vragen. In het voorbeeld wordt ervan TESTFILE een bestand is met records van het door de gebruiker gedefinieerde type Record.

Type Record    ' Define user-defined type.
ID As Integer
Name As String * 20
End Type

Voor bestanden die zijn geopend in de modus Willekeurige modus, wordt het nummer van de volgende record als retourneert.

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.

Voor bestanden die zijn geopend in andere modi dan de willekeurige modus, retourneert Seek de bytepositie waarop de volgende bewerking wordt uitgevoerd. Stel TESTFILE een bestand is met een paar regels tekst.

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.

Meer hulp nodig?

Uw Office-vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagenten.

×