我是vba的一个noob(OTJ训练过的“程序员”,如果你可以与这个术语同时使用),但一直在使用Stack Overflow来回答我的许多问题。我有一个有趣的事情发生在打开工作簿时自动启动的宏。我将所有页面设置为有密码,并且只能访问未封锁的单元格。代码似乎没有限制单元格选择到工作簿打开页面以外的任何页面。此外,当它限制单元格选择时,我知道除了在名称框中找到的内容(即单元格没有以任何方式概述)之外,我知道更长的时间具有对当前活动单元格的任何可视指示。如果有人有任何建议,我在下面添加了我的代码。提前感谢你!EnableSelection删除活动单元格纲要
(使用Excel 2010,在32位的Windows-7机)
============================= ====
Sub Auto_Open()
'
' PasswordReset Macro
' Resets the password for all worksheets to "physic$"
'
' Keyboard Shortcut: Ctrl+Shift+L
'
Dim wsh As Worksheet
For Each wsh In Worksheets(Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", "Baselines"))
'wsh.Unprotect Password:="physic$"
wsh.Protect Password:="physic$", UserInterfaceOnly:=True, DrawingObjects:=True, Contents:=True, Scenarios:=True
wsh.EnableOutlining = True
wsh.EnableSelection = xlUnlockedCells
Next wsh
End Sub
您是否有任何**所有**单元格被锁定的表单?单步执行代码,我发现我可以在不包含未锁定单元的工作表受到保护的位置复制行为。即如果除了“May”之外,所有工作表都有一些单元格已解锁,则表单“May”上的单元格轮廓会在May表被设置为受保护时消失。 – YowE3K
我还发现只需更改为另一个应用程序并切换回Excel即可解决问题。甚至在工作表之间切换可以修复它。 – YowE3K