2

在 Excel VBA 中,有没有办法选择特定的锁定单元格,同时让其他单元格“不可选择”?

我有一个受保护的 excel 表。我想让用户能够选择工作表中的特定锁定单元格,同时不允许他们选择同一工作表中的其他锁定单元格。基本上我有一个基于单元格的小型日历,我希望他们能够在这个小范围内选择特定日期(锁定单元格),但是他们不需要选择工作表中的任何其他锁定单元格。Excels 工作表保护似乎只允许工作表范围的“选择锁定单元格”。如果有办法通过 VBA 实现这一点,我很想听听。在这里发帖之前,我确实查看了很多其他帖子。

4

1 回答 1

2

保护工作表时,每个单元格中的行为由Locked属性定义。示例代码:

ActiveSheet.Unprotect
ActiveSheet.Range("A1").Locked = False
ActiveSheet.Range("A2").Locked = True
ActiveSheet.Protect
ActiveSheet.EnableSelection = xlNoRestrictions 'All the cells can be selected 

使用此代码,用户可以编辑cell A1但不能编辑cell A2. 请记住,默认情况下,该Locked属性设置为True.

澄清

保护应用于整个工作表。在单元级别,您所能做的就是依赖Locked属性。你不能得到的是不同(锁定/解锁)范围的不同行为。

于 2013-10-20T14:40:49.537 回答