Aide Collabora Office 24.04
Lit les données d'un fichier séquentiel ouvert.
Input #fileNum {,|;} var1 [, var2 [, ...]]
fileNum : numéro du fichier contenant les données à lire. Le fichier doit être ouvert avec l'instruction Open à l'aide du mot-clé INPUT.
var : variable de nombre ou de chaîne à laquelle sont assignées les valeurs lues dans le fichier ouvert.
L'instruction Input# lit des valeurs numériques ou des chaînes de caractères dans un fichier ouvert et assigne les données à une ou plusieurs variables. Une variable numérique est lue jusqu'à la première occurrence d'un retour chariot (Asc=13), d'un retour à la ligne (Asc=10), d'un espace ou d'une virgule. Une variable de chaîne de caractères est lue jusqu'à la première occurrence d'un retour chariot (Asc=13), d'un retour à la ligne (Asc=10) ou d'une virgule.
Les données et les types de données du fichier ouvert doivent être dans le même ordre que les variables transmises dans le paramètre "var". Si vous assignez des valeurs non numériques à une variable numérique, le paramètre "var" prend la valeur "0".
Lles enregistrements séparés par des virgules ne peuvent pas être assignées à une variable de chaîne de caractères. Les guillemets (") présents dans le fichier ne sont pas non plus pris en compte. Pour lire ces caractères dans le fichier, utilisez l'instruction Line Input# permettant de lire ligne par ligne un fichier texte pur (contenant uniquement des caractères imprimables).
Si la fin du fichier est atteinte lors de la lecture d'un élément de données, une erreur se produit et le processus est abandonné.
Sub ExampleWorkWithAFile
Dim iCount As Integer, sFileName As String
Dim sName As String, sValue As Integer
sFileName = "C:\Users\ThisUser\data.txt"
iCount = Freefile
' Écrire les données (que nous lirons plus tard avec Input) dans un fichier
Open sFileName For Output As iCount
sName = "Hamburg" : sValue = 200
Write #iCount, sName, sValue
sName = "New York" : sValue = 300
Write #iCount; sName, sValue
sName = "Miami" : sValue = 459
Write #iCount, sName, sValue
Close #iCount
' Lire le fichier de données en utilisant Input
iCount = Freefile
Open sFileName For Input As iCount
Input #iCount, sName, sValue
MsgBox sName & " " & sValue
Input #iCount; sName, sValue
MsgBox sName & " " & sValue
Input #iCount, sName, sValue
MsgBox sName & " " & sValue
Close #iCount
End Sub