マクロVBA パスワード設定・解除ツール
1.はじめに
他社も交えてのプロジェクトなど、ファイル共有サービスなどを利用する場合、基本的にドキュメントにはパスワードを設定すると思います。
1ファイルならともかく、複数ファイルがある場合に1ファイルごとにパスワードを設定するのは非常に面倒ですよね・・・。
まさに、最近60ファイル近くエクセルを、ファイル共有サービスにアップしたり、反対に他社が作成したファイルのパスワードを解除して、社内フォルダに配置したり・・・
パスワード設定・解除の時間が著しく無駄であるため、必要そうな処理をググってミックスしながら、マクロVBAを作成しました。
同様のお悩みを抱えている方の参考になればと思います。
2.処理の流れ
運用も含めた処理の流れとしては、ざっと以下の通りです。
(1) パスワード設定
(2)パスワード解除
なぜ、設定済フォルダや解除済フォルダを用意してそこに格納するかというと、パスワード設定・解除の場合も、上書き保存をすることとなります。
マクロVBAは手動で行うことを、自動化するだけなので上書き保存するかのメッセージ表示がされ、OKボタンを押す必要が生じます。
60回OKボタンを押すのは、非効率なので別フォルダに新規ファイルとして保存するようにしています。
上書き保存しますかメッセージを表示させない方法もあるのですが、試したところ、処理自体もスキップされてしまいました。
そのため、別フォルダに設定済あるいは解除済のファイルを格納する方式としています。
3.必要となるマクロVBA処理
上記の流れから、必要となる自動処理としては以下です。
(1)フォルダ作成処理
マクロVBAファイルとパスワード設定対象ファイル(もしくはパスワード解除対象ファイル)が格納されているフォルダ内に、処理済のファイルを格納するフォルダを作成する処理が必要です。
また、そもそも処理がどこのフォルダで行われているか。フォルダパスを取得する処理も必要です。
(2)パスワード設定・解除処理
任意のパスワードを設定する処理です。パスワードを固定値にすると簡単ですが、それだとパスワードをかける意味があまり無い気もするので、任意のパスワードを設定できるようにします。
なお、解除も設定も処理としてはほぼ一緒です。
複数ファイルである場合、フォルダ内のファイルをループ処理で順番に処理していくことも必要です。
4.参考となるサイト
参考にさせていただいたのは、以下サイトです。
多少、心得がある方なら以下材料を組み合わせて、3.の処理を実装してみてください。
本当にこんな情報がネットを検索するだけで参照できるなんて、便利な世の中です。
・現在のフォルダパスを取得
・フォルダ作成
・フォルダ内のファイルに対してループ処理を行う
・パスワード設定・解除
5.コード全文
以下は、参考までに私が作成してみたものです。
答え合わせや、兎に角至急使いたいのでコピペで済ませたいという方はどうぞ!!
(1)パスワード設定
ここから先は
¥ 300
Amazonギフトカード5,000円分が当たる
この記事が気に入ったらチップで応援してみませんか?