Observação: A função, método, objeto ou propriedade descrita neste tópico será desabilitada se o Serviço de Expressão de Jato da Microsoft estiver em execução no modo de área restrita, o que impede a avaliação de expressões potencialmente inseguras. Para obter mais informações sobre o modo de área restrita, procure por "modo de área restrita" na Ajuda.
Retorna um Long especificando a posição atual de leitura/gravação em um arquivo aberto.
Sintaxe
Loc( filenumber )
O número de arquivos necessárioargumento é qualquer inteiro válido número do arquivo.
Comentários
O seguinte descreve o valor retornado para cada modo de acesso de arquivo:
Modo |
Valor de retorno |
Aleatório |
Número do último registro lido ou gravado no arquivo. |
Seqüencial |
Posição de byte atual no arquivo dividido por 128. No entanto, as informações retornadas pela Loc para arquivos sequenciais não são usadas nem necessárias. |
Binário |
Posição da última leitura ou escrita do byte. |
Exemplo
Observação: Exemplos a seguir demonstram o uso dessa função em um módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência do Desenvolvedor na lista suspensa ao lado de Pesquisar e insira um ou mais termos na caixa de pesquisa.
Este exemplo usa a função Loc para retornar a posição atual de leitura/gravação em um arquivo aberto. Este exemplo pressupõe que TESTFILE é um arquivo de texto com algumas linhas de dados de exemplo.
Dim MyLocation, MyLine
' Open file just created.
Open "TESTFILE" For Binary As #1
' Loop until end of file.
Do While MyLocation < LOF(1)
' Read character into variable.
MyLine = MyLine & Input(1, #1)
' Get current position within file.
MyLocation = Loc(1)
' Print to the Immediate window.
Debug.Print MyLine; Tab; MyLocation
Loop
Close #1 ' Close file.