セキュリティの話題の中で、これまではどちらかというと「マクロウィルス」からの感染防止の話題でしたが、今度は悪意ある操作からのワークブックの保護の話になります。
シート、ブックのパスワード保護
「基本操作」で、シートやワークブックの保護について説明しています。計算式や項目見出し等入力用でないセルをロックした状態で、シートを保護すると、誤って計算式や項目見出しを壊してしまうことを防ぐことができます。
ワークブック自体を保護すると、シートの見出しの名前を変更したり、シートの追加を行なうなどもできなくなります。

ワークシート、ワークブックの保護操作は、マクロからも「Protect」「Unprotect」メソッドでパスワードを引数として操作できます。パスワードを忘れた場合に「マクロで調べる」などの術は事実上ありません。
VBAプロジェクトのパスワード保護
今度は、作成したマクロの保護です。保護を掛けるとVBエディタでプロジェクトを開こうとすると、ワークシート等と同様にパスワードの要求がきます。
VBプロジェクトのパスワード要求

パスワードの設定は、VBプロジェクトの「プロパティ」から「保護」のタブを開き、「プロジェクトを表示用にロックする」にチェックを付け、「パスワード」を登録します。
VBプロジェクトの保護
保護した当座は、ロックされていませんが、そのワークブックを保存して閉じ、再度開いてVBプロジェクトを開こうとすると、上記のパスワード要求となります。

VBプロジェクトのロック、パスワードを指定してのロック解除は、マクロ上から行なうことができません。当然、パスワードを忘れてしまったら、万事窮すです。
→ネットセキュリティと同様で、これらの保護は完璧ではありません。
パスワード保護を掛けたワークブックの重要性はケースによってさまざまですが、本当に悪意を持ってパスワードを解除しようする行為が一方にあるとして、100%防御できる保証はありません。
どこかにメモした「パスワード」を探し出して盗むかも知れませんし、当てずっぽうに「パスワード」を入力したり、「パスワード」文字列の組み合わせを「A」から順番に発生させ、「パスワード」の項目に解除できるまで叩きつけるプログラムを作成して実行するかも知れません。