Comment utiliser la fonction EOF dans VBA ?

La fonction `EOF` (End Of File) en VBA est utilisée pour déterminer si la fin d’un fichier a été atteinte. C’est particulièrement utile lors de la lecture de fichiers dans des boucles, car cela vous aide à éviter les erreurs en tentant de lire au-delà de la fin du fichier.

Voici comment vous pouvez utiliser la fonction `EOF` dans VBA :

  • Ouvrir le fichier : Avant d’utiliser `EOF`, vous devez ouvrir le fichier en question en utilisant la commande `Open`. Vous devez spécifier le chemin du fichier, le mode d’ouverture (par exemple, en mode `Input` pour lire le fichier) et un numéro de fichier (file number).
  • Utiliser la fonction EOF dans une boucle : La fonction `EOF` est typiquement utilisée dans une boucle `Do While` ou `Do Until` pour lire le fichier ligne par ligne ou en blocs jusqu’à ce que vous atteigniez la fin du fichier.
  • Fermer le fichier : Après avoir fini de traiter le fichier, n’oubliez pas de le fermer à l’aide de la commande `Close`.

Voici un exemple simple montrant comment utiliser `EOF` dans VBA :

Sub LireFichier()
    Dim NumFichier As Integer
    Dim LigneTexte As String
    
    ' Assignez un numéro de fichier libre
    NumFichier = FreeFile
    
    ' Ouvrir le fichier en lecture
    Open "C:cheminversVotreFichier.txt" For Input As NumFichier
    
    ' Lire jusqu'à la fin du fichier
    Do While Not EOF(NumFichier)
        ' Lire une ligne du fichier
        Line Input #NumFichier, LigneTexte
        ' Traitez la ligne ici (par exemple, affichez-la dans la fenêtre immédiate)
        Debug.Print LigneTexte
    Loop
    
    ' Fermer le fichier
    Close NumFichier
End Sub

Points à noter :

  • Assurez-vous de remplacer `”C:cheminversVotreFichier.txt”` par le chemin réel et le nom de votre fichier.
  • Dans l’exemple, nous utilisons `Line Input` pour lire le fichier ligne par ligne, mais il existe d’autres méthodes de lecture si vous avez besoin de structures différentes.
  • À chaque fois que vous ouvrez un fichier avec `Open`, vous devez le fermer après avoir terminé d’utiliser `Close` pour éviter les fuites de ressources.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project