Релативна референца у Екцел макро средствима у односу на тренутно активне ћелије. Зато будите опрезни са активним избором ћелије — и када снимате релативни референтни макро и када га покренете.
Прво отворите Сампле Филе.клск доступан на мрежи . Затим користите следеће кораке да снимите релативни референтни макро:
На картици Програмер изаберите опцију Користи релативне референце.
Снимање макроа са релативним референцама.
Уверите се да је изабрана ћелија А1.
На картици Девелопер изаберите Рецорд Мацро.
Именујте макро АддТоталРелативе.
Изаберите ову радну свеску за локацију за чување.
Кликните на ОК да започнете снимање.
Изаберите ћелију А16 и упишите Укупно у ћелију.
Изаберите прву празну ћелију у колони Д (Д16) и откуцајте = ЦОУНТА(Д2:Д15).
На картици Програмер кликните на Заустави снимање да бисте зауставили снимање макроа.
У овом тренутку, снимили сте два макроа. Одвојите тренутак да испитате код за ваш новокреирани макро тако што ћете изабрати Макрои на картици Програмер да бисте отворили дијалог Макро. Изаберите макро АддТоталРелативе и кликните на Уреди.
Опет, отвара се Висуал Басиц Едитор и приказује вам код који је написан када сте снимили свој макро. Овај пут ваш код изгледа отприлике овако:
Под АддТоталРелативе()
АцтивеЦелл.Оффсет(15, 0).Ранге("А1").Селецт
АцтивеЦелл.ФормулаР1Ц1 = "Укупно"
АцтивеЦелл.Оффсет(0, 3).Ранге("А1").Селецт
АцтивеЦелл.ФормулаР1Ц1 = "=ЦОУНТА(Р[-14]Ц:Р[-1]Ц)"
Енд Суб
Прво имајте на уму да код не садржи референце на одређене опсеге ћелија (осим почетне тачке, А1). Имајте на уму да у овом макроу Екцел користи својство Оффсет активне ћелије. Ово својство говори курсору да помери одређени број ћелија горе или доле и одређени број ћелија лево или десно.
У овом случају, код својства Оффсет говори Екцел-у да помери 15 редова надоле и 0 колона преко пута активне ћелије (А1). Пошто је макро снимљен коришћењем релативне референце, Екцел неће експлицитно изабрати одређену ћелију као што је то учинио приликом снимања макроа апсолутне референце.
Да бисте видели овај макро у акцији, избришите ред Укупно за обе табеле и урадите следеће:
Изаберите ћелију А1.
На картици Програмер изаберите Макрои.
Пронађите и изаберите макро АддТоталРелативе.
Кликните на дугме Покрени.
Изаберите ћелију Ф1.
На картици Програмер изаберите Макрои.
Пронађите и изаберите макро АддТоталРелативе.
Кликните на дугме Покрени.
Имајте на уму да овај макро, за разлику од вашег претходног, ради на оба скупа података. Пошто макро примењује укупне вредности у односу на тренутно активну ћелију, збројеви се примењују исправно.
Да би овај макро функционисао, једноставно морате то да обезбедите