dポイントプレゼントキャンペーン実施中!

エクセルの特定のシートにパスワードをかけています。
他の人に見られないように設定をしているのですが、自分のパソコンから開ける場合は毎回入力するのが面倒です。
たとえば、マクロの登録でパスワードが求められた場合に自動的に入力したり、パスワードの選択ができるプログラムを起動する、という設定は可能なのでしょうか?

A 回答 (1件)

発想を変えて、


ユーザー名や、コンピュータ名を取得して分岐するとか
http://www.moug.net/tech/exvba/0150087.html

ハードウェアのシリアル番号を取得して分岐するとか
http://oshiete.goo.ne.jp/qa/3254650.html

こちらはVBAに変換するには若干書き換えの必要がありますが、その他OSのシリアル番号等諸々を取得して分岐するとか
http://pc.casey.jp/archives/3255

気が済むだけの条件を入れて、間違いなく自分の開発機だというときは
パスワードを訊いてこない様(あるいはブックオープン時にシートの保護を解除して閉じるとき再設定する様に)すれば良いでしょう。

当然Projectに保護をかけておかないと解除条件を他人から見られてしまうので、コードをいじろうと思うとパスワードを入力して保護を解除するのが面倒です...ありゃ?

それでは暗号化ルーチンも組み込んで、指定したハッシュ値で保護解除する様にして、平文にしておきましょうか?
シリアル番号を取得してハッシュ値を算出し、あらかじめ指定したハッシュ値と同じならOKとか。
VBA MD5とか、VBA SHA1とかで検索すると見つかります。前者は既に破られてしまったらしい...

ご参考まで。
    • good
    • 0
この回答へのお礼

詳しいご回答ありがとうございました。
参考にしてチャレンジしてみます。

お礼日時:2014/07/20 07:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!