Есть ли способ для самоуничтожения книги 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

Я не знаком с правильным синтаксисом для установки пароля, и я просто использовал это как ссылку.

Если вам нужна ссылка для самостоятельного удаления части, вы можете посмотреть здесь.

Другие вопросы по тегам