Instrução Open

Habilita a entrada/saída (E/S) no disco.

Sintaxe

AbrapathnameFormode [ Access] [lock ] As [ # ] filenumber [ Len = reclength ]

A sintaxe da instrução Open tem as seguintes partes:

Parte Descrição
nomedocaminho Obrigatório. Expressão de cadeia de caracteres que especifica um nome de arquivo. Pode incluir diretório ou pasta e unidade.
modo Obrigatório. A palavra-chave que especifica o modo de arquivo: Anexo, Binário, Entrada, Saída ou Aleatório. Se não especificado, o arquivo será aberto para acesso Aleatório.
acesso Opcional. A palavra-chave que especifica as operações permitidas no arquivo aberto: Ler, Gravar ou Ler Gravar.
bloqueio Opcional. A palavra-chave que especifica as operações restringidas no arquivo aberto por outros processos: Compartilhado, Bloquear Ler, Bloquear Gravar e Bloquear Ler Gravar.
númerodoarquivo Obrigatório. Um número de arquivo válido no intervalo de 1 a 511, inclusive. Use a função FreeFile para obter o próximo número de arquivo disponível.
comprimentoreg Opcional. É menor ou igual a 32.767 (bytes). Para arquivos abertos para acesso aleatório, esse valor é o comprimento do registro. Para arquivos sequenciais, esse valor é o número de caracteres armazenados em buffer.

Comentários

Você deve abrir um arquivo antes que qualquer operação de E/S possa ser executada nele. Open aloca um buffer de E/S para o arquivo e determina o modo de acesso que será usado com o buffer.

Se o arquivo especificado por nomedocaminho não existir, ele será criado quando um arquivo aberto nos modos Anexo, Binário, Saída ou Aleatório.

Se o arquivo já estiver aberto por outro processo e o tipo de acesso especificado não for permitido, a operação Open falhará e ocorrerá um erro.

A cláusula Len será ignorada se o modo for Binário.

Importante

Nos modos Binário, Entrada e Aleatório, é possível abrir um arquivo usando um número de arquivo diferente sem antes fechar o arquivo. Nos modos Anexo e Saída, você deve fechar um arquivo antes de abri-lo com um número de arquivo diferente.

Exemplo

Este exemplo ilustra as várias utilizações da instrução Open para ativar a entrada e saída para um arquivo.

O código a seguir abre o arquivo no modo de entrada sequencial.

Open "TESTFILE" For Input As #1 
' Close before reopening in another mode. 
Close #1 

Este exemplo abre o arquivo no modo Binário para gravar operações apenas.

Open "TESTFILE" For Binary Access Write As #1 
' Close before reopening in another mode. 
Close #1 

O exemplo a seguir abre o arquivo no modo Aleatório. O arquivo contém os registros do tipo definido pelo usuário.

Type Record ' Define user-defined type. 
 ID As Integer 
 Name As String * 20 
End Type 
 
Dim MyRecord As Record ' Declare variable. 
Open "TESTFILE" For Random As #1 Len = Len(MyRecord) 
' Close before reopening in another mode. 
Close #1 

Este exemplo de código abre o arquivo para saída sequencial; qualquer processo pode ler ou gravar no arquivo.

Open "TESTFILE" For Output Shared As #1 
' Close before reopening in another mode. 
Close #1 

Este exemplo de código abre o arquivo no modo Binário para leitura; outros processos não podem ler o arquivo.

Open "TESTFILE" For Binary Access Read Lock Read As #1 

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.