VBA Fichiers et répertoires – Objet système de fichiers

Objet système de fichiers

C’est une bibliothèque supplémentaire qui offre un accès clair, orienté objet, à toutes les fonctions courantes de fichiers et de répertoires.
Cet objet ne fait pas partie de la bibliothèque Office et nécessite l’ajout d’une référence supplémentaire à votre projet.
SS – Dialogue des références
Une fois la référence ajoutée, vous pouvez utiliser le navigateur d’objets pour en savoir plus sur les objets.
Le Microsoft Scripting Runtime est une bibliothèque qui peut être ajoutée à un projet en utilisant (Outils > Références).
Cette bibliothèque est située dans C:\Windows\System32\scrrun.dll

Dim objFSOFileSystemObject As Scripting.FileSystemObject 
Set objFSOFileSystemObject = CreateObject("Scripting.FileSystemObject")

Types d’objets

FileSystemObject – Il s’agit également d’un objet de niveau supérieur utilisé pour accéder aux lecteurs, aux dossiers et aux fichiers.
Drive – Cet objet appartient à la collection Drives et fait référence à un lecteur local ou réseau particulier.
Folder – Cet objet fait référence à un dossier particulier.
File – Cet objet fait référence à un fichier particulier.
TextStream – Cet objet fait référence à un flux de texte qui peut être lu, écrit ou ajouté à un fichier texte.
Dictionary – C’est l’objet de niveau supérieur

FileSystemObject Object

L’objet FileSystemObject est l’objet qui vous donne réellement accès aux fichiers d’un système en utilisant 27 méthodes et une seule propriété.
Lorsque vous créez des dossiers, vous devez les créer, un niveau à la fois. Vous ne pouvez pas créer un dossier et un sous-dossier en même temps.
Vous devez toujours utiliser les noms de serveurs au lieu des lettres car différents PC peuvent avoir différentes lettres assignées
Nous n’essaierons pas de définir toutes les méthodes, mais nous en passerons quelques-unes en revue au fur et à mesure que nous les utiliserons dans des exemples de code un peu plus tard.
En outre, FileSystemObject est utilisé pour renvoyer un objet qui peut créer, lire et éditer des fichiers texte (ASCII et Unicode).
Une fois que vous avez une nouvelle instance du FileSystemObject, vous pouvez travailler avec des lecteurs, des dossiers et des fichiers, qui fournissent un accès facile au système de fichiers et simplifient le processus de lecture et d’écriture dans un fichier texte.

Dim objFSOFileSystemObject As New Scripting.FileSystemObject 

Alternativement

Dim objFSOFileSystemObject As Scripting.Dictionary 
Set objFSOFileSystemObject = New Scripting.FileSystemObject

Alternativement

Dim objFSOFileSystemObject As Object 
Set objFSOFileSystemObject = CreateObject("Scripting.FileSystemObject")

Important

Malheureusement, le FileSystemObject ne convient pas pour travailler avec des données binaires. Pour cela, vous devez utiliser les fonctions traditionnelles.