You can't call a macro from a cell with something like
=if(a1>1,domymacro)
But you can trap event such as double clicking on a sheet using:-
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target
As Range, Cancel As Boolean)
msg = "You double clicked"
MsgBox (msg)
End Sub
You could also use the sheet change event to detect the change of a
particular cell and call a macro
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
If Target.Value > "" Then
msg = "You changed A1"
MsgBox (msg)
End If
End If
End Sub
Mike