В настоящее время я работаю над таблицей Excel с поддержкой макросов, с несколькими вкладками (есть 9 вкладок, на которых я хотел бы сделать это, но для целей вопроса я включу только 2), и для каждой вкладкиЯ хотел бы добавить запрос пароля, который соответствует тому, что я указал в коде.
Это работает нормально, но моя проблема в том, что, когда два листа расположены рядом друг с другом на вкладке реальных таблиц, это будетПройдите их оба, а не прятайте первый, пока я не введу правильный пароль.
Например, на моем листе есть вкладка с именем Cascada, за которой следует вкладка с именем Cascada2.Если бы я поместил пустую вкладку между этими двумя, то мой код работал бы правильно.Однако, когда они расположены в определенной последовательности, кажется, что они проходят последовательность запросов пароля независимо от того, введу ли я правильную строку или нет.
См. Код ниже, любой совет будет принят.
Спасибо.
РЕДАКТИРОВАТЬ ОБНОВЛЕНО С ОТВЕТОМ
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Application.EnableEvents = False
Dim cascada As String, cascada2 As String
cascada = "Config_Cascada"
Rhea = "Config_Rhea"
Select Case Sh.Name
Case cascada, cascada2
Dim pwd As String
pwd = "cascada" & IIf(Sh.Name = cascada2, 2, "")
Dim Response As String
Response = InputBox("Enter password to view sheet")
If Response = pwd Then
Sh.Select
Else
Worksheets("Doors").Activate
End If
End Select
Select Case Sh.Name
Case Rhea
Dim pwdRhea As String
pwdRhea = "rhea"
Dim ResponseRhea As String
ResponseRhea = InputBox("Enter password to view sheet")
If Response = pwdRhea Then
Sh.Select
Else
Worksheets("Doors").Activate
End If
End Select
Application.EnableEvents = True
End Sub