Na každom spúšťanom hárku si makro musí nájsť poslednú bunku v stĺpci C, tej neprideliť meno ale premennú.
Makro predpokladám, že spúšťaš vždy v príslušnom hárku a nie tlačidlom na prvom hárku. Musel by si mať tlačidlo na každom hárku, aby sa výpočet vykonával v aktívnom liste.
Prípadne urobiť program tak, že si sám bude prepínať hárky od prvého až po posledný, pričom si v každom zistí koncovú bunku a vykoná súčet.
Prepínanie sa môže diať na pozadí, bez toho, aby celá postupnosť úkonov preblikávala na monitore, pokiaľ sa na začiatok makra uvedie príkaz: Application.ScreenUpdating=False
Keďže v takom prípade sa na monitore nedeje žiadna zmena, je vhodné ošetriť kód tak, aby po ukončení poskytol správu prostredníctvom MsgBoxu.
Kód pre vykonanie na aktívnom liste:
PoslednyRiadok = Range("C" & Columns("C:C").Rows.Count).End(xlUp).Row
Range("C" & PoslednyRiadok + 1) = "=SUM(C2:C" & PoslednyRiadok & ")"