取消保护纸张和保护纸张2次

时间:2017-12-03 18:19:09

标签: excel-vba vba excel

我有2张:Sheet1和Sheet2。使用表2,我用密码锁定它:" abc"。在Sheet1中,我创建了一个Button(Form Control),在下面分配了marco:

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

当我单击Sheet1中的Button时,Sheet2被激活。请解释一下。

1 个答案:

答案 0 :(得分:0)

我认为这是一个小错误。我刚刚测试了它,对我而言,它仅在成对迭代中发生。就是说,如果我迭代3次,我只会得到快速的屏幕更新,但仍停留在Sheet1中。但是,当我配对时,它会切换到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