Nota
La funzione, il metodo, la proprietà o l'oggetto descritto in questo argomento è disabilitato se Microsoft Jet Expression Service è in esecuzione in modalità sandbox, che impedisce la valutazione delle espressioni potenzialmente pericolose. Per altre informazioni sulla modalità sandbox, cercare "modalità sandbox" nella Guida.
Restituisce un Long specificando la posizione di lettura/scrittura corrente all'interno di un file aperto utilizzando l'istruzione Open .
Sintassi
Cerca(numero file)
L'argomento filenumberrichiesto è un numero intero contenente un numero di file valido.
Osservazioni
Ricerca restituisce un valore compreso tra 1 e 2.147.483.647 (equivalente a 2^31 – 1), inclusi.
Di seguito vengono descritti i valori restituiti per ogni modalità di accesso ai file.
| Moda | Valore restituito |
|---|---|
| Random | Numero del record successivo letto o scritto |
|
Binario, Produzione, Aggiungere, Input |
Posizione byte in cui viene eseguita l'operazione successiva. Il primo byte di un file si trova nella posizione 1, il secondo byte nella posizione 2 e così via. |
Esempio
Nota
Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.
In questo esempio viene usata la funzione Seek per restituire la posizione corrente del file. L'esempio presuppone TESTFILE che sia un file contenente record del tipo Recorddefinito dall'utente .
Type Record ' Define user-defined type.
ID As Integer
Name As String * 20
End Type
Per i file aperti in modalità casuale, la funzione Ricerca restituisce il numero del record successivo.
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.
Per i file aperti in modalità diverse dalla modalità casuale, la ricerca restituisce la posizione del byte in cui viene eseguita l'operazione successiva. Supponiamo TESTFILE sia un file contenente poche righe di testo.
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.