Вы можете вызывать макрос при изменении содержимого ячейки. Откройте Excel редактор Visual Basic и добавьте что-то вроде этого на лист, где вы хотите, чтобы макрос запускался автоматически:
Private Sub Worksheet_Change(ByVal Target As Range)
' Column 1 is the A column
If Target.Column = 1 And Target.Row = 2 Then
If Target.Value > 0 Then
' call macro here
MyMacroName
End If
End If
End Sub