Vba 工作表\u更改不使用公式和工作表\u计算时出现编译错误

Vba 工作表\u更改不使用公式和工作表\u计算时出现编译错误,vba,excel,Vba,Excel,我试图使图形根据单元格中的特定值(阶段门1-5)改变颜色。这是我的测试代码 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$M$2" Then If Target.Value = "Stage Gate 5" Then Sheet15.ChartObjects(1).Chart.SeriesCollection(2).Points(1).Interior.Color = RGB(167, 3

我试图使图形根据单元格中的特定值(阶段门1-5)改变颜色。这是我的测试代码

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$M$2" Then
 If Target.Value = "Stage Gate 5" Then
 Sheet15.ChartObjects(1).Chart.SeriesCollection(2).Points(1).Interior.Color = RGB(167, 34, 110)
 Else
  MsgBox "error"
  End If
 End If
End Sub
当值刚刚输入到单元格中时,这可以正常工作。但是,如果该值是从公式中导出的,则该值不起作用。我试着把工作表改成工作表计算,但那只会给我带来麻烦

如果有人能帮忙,那就太好了。

试试这个:

Private Sub Worksheet_Calculate()

If Range("M2").Value = "Stage Gate 5" Then
    Sheet15.ChartObjects(1).Chart.SeriesCollection(2).Points(1).Interior.Color = RGB(167, 34, 110)
Else
    MsgBox "error"
End If

End Sub
即使值是从公式中导出的,它也有效