让我们假设生物学()是一个标准模块中的子:)
Sub TestIt()
If Range("C22").Value = "X" Then
Call Biology
End If
End Sub
要调用生物学(:
Sub Biology()
MsgBox "study biology!"
End Sub
要调用这个只要你想,跑自动如果用户在单元格中键入XC22,请在工作表代码区域中插入以下事件宏:
Private Sub Worksheet_Change(ByVal Target As Range)
Set intrs = Intersect(Target, Range("C22"))
If Not intrs Is Nothing Then
If intrs.Value = "X" Then
Application.EnableEvents = False
Call Biology
Application.EnableEvents = True
End If
End If
End Sub
要调用生物学()自动如果一个公式给出了一个在细胞XC22,插入工作表中的代码区以下事件宏:
Private Sub Worksheet_Calculate()
If Range("C22").Value = "X" Then
Application.EnableEvents = False
Call Biology
Application.EnableEvents = True
End If
End Sub
你不需要发布您的所有代码,但看到相关部分将会很有帮助。请参阅[如何创建最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。 – Jeeped 2015-03-31 21:08:37