Poznámka
Funkce, metoda, objekt nebo vlastnost popsané v tomto tématu jsou zakázány, pokud je služba Microsoft Jet Expression Service spuštěna v režimu izolovaného prostoru (sandbox), který znemožňuje vyhodnocení potenciálně nebezpečných výrazů. Další informace o režimu izolovaného prostoru vyhledáte zadáním dotazu "režim izolovaného prostoru" v nápovědě.
Vrátí hodnotu Long určující aktuální pozici čtení/zápisu v souboru otevřeném pomocí příkazu Open .
Syntaxe
Seek(číslo_souboru)
Povinný argument číslo_souboruje celé číslo obsahující platné číslo souboru.
Poznámky
Funkce Hledat vrátí hodnotu v rozsahu od 1 do 2 147 483 647 (ekvivalent 2^31 – 1) včetně.
Následující text popisuje návratové hodnoty pro jednotlivé režimy přístupu k souborům.
| Režim | Vrácená hodnota |
|---|---|
| Náhodné | Číslo dalšího přečteného nebo zapsaného záznamu |
|
Binární, Výstup, Připojit, Vstup |
Pozice bajtů, na které probíhá další operace. První bajt v souboru je na pozici 1, druhý bajt na pozici 2 atd. |
Příklad
Poznámka
Následující příklady ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud chcete další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat a do vyhledávacího pole napište požadované pojmy.
V tomto příkladu se funkce Seek používá k vrácení aktuální pozice souboru. Příklad předpokládá TESTFILE , že jde o soubor obsahující záznamy uživatelem definovaného typu Record.
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
U souborů otevřených v náhodném režimu vrátí funkce Seek číslo dalšího záznamu.
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.
U souborů otevřených v jiných režimech než v náhodném režimu vrátí funkce Seek pozici bajtů, na které probíhá další operace. Předpokládejme TESTFILE , že jde o soubor obsahující několik řádků textu.
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.