我最近制作了一个 MCQ 测试模块,它将帮助您使用题库中的随机问题准备试卷并进行测试并计算分数。
所有这些都已编码并完成。由于这是 MCQ 测试宏,因此有一个名为“Admin CP”的工作表,它将完成大部分工作,例如生成问题、设置计时器、设置通过百分比等。该工作表将使用另一个简单的宏 xlveryhidden 隐藏。为了取消隐藏此工作表,我想设置一些用户在 Admin CP 中输入密码,然后隐藏工作表的功能。
如果管理员想要再次访问此表,他必须输入密码,该密码将与之前设置的密码进行验证。
下面是我编写的代码的屏幕截图。 “IF、Else、Then 和 =”似乎不起作用。它要么抛出密码不正确的警告消息,要么即使密码不正确也会取消隐藏工作表。
非常感谢任何帮助。预先感谢。
兄弟,你还没有给inpu2赋值;所以如果你想比较输入1和输入2。您应该将先前存储的值分配给 inpu2。只有这样你才应该将它们两者进行比较。您只需两个简单的步骤即可完成此操作。
第1步:创建一个新的隐藏表来存储通行证
第2步:从该表中检索通行证进行检查
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
我相信您可以调整代码来满足您的需求。
请帮忙修改以下内容。我的要求:当我运行宏“解锁”时,它会要求输入密码[这适用于以下内容]。输入正确的密码后,隐藏的工作表应取消隐藏并对用户可见。我是VBA新手 选项比较文本
子passToLock() Dim newSheetObj 作为工作表,inpu2 作为字符串 设置 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
结束子
子解锁2()
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
结束子 [感谢 Mukibul H 提供此代码]