VBA Editor spustíš cez Tools / Macro / Visual Basic Editor (Alt+F11). Po dvojitom kliknutí na meno listu zošita Excel, v ktorom chceš mať makro, môžeš začať písať samotný program. Obslužné makro pre nejakú udalosť vytvoríš buď výberom z dvoch komboboxov, ktoré sú nad miestom pre kód makra (napr. v prvom vyberieš Worksheet, v druhom Change) alebo priamo zapíšeš (Private Sub Worksheet_Change(ByVal Target As Range)).
V argumente Target je rozsah buniek, v ktorých nastala zmena. Stačí skontrolovať, či sa medzi nimi nachádza niektorá z buniek, po zmene ktorej chceš prepočítať nejaké hodnoty, a potom už len výsledok zapísať do zošita. Treba myslieť aj na to, aby sa funkcia nevolala zbytočne (alebo donekonečna) pri zmene bunky samotným makrom.
Napríklad jednoduché makro, ktoré po zmene bunky doplní o riadok nižšie hodnotu zväčšenú o jednotku, by mohlo vyzerať takto:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ErrorHandler
Application.EnableEvents = False
Target.Offset(1, 0) = Target.Value + 1
ErrorHandler:
Application.EnableEvents = True
End Sub