Partage via


Input #, instruction

Lit les données d’un fichier séquentiel ouvert et les affecte à des variables.

Syntaxe

Entrée#filenumber, varlist

La syntaxe de l’instruction Input # comprend les éléments suivants :

Élément Description
filenumber Obligatoire. Un numéro de fichier valide.
varlist Obligatoire. Liste délimitée par des virgules de variables auxquelles les valeurs attribuées sont lues à partir du fichier ; il ne peut pas s’agir d’une variable de tableau ou d’objet. Toutefois, des variables qui décrivent un élément d’un tableau ou d’un type défini par l’utilisateur peuvent être utilisées.

Remarques

Les données lues avec le numéro d’entrée sont généralement écrites dans un fichier avec write #. N’utilisez cette instruction qu’avec les fichiers ouverts en mode Input ou Binary. Lorsqu’elles sont lues, les chaînes standard ou les données numériques sont affectées à des variables sans être modifiées.

Le tableau suivant indique le traitement des autres données d’entrée :

Data Valeur affectée à la variable
Virgule de séparation ou ligne vide Empty
#NULL# Null
#TRUE# ou #FALSE# True ou False
# aaaa-mm-jj hh :mm :ss # Date et/ou heure représentées par l’expression
#ERROR errornumber # errornumber (la variable est une Variante balisée comme une erreur)

Les guillemets doubles () dans les données d’entrée sont ignorés.

Remarque

Vous ne devez pas écrire de chaînes qui contiennent des guillemets incorporés (par exemple, "1,2""X") à utiliser avec l’instruction Input # ; Input # analyse cette chaîne comme deux chaînes complètes et distinctes.

Les éléments de données d’un fichier doivent se présenter dans le même ordre que les variables de varlist et correspondre aux variables du même type de données. Si une variable est numérique et que les données ne le sont pas, la variable reçoit la valeur zéro.

Si vous atteignez la fin du fichier lorsque vous entrez un élément de données, l’entrée est arrêtée et une erreur se produit.

Remarque

Pour pouvoir lire correctement les données d’un fichier dans des variables à l’aide de Input #, utilisez l’instruction Write # au lieu de l’instruction Print # pour écrire les données dans les fichiers. L’utilisation de Write # garantit que chaque champ de données distinct est correctement délimité.

Exemple

Dans cet exemple, l’instruction Input # permet de transformer les données d’un fichier en deux variables. Cet exemple suppose que TESTFILE est un fichier avec quelques lignes de données écrites dans celui-ci à l’aide de l’instruction Write # ; autrement dit, chaque ligne contient une chaîne entre guillemets et un nombre séparé par une virgule, par exemple, "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. 

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.