Prosím: http://www.uschovna.cz/zasilka/KWKAIPLJT2ZIUM8P-AY R/
Měním buňky A2 a A3, v buňce C2 mám vzorec "=A2&A3", buňku D2 používám jako odkládací pro testování změny v události Calculate.
Makra tam jsou jednoduchá:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
If Cells(2, 3).Value <> Cells(2, 4).Value Then
MsgBox "Worksheet_Calculate"
Cells(2, 4).Value = Cells(2, 3).Value
End If
Application.EnableEvents = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Address = "$C$2" Then
MsgBox "Worksheet_Change"
End If
Application.EnableEvents = True
End Sub
Pokud změním některou z buněk A2, A3, vyvolá se událost Calculate. Ta nejprve zkontroluje, jestli se výsledek vzorce v buňce C2 opravdu změnil a pokud ano, vypíše zprávu a do D2 uloží novou hodnotu.Pokud se postavím na C2 a stisknu F2 a ENTER, vyvolám událost Change, která jen vypíše zprávu.