保护所有工作表代码:
Sub ProtectAll()Dim sht As WorksheetFor Each sht In Worksheetssht.Protect Password:="123"NextEnd Sub
撤销所有保护代码:
Sub UnProtectAll()Dim sht As WorksheetFor Each sht In Worksheetssht.Unprotect Password:="123"NextEnd Sub
问题来了,当运行保护所有工作表时没有什么问题,但是当撤销工作表时却不需要再输密码了,请各位大神予以修改一下代码,使撤销工作表时弹出密码输入窗口,如果密码输入正确则取消保护所有工作表,如果密码输入错误,则提示“密码错误!”,然后单击“确定”取消。
'撤销所有保护代码:
Sub UnProtectAll()
Dim sht As Worksheet
myNum = Application.InputBox("请输入密码:", "撤销所有保护")
If myNum = "123" Then
For Each sht In Worksheets
sht.Unprotect Password:="123"
Next
Else
MsgBox "密码错误!"
End If
End Sub
你好,我现在就是做了两个窗体来承载上面两个宏,问题是,第一个还可以,第二个就不行了,因为取消保护时不需要输入密码就能取消了,所以您能否帮我修改下代码?
追答呃,你说的应该是模块吧……
在窗体上画一个文字框
然后在画一个按钮
双击按钮
Private Sub CommandButton1_Click()
dim mima as string
Dim sht As Worksheet
mima="123"
if textbox1.text=mima then
For Each sht In Worksheets
sht.Unprotect Password:="123"
Next
else
msgbox "密码错误"
end if
End Sub
或者
Sub UnProtectAll()
Dim sht As Worksheet,mima as string,inmima
mima="123"
inmima= inputbox("密码:")
if inmima=mima then
For Each sht In Worksheets
sht.Unprotect Password:=mima
Next
else
msgbox "密码错误"
end if
End Sub
如果把那个PASSWORD 去掉的话,就要每个工作表都输入一次密码来解锁啦,那么这样的话用宏就没意义了,我想要的效果是,只输入一次密码,就能解开所有工作表的密码~~嘻嘻
追答Sub UnProtectAll()