7

在 Excel 工作表中,我想保护一个单元格(A1)不被编辑,另一个单元格(B1)不被格式化。这意味着用户:

  • 无法编辑 A1 的值
  • 可以编辑B1的值
  • 无法更改 B1 的格式

“保护工作表”选项允许保护整个工作表的所有锁定单元格,因此 A1 和 B1 在锁定时将具有相同的保护级别(防止格式化或编辑)。

有没有办法为特定的单元格或范围设置单独的保护,或者至少获得相同的行为?

附加信息:

  • 使用 VBA 的解决方案是可以的(尽管看起来 Worksheet.Protect 方法具有相同的限制......)
  • 单元格 A1(必须阻止编辑)可以防止格式化(没关系)。
  • 它应该适用于 Excel 2003。
4

1 回答 1

2

只要您没有在 vba 中检查或激活允许格式单元格,锁定就不会解决格式问题。因此,您可以简单地解锁 B1,您将无法编辑格式,只允许用户选择启用的锁定和解锁单元格。

Sub protectorate()

    activesheet.Range("B1").Locked = False

    With ActiveSheet
        .Protect
    End With


End Sub

这将防止整个工作表上的格式和值更改,除了 B1 的值,它仍然允许您编辑 B1 的值。

于 2012-11-30T20:20:09.660 回答