微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VBA-保护和Worksheet_calculate

如何解决VBA-保护和Worksheet_calculate

我正在尝试根据单元格的颜色通过应用它的公式来更改其颜色。我也想保持工作表的保护。我有一些未锁定的单元格,这些单元格用于放置手动值,因此随后更改了“ 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)
    End If
If ActiveSheet.Range("Q13") >= 0 Then
        ActiveSheet.Range("Q13").Interior.Color = RGB(0,255,0)
        End If
End Sub

解决方法

第13季度的有条件格式将是一个简单的解决方案,不需要vba代码。

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。