【问题标题】:VBA - Protection and Worksheet_calculateVBA - 保护和 Worksheet_calculate
【发布时间】:2021-01-26 12:45:14
【问题描述】:

我正在尝试根据通过应用于它的公式获得的值来更改单元格的颜色。我还想保持工作表受保护。我有一些未锁定的单元格,我用它们来放置手动值,从而改变“Q13”单元格的颜色

这就是我的代码的样子,我是 VBA 的新手,我在这里做错了什么?

Private Sub Workbook_Open()
ActiveSheet.Protect Password = "coi2020", UserInterfaceOnly = True
End Sub

Private Sub Worksheet_calculate()

If ActiveSheet.Range("Q13") < 0 Then
        MsgBox "Caution, Budget out of limit"
        ActiveSheet.Range("Q13").Interior.Color = RGB(255, 0, 0)
    End If
If ActiveSheet.Range("Q13") >= 0 Then
        ActiveSheet.Range("Q13").Interior.Color = RGB(0, 255, 0)
        End If
End Sub

【问题讨论】:

    标签: excel vba excel-formula worksheet-function protected


    【解决方案1】:

    Q13 上的条件格式将是一个简单的解决方案,不需要 vba 代码。

    如果您更喜欢宏,请在格式化之前添加一个 ActiveSheet.Unprotect ... 行,然后使用 Activesheet.Protect 再次保护...您可以在 if ... then 语句中使用“else”,您的代码可以更简单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-25
      • 1970-01-01
      • 2019-08-10
      • 2014-04-16
      • 1970-01-01
      相关资源
      最近更新 更多