我遇到的问题是,自从我的Office套件更新到2013年以来,我在以前的版本中运行的代码没有问题。但是,现在在2013年,(相同)宏始终激活书籍运行中的最后一页。本书的结构是控制表(从中调用按钮和宏),其他表,...,最终表。单击控制表上的任何按钮后,它总是会导致我在最终工作表上处于活动状态。这对于Excel 2013来说是完全独特的。
在所有这些程序中,有一个保护模型(对于wb.sheets中的每个工作表,保护/解除保护),所以在这个循环中它可能会在最后一个工作表上出现故障?
该代码的语法是:
Public Sub sbProtection(ByVal sType As String)
Dim wb As Workbook
Dim ws As Worksheet
'Setup
Set wb = ThisWorkbook
'Toggle
If UCase(sType) = "PROTECT" Then
For Each ws In wb.Sheets
ws.Protect sPassword
Next ws
ElseIf UCase(sType) = "UNPROTECT" Then
For Each ws In wb.Sheets
ws.Unprotect sPassword
Next ws
End If
'Cleanup
Set wb = Nothing
Set ws = Nothing
End Sub
知道发生了什么事吗?