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.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de