Keby si to makro umiestnil do listu, v ktorom chceš orezávať medzery, tak by sa automaticky spúšťalo pri každej úprave bunky v ňom. Všimni si, ako je to makro definované:
Private Sub Worksheet_Change(ByVal Target As Range)
- Private definuje viditeľnosť makra,- Worksheet_Change je špeciálny názov makra, ktoré sa spúšťa automaticky pri zmene na liste,
- Target je parameter, s ktorým sa toto makro automaticky spúšťa.
Ty chceš ale spúšťať makro manuálne, takže okrem toho, že si ho správne umiestnil do modulu, tak:
- Private zmeníš na Public,
- Worksheet_Change zmeníš na nejaký rozumný názov,
- odstrániš parameter Target, takže tam zostanú len prázdne zátvorky,
- v makre nahradíš Target za ActiveSheet.UsedRange.