|
パスワード候補を入力させたら、その入力値でロック解除を試せばいいのではないですか?
Private Sub CommandButton1_Click()
Dim ret As Variant
With ActiveSheet
If .ProtectContents Then
ret = Application.InputBox("パスワードをどうぞ", Title:="パスワード入力", Type:=2)
If VarType(ret) = vbBoolean Then Exit Sub
On Error GoTo ErrHndl
.Unprotect ret
On Error GoTo 0
ActiveCell.Value = 12
.Protect ret
Else
ActiveCell.Value = 12
End If
End With
Exit Sub
ErrHndl:
MsgBox Err.Description, vbExclamation
End Sub
(注意)
・シート保護は、パスワードロックされている前提です。
・厳密にやるなら、例えばシート保護時のオプション指定がある場合には、
解除前に各々現設定を記憶しておいて、再度保護かける際には、
元の設定と同様に設定してやる必要があるでしょう。
|
|