|
上書き保存にパスワードを設定してみましょう。ここで一つ注意点があります。当然のことですが、Excel でマクロの実行を許可していないPCではこのイベントプロシージャは実行されません。すなわちパスワードなしで普通に上書きされてしまいます。すべての環境でパスワードを要求したいのならば、[名前をつけて保存] → [ツール] → [全般オプション] で [書き込みパスワード] を設定しておく必要があります。この場合は、マクロとは違ってブックを開く前にパスワードを要求されます。 ワークブックモジュール内に以下のプロシージャを記述します。ここではパスワードとして「5963」を指定しています
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
TopLine:
Select Case Application.InputBox("パスワードを入力してください")
Case 5963
Exit Sub
Case False
Cancel = True
Case Else
GoTo TopLine
End Select
End Sub
キャンセル押下で保存を中断、パスワードが違った場合は再度入力を要求します。パスワードを入力している際にその文字列が画面に出るので、これを「*」のような文字にしたければユーザーフォームを作ってテキストボックスを挿入し、その PasswordChar プロパティに「*」を入力しておきます。 |