Dejme tomu, že určitá buňka je buňka A1 na prvním listu. A hodnoty 1, 2 budeš do buňky vkládat (zapisovat) ručně.podminkou je hodnota v urcite bunce v sesitu
Toto vložíš do modulu listu1
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
Select Case Range("A1")
Case 1
Call makro1
Case 2
Call makro2
End Select
End If
End Sub
Pokud bude hodnota buňky A1 výsledkem nějaké funkce listu např. KDYŽ, tak použiješ toto makro (nalezeno na netu).Private Sub Worksheet_Change(ByVal Target As Range)
Dim hlidana_bunka As Range
Set hlidana_bunka = Range(Target.Dependents.Address)
If Not Intersect(hlidana_bunka, Range("A1")) Is Nothing Then
Select Case Range("A1")
Case 1
Call makro1
Case 2
Call makro2
End Select
End If
End Sub
Nějak zvlášť sem to netestoval, ale mělo by to splnit tvůj požadavek.