Excel Quirk - 制表符在保护其他工作表时停止工作

时间:2015-08-14 12:56:10

标签: excel vba excel-vba

我只是遇到了一个怪癖,并且不知道为什么会发生这种情况 - 我使用Excel 2010并且遇到以下情况:

  1. 我有两张纸 - 一张"输入"表和"保存"片
  2. 保存表格受保护;输入表不是
  3. 我有一个VBA宏,可以取消保护保存页,在2之间复制数据,然后重新保护它
  4. 当此宏运行时,输入表(从未受到保护)现在使Tab键不起作用(不能在单元格之间切换)。
  5. 为了轻松复制这种情况,我创建了一个新的空白工作簿并执行了以下操作:

    1. 密码保护Sheet2,密码为"测试"
    2. 输入以下简单的VBA子目录:

      Sub WeirdQuirk()
          Sheets("Sheet2").Unprotect Password:="Test"
          Sheets("Sheet1").Range("A1").Copy Sheets("Sheet2").Range("B1")
          Sheets("Sheet2").Protect Password:="Test"
      End Sub
      
    3. 当我在Sheet1并运行时,之后 Tab 键不再在工作表中工作。

      有关为何发生这种情况的原因/如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

仅供参考,我确实想出了一个解决办法,但这不是应该做的事情 - 希望其他人有更好的解决方案我会接受,但我确实希望发布这个以防万一其他人陷入这种情况...

我最终用来重新启用tab键的是添加代码行:

Application.TransitionNavigKeys = False

OR:

Application.TransitionNavigKeys = True

如果您希望启用该功能。

希望它可以帮助其他人。