【VBA】読み取り専用を設定する【エクセルマクロ】

読み取り専用を設定することで不要な改ざんを防いだりすることができます。

今回は、マクロから読み取り専用を設定する方法をご紹介します。

 

方法はとても簡単です。以下をご覧ください。

If ActiveWorkbook.Attributes = 1 Then
  ActiveWorkbook.Attributes = 0
End If

これだけで、読み取り専用を解除しています。

ここでは、if文で読み取り専用かを判断し、読み取り専用ならば標準ファイルに設定しています。

 

Attributesというのは、ファイルの属性を意味します。

0  :標準ファイル
1  :読み取り専用ファイル
2  :隠しファイル
4  :システムファイル
8  :ディスクドライブボリュームファイル
16 :ファルダ/ディレクトリ
32 :アーカイブファイル
64 :リンク/ショートカット
128:圧縮ファイル

ファイルの設定は様々ありますが、設定は簡単です。

Attributeに数値を設定するだけです。

先ほどは読み取り専用を解除しましたが、

Attributeに1を設定するだけで、ファイルを読み取り専用にすることができます。