Fileオブジェクト - Attributesプロパティ


【書式】

File.Attributes

ファイルの属性を設定/取得します。

属性を操作するときは次の値を使います。

属性
0 標準ファイル
1 読み取り専用ファイル
2 隠しファイル
4 システムファイル
8 ディスクドライブボリュームラベル(取得のみ可能)
16 フォルダまたはディレクトリ(取得のみ可能)
32 アーカイブファイル
64 リンクまたはショートカット(取得のみ可能)
128 圧縮ファイル(取得のみ可能)

属性を設定するときは、設定したい属性を表す値の合計をAttributesプロパティに設定します。たとえば「読み取り専用」と「隠しフォルダ」の属性を設定するときは、Attributes = 1 + 2 または Attributes = 3とします。

取得した属性の種類を判定するときは、返り値の数値と、属性を表す値の論理和をAnd演算子でとります。たとえば「読み取り専用」の「フォルダ」かどうかをは、Attributes And 1 + 2 または Attributes And 3がTrueかどうかを調べます。

Sub test56()
    Dim FSO As Object
    Set FSO = CreateObject("Scripting.FileSystemObject")
    ''C:\Work\Book1.xlsに「読み取り専用」属性が設定されていた場合は解除します
    If FSO.GetFile("C:\Work\Book1.xls").Attributes And 1 Then
        FSO.GetFile("C:\Work\Book1.xls").Attributes = 0
    End If
    Set FSO = Nothing
End Sub