Bemærk
Funktionen, metoden, objektet eller egenskaben, der er beskrevet i dette emne, deaktiveres, hvis Microsoft Jet Expression Service kører i sandkassetilstand, hvilket forhindrer evalueringen af potentielt usikre udtryk. Søg efter "sandkassetilstand" i Hjælp, hvis du vil have mere at vide om sandkassetilstand.
Returnerer en Long-værdi, der angiver den aktuelle læse-/skriveposition i en fil, der blev åbnet ved hjælp af Open-sætningen.
Syntaks
Søg(filnummer)
Det påkrævede filnummer-argumenter et heltal, der indeholder et gyldigt filnummer.
Bemærkninger
Seek returnerer en værdi mellem 1 og 2.147.483.647 (svarende til 2^31 – 1), inklusive.
Nedenfor beskrives returværdierne for hver filadgangstilstand.
| Tilstand | Returværdi |
|---|---|
| Tilfældig | Nummer på næste post, der er læst eller skrevet |
|
binær, Output, Vedhæft Input |
Byteposition, hvor den næste handling finder sted. Den første byte i en fil er på position 1, den anden byte er på position 2 osv. |
Eksempel
Bemærk
Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.
I dette eksempel bruges funktionen Seek til at returnere den aktuelle filposition. I eksemplet antages TESTFILE det, at der er tale om en fil, der indeholder poster af den brugerdefinerede type Record.
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
For filer, der åbnes i tilfældig tilstand, returnerer Søg-tallet for næste post.
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.
For filer, der åbnes i andre tilstande end i vilkårlig tilstand, returnerer Søg den byteposition, hvor den næste handling finder sted. Antag TESTFILE , at det er en fil, der indeholder nogle få tekstlinjer.
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.