Instrução Input #

Lê dados de um arquivo sequencial aberto e atribui os dados a variáveis.

Sintaxe

Entrada#filenumber, varlist

A sintaxe de instrução Input # tem estas partes:

Sair Descrição
númerodoarquivo Obrigatório. Qualquer número de arquivo válido.
varlist Obrigatório. A lista delimitada por vírgulas de variáveis atribuídas a valores lidos do arquivo não pode ser uma matriz ou uma variável de objeto. No entanto, variáveis que descrevem um elemento de uma matriz ou tipo definido pelo usuário podem ser usadas.

Comentários

Os dados lidos com Entrada # geralmente são gravados em um arquivo com Write #. Use esta instrução somente com arquivos abertos no modo de entrada ou binário . Quando lidos, os dados numéricos ou de cadeia de caracteres padrão são atribuídos a variáveis sem modificação.

A tabela a seguir ilustra como outros dados de entrada são tratados:

Dados Valor atribuído à variável
Delimitando vírgula ou linha em branco Vazia
#NULL # Null
#TRUE# ou #FALSE # True ou False
# yyyy-mm-dd hh:mm:ss # A data e/ou hora representadas pela expressão
#ERROR número de erros # número de erros (variável é uma Variant marcada como um erro)

Aspas duplas () nos dados de entrada são ignoradas.

Observação

Você não deve escrever cadeias de caracteres que contenham aspas inseridas (por exemplo, "1,2""X") para uso com a instrução Input # ; A entrada # analisa essa cadeia de caracteres como duas cadeias de caracteres completas e separadas.

Os itens de dados em um arquivo devem aparecer na mesma ordem que as variáveis em varlist e correspondem a variáveis do mesmo tipo de dados. Se uma variável for numérica e os dados não forem numéricos, um valor zero será atribuído à variável.

Se você chegar ao final do arquivo enquanto estiver inserindo um item de dados, a entrada será encerrada e ocorrerá um erro.

Observação

Para poder ler corretamente dados de um arquivo em variáveis usando Input #, use a instrução Write # em vez da instrução Imprimir # para gravar os dados nos arquivos. O uso do Write # garante que cada campo de dados separado seja delimitado corretamente.

Exemplo

Este exemplo usa a instrução Input # para ler dados de um arquivo em duas variáveis. Este exemplo pressupõe que TESTFILE seja um arquivo com algumas linhas de dados escritas para ele usando a instrução Write # ; ou seja, cada linha contém uma cadeia de caracteres entre aspas e um número separado por uma vírgula, por exemplo, "Hello", 234.

Dim MyString, MyNumber 
Open "TESTFILE" For Input As #1    ' Open file for input. 
Do While Not EOF(1)    ' Loop until end of file. 
    Input #1, MyString, MyNumber    ' Read data into two variables. 
    Debug.Print MyString, MyNumber    ' Print data 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.