Excel 2013随机表激活后宏运行

时间:2017-04-03 19:46:07

标签: excel vba excel-vba

我遇到的问题是,自从我的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

知道发生了什么事吗?

0 个答案:

没有答案