解除保护膜和保护膜连续2次。

问题描述 投票:3回答:1

我有2张纸:Sheet1和Sheet2。在Sheet2中,我用密码:"abc "锁定它。在Sheet1中,我创建了一个按钮(表单控件),并分配给Marco如下。

Sub Test()
Sheet2.Unprotect "abc"
Sheet2.Protect "abc"
Sheet2.Unprotect "abc"
Sheet2.Protect "abc"
End Sub

当我点击Sheet1中的按钮时,Sheet2被激活了,请解释一下。

excel-vba vba excel
1个回答
0
投票

我认为这是一个小错误。我刚刚测试了它&对我来说,它只发生在配对迭代中。也就是说,如果我迭代三次,我只是得到一个快速的屏幕更新,但我留在Sheet1。HOWEVER,当我去对,它切换到Sheet2。

我建议做以下工作。

Dim WSh As Worksheet
Set WSh = Sheet2

For i = 1 To 6
    Application.ScreenUpdating = False
    WSh.Unprotect "abc"
    WSh.Protect "abc"
Next i

Application.ScreenUpdating = True
© www.soinside.com 2019 - 2024. All rights reserved.