Função Seek

Retorna um Long especificando a posição atual de leitura/gravação em um arquivo aberto usando a instrução Open .

Sintaxe

Seek(filenumber)

O argumento de número de arquivo necessário é um Inteiro que contém um número de arquivo válido.

Comentários

O Seek retorna um valor entre 1 e 2.147.483.647 (equivalente a 2^31 - 1), inclusivo.

A seguir, descreve os valores retornados para cada modo de acesso de arquivo.

Modo Valor de retorno
Aleatório Número do próximo registro lido ou escrito.
Binary, Output, Append, Input Posição byte na qual a próxima operação ocorre. O primeiro byte em um arquivo está na posição 1, o segundo byte está na posição 2 e assim por diante.

Exemplo

Este exemplo usa a função Seek para retornar a posição do arquivo atual. O exemplo pressupõe que TESTFILE seja um arquivo que contém registros do tipo Recorddefinido pelo usuário .

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

Para arquivos abertos no modo Aleatório, o Seek retorna o número do próximo registro.

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.
    Debug.Print Seek(1)    ' Print record number to the Immediate window.
Loop
Close #1    ' Close file.

Para arquivos abertos em modos diferentes do modo Aleatório, o Seek retorna a posição de byte na qual a próxima operação ocorre. Suponha que TESTFILE seja um arquivo que contém algumas linhas de texto.

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.
    Debug.Print Seek(1)    ' Print byte position to the Immediate window.
Loop
Close #1    ' Close file.

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.