使用输入框设置密码 hide/unhide excel sheet
Setting up password using inputbox to hide/unhide excel sheet
我最近制作了一个MCQ测试模块,可以帮助用题库中的随机问题准备试卷,并进行测试和计算分数。
全部编码完成。由于这是 MCQ 测试宏,因此有一个名为“Admin CP”的 sheet 将完成大部分工作,如生成问题、设置计时器、设置通过百分比等。此 sheet 将被隐藏使用另一个简单的宏 xlveryhidden。为了取消隐藏这个 sheet,我想设置一些东西,让用户在 Admin CP 中输入密码,然后隐藏作品 sheets。
如果管理员想再次访问此 sheet,他将必须输入密码,该密码将使用之前设置的密码进行验证。
下面是我编写的代码的屏幕截图。 “IF、Else、Then 和=”似乎不起作用。它要么抛出密码不正确的警告消息,要么取消隐藏 sheets,即使密码不正确也是如此。
非常感谢任何帮助。提前致谢。
兄弟,你还没有给inpu2赋值;所以如果你想比较 inpu1 和 inpu2。您应该将先前存储的值分配给 inpu2。只有这样你才应该比较它们。您可以通过两个简单的步骤完成此操作。
第 1 步:创建一个新的隐藏 sheet 来存储通行证
第 2 步:从 sheet 检索通行证以检查
Option Compare Text
Sub passToLock()
Dim newSheetObj As Worksheet, inpu2 As String
Set newSheetObj = Worksheets.Add
newSheetObj.Name = "hiddenPass" ' to refer to later on
newSheetObj.Visible = xlSheetVeryHidden ' to make the sheet hidden
inpu2 = Application.InputBox("Enter The Password") ' to get initial password
newSheetObj.Range("A1").Value = inpu2 ' to store the password in hidden sheet
Set newSheetObj = Nothing
End Sub
Sub Unlock2()
Dim inpu1 As String, inpu2 As String
inpu2 = Sheets("hiddenPass").Range("A1").Value
inpu1 = Application.InputBox("Enter The Password")
If inpu1 = inpu2 Then Worksheets("Admin CP").Visible = xlSheetVisible
End Sub
我相信您可以调整代码以满足您的需求。
我最近制作了一个MCQ测试模块,可以帮助用题库中的随机问题准备试卷,并进行测试和计算分数。
全部编码完成。由于这是 MCQ 测试宏,因此有一个名为“Admin CP”的 sheet 将完成大部分工作,如生成问题、设置计时器、设置通过百分比等。此 sheet 将被隐藏使用另一个简单的宏 xlveryhidden。为了取消隐藏这个 sheet,我想设置一些东西,让用户在 Admin CP 中输入密码,然后隐藏作品 sheets。
如果管理员想再次访问此 sheet,他将必须输入密码,该密码将使用之前设置的密码进行验证。
下面是我编写的代码的屏幕截图。 “IF、Else、Then 和=”似乎不起作用。它要么抛出密码不正确的警告消息,要么取消隐藏 sheets,即使密码不正确也是如此。
非常感谢任何帮助。提前致谢。
兄弟,你还没有给inpu2赋值;所以如果你想比较 inpu1 和 inpu2。您应该将先前存储的值分配给 inpu2。只有这样你才应该比较它们。您可以通过两个简单的步骤完成此操作。
第 1 步:创建一个新的隐藏 sheet 来存储通行证
第 2 步:从 sheet 检索通行证以检查
Option Compare Text
Sub passToLock()
Dim newSheetObj As Worksheet, inpu2 As String
Set newSheetObj = Worksheets.Add
newSheetObj.Name = "hiddenPass" ' to refer to later on
newSheetObj.Visible = xlSheetVeryHidden ' to make the sheet hidden
inpu2 = Application.InputBox("Enter The Password") ' to get initial password
newSheetObj.Range("A1").Value = inpu2 ' to store the password in hidden sheet
Set newSheetObj = Nothing
End Sub
Sub Unlock2()
Dim inpu1 As String, inpu2 As String
inpu2 = Sheets("hiddenPass").Range("A1").Value
inpu1 = Application.InputBox("Enter The Password")
If inpu1 = inpu2 Then Worksheets("Admin CP").Visible = xlSheetVisible
End Sub
我相信您可以调整代码以满足您的需求。