Médiaforma

VBA Excel – Modifier et lire les attributs des fichiers

Print Friendly, PDF & Email

Dans Windows, les fichiers possèdent des attributs qui peuvent changer leur comportement dans l’explorateur de fichiers. Par exemple, les fichiers cachés n’apparaitront pas dans l’explorateur de fichiers, ou encore, les fichiers à lecture seule ne pourront pas être modifiés.

Modifier les attributs d’un fichier

En utilisant l’instruction VBA SetAttr, vous pouvez modifier l’attribut d’un fichier quelconque. Voici sa syntaxe :

SetAttr "chemin", attribut

chemin est le chemin complet du fichier dont vous voulez modifier l’attribut et attribut est l’attribut que vous voulez lui donner.

Les différents attributs utilisables sont résumés dans ce tableau :

Paramètre Valeur numérique Description
vbNormal 0 Fichier normal
vbReadOnly 1 Lecture seule
vbHidden 2 Fichier caché
vbSystem 4 Fichier système
vbArchive 32 Archive
vbAlias 64 Lien symbolique

Par exemple, pour affecter l’attribut Lecture seule au fichier c:\data\a.pdf, vous utiliserez cette instruction :

SetAttr "c:\data\a.pdf", vbReadOnly

Vous pouvez également passer la valeur numérique correspondante à SetAttr :

SetAttr "c:\data\a.pdf", 1

Si nécessaire, vous pouvez cumuler plusieurs attributs en les additionnant. Par exemple, pour affecter les attributs Lecture seule et Fichier caché au fichier c:\data\a.pdf, vous utiliserez cette instruction :

SetAttr "c:\data\a.pdf", vbReadOnly + vbHidden

Ou encore :

SetAttr "c:\data\a.pdf", 3

Lire les attributs d’un fichier

Vous voulez connaitre l’attribut d’un fichier ? Utilisez la fonction GetAttr() :

GetAttr("chemin")

chemin est le chemin complet du fichier dont vous voulez connaitre les attributs.

Cette fonction retourne l’attribut du fichier spécifié sous une valeur numérique.

Par exemple, pour connaitre l’attribut de l’hypothétique fichier c:\data\a.pdf et l’afficher dans une boîte de dialogue, vous utiliserez cette instruction :

MsgBox "Le fichier c:\data\a.pdf a pour attribut : " & GetAttr("c:\data\a.pdf")

Ici, le fichier est en lecture seule :

Vous avez aimé cet article ? Partagez-le avec vos réseaux...