Instrução Input #

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

Sintaxe

Entrada#filenumber, varlist

A sintaxe da 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 às quais são atribuídos valores lidos do arquivo não pode ser uma variável de matriz ou 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 Gravação #. Use esta instrução somente com arquivos abertos no modo de entrada ou binário . Quando lidos, a cadeia de caracteres padrão ou os dados numéricos são atribuídos a variáveis sem modificação.

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

Data Valor atribuído à variável
Delimitando vírgula ou linha em branco Vazia
#NULL# Null
#TRUE# ou #FALSE# True ou False
# aaaa-mm-dd hh:mm:ss # A data e/ou a hora representada pela expressão
#ERROR errornumber # errornumber (a variável é uma Variant marcada como 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 # ; Input # 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 corresponder às variáveis do mesmo tipo de dados. Se uma variável for numérica e os dados não forem numéricos, o 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 os dados de um arquivo em variáveis usando Input #, use a instrução Write # em vez da instrução Print # para gravar os dados nos arquivos. O uso de Gravar # 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 é um arquivo com algumas linhas de dados gravados nele 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.