Есть ли способ для самоуничтожения книги Excel после того, как пользователь ввел неправильный пароль 3x?
Я знаю, что книга Excel может быть защищена паролем. Есть ли способ настроить книгу Excel на самоуничтожение или блокировку дальнейших попыток после неправильного ввода пароля 3x?
1 ответ
Сначала вы должны установить ссылку в справочной библиотеке Excel, перейдя в:
инструменты -> ссылки -> "Microsoft Visual Basic для приложений расширяемость 5.3"
(пока в меню vba)
Затем вы должны изменить свой код так, чтобы он выглядел примерно так:
Sub DeleteModule()
Dim VBProj As VBIDE.VBProject
Dim VBComp As VBIDE.VBComponent
Dim passwordAttempt As Int
passwordAttempt = 0
Set VBProj = ActiveWorkbook.VBProject
Set VBComp = VBProj.VBComponents("ModuleName")
password = Application.InputBox("Enter Password", "Password Protected")
Select Case password
Case Is = False
'do nothing
Case Is = "easy"
'do something
Case Else
MsgBox "Incorrect Password"
passwordAttempt = passwordAttempt + 1
End Select
if passwordAttempt == 3 Then
VBProj.VBComponents.Remove VBComp
end if
End Sub
Я не знаком с правильным синтаксисом для установки пароля, и я просто использовал это как ссылку.
Если вам нужна ссылка для самостоятельного удаления части, вы можете посмотреть здесь.