アプリ版:「スタンプのみでお礼する」機能のリリースについて

マクロを有効にしないとExcelファイルが開けない、もしくはマクロを有効にしないとセーブができない、コピーできないなどという処理はできるのですか? 改ざん防止などで有効活用したいのですが。ちなみに、VBEはパスワードをかけたりはして見えないようにしてます。

A 回答 (1件)

本格的には無理だと考えたほうがよいのではないかと思います。


あまり大した内容ではありません。

それを前提で書かせていただきます。

一般的に聞かれる方法です。

ダミーのシートを1つ用意して、実際の使用するシートは、すべて非表示(VeryHidden)にします。
そして、ブックの保護とシートの保護をしておいたほうがよいです。

>マクロを有効にしないとセーブができない、コピーできないなどという処理はできるのですか?
それは、セーブできない方法は、ブックにパスワードで、開けないようにすればいいと思います。

ThisWorkbook モジュールで、
Private Sub Workbook_Open()

で、マクロで実行、非表示を表示にして、ブックの保護とシートの保護を外します。
シートをEnableSelection プロパティでマウスの範囲選択は出来ないようにします。そうすれば、範囲に対してコピーは出来ません。

終了する時は、
Private Sub Workbook_BeforeClose(Cancel As Boolean)

Open の逆をすればよいです。

また、マクロはマクロもで、完全にマクロを拒否(セキュリティ:最高)していなければ、CA局のあるデジタル署名を入れれば、それなり(高以下)で動くはずです。しかし、そのデジタル署名は、たぶん、最低でも、7万円ぐらい取られるはずです。

決定的なものは知りません。私が考えた方法もあります。ただ、穴はありますが、要するに、管理番号をどこかに入れておきます。渡した人を記録し、コピーしたら、誰が情報を漏らしたか探るという方法を考えました。不特定多数には無理ですが、限定の人に渡すなら管理可能です。他にもあります。ある会社の管理方法ですが、コンピュータ固有番号とソフトの固有番号とを合わせて、実行ソフトと、PCのレジストリに記録して、起動時にそれをチェックさせる方法です。そうすると、仮にデータ側はあっても、レジストリのどこに書き込まれたか、書き込まれた時にレジストリの記録を取らないと発見できません。これでは、ほとんど分かりません。そうすると、認められた人にしか、ソフトは使えないという方法です。(私個人は作ったことはありませんが、そんなに難しくないはずです)

もちろん、Excel等は、開いたブックの本体はデータだけですから、マクロもセキュリティも関係ありませんから、仮に、コピーしなくても、手書きであろうが、複製自体はできてしまいます。

それ以上の問題は、IRMの設定を設けるか、Ver 2007の配布用ブックにするればよいはずです。
MS側のIRMは、発想の転換で、それを閲覧する人を管理することと、期限付きにするということです。
    • good
    • 0

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