Funkcija Seek

Attiecas uz
Access pakalpojumam Microsoft 365 Access 2021 Access 2019 Access 2016

Piezīme

Šajā tēmā aprakstītā funkcija, metode, objekts vai rekvizīts ir atspējots, ja Microsoft Jet Expression Service darbojas smilškastes režīmā, kas neļauj novērtēt potenciāli nedrošas izteiksmes. Lai iegūtu papildinformāciju par smilškastes režīmu, meklējiet "smilškastes režīms" palīdzībā.

Atgriež Long vērtību, kas norāda pašreizējo lasīšanas/rakstīšanas pozīciju failā, kas atvērts, izmantojot priekšrakstu Open .

Sintakse

Seek(faila numurs)

Nepieciešamais faila numuraarguments ir vesels skaitlis, kurā ir derīgs faila numurs.

Piezīmes

Meklēšanas atgriež vērtību no 1 līdz 2 147 483 647 (ekvivalents 2^31 – 1), ieskaitot.

Tālāk ir aprakstītas atgrieztās vērtības katram failu piekļuves režīmam.

Režīms Atgrieztā vērtība
Nejaušs Nākamā lasītā vai ierakstītā ieraksta numurs
Binārs,
Rezultāts,
Pievienot,
Ievade
Baita pozīcija, kurā notiek nākamā darbība. Pirmais baits failā atrodas 1. pozīcijā, otrais baits atrodas 2. pozīcijā utt.

    

Piemērs

Piezīme

Turpmākajos piemēros redzama šīs funkcijas izmantošana Visual Basic for Applications (VBA) modulī. Lai iegūtu papildinformāciju par darbu ar VBA, nolaižamajā sarakstā atlasiet Uzziņas materiāli izstrādātājiem blakus meklēšanas lodziņam un ievadiet šajā lodziņā vienu vai vairākus vārdus.

Šajā piemērā tiek izmantota funkcija Ssearch , lai atgrieztu pašreizējo faila pozīciju. Piemērā tiek pieņemts, ka TESTFILE fails satur lietotāja definēta tipa Recordierakstus.

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

Failiem, kas atvērti nejaušā režīmā, meklēšana atgriež nākamā ieraksta numuru.

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.

Failiem, kas atvērti citā režīmā, nevis izlases režīmā, meklēšana atgriež baitu pozīciju, kurā tiek veikta nākamā darbība. Pieņemsim, ka TESTFILE fails satur dažas teksta rindiņas.

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.