Programmas Excel noklusējuma ierakstīšanas režīms ir absolūta atsauce. Ja formulas šūnas atsauce ir absolūta atsauce , tā netiek automātiski pielāgota, kad formula tiek ielīmēta jaunā vietā.
Labākais veids, kā saprast, kā šis jēdziens attiecas uz makro, ir to izmēģināt. Ierakstiet makro, kas saskaita darblapas rindas. (Piemēru skatiet attēlā.)
Jūsu iepriekš norādītā darblapa, kurā ir divas tabulas.
Šeit izmantoto datu kopas paraugu varat atrast tiešsaistē .
Lai ierakstītu makro, veiciet šīs darbības:
Pārliecinieties, vai ir atlasīta šūna A1.
Cilnē Izstrādātājs atlasiet Ierakstīt makro.
Nosauciet makro AddTotal.
Saglabāšanas vietai izvēlieties šo darbgrāmatu.
Noklikšķiniet uz Labi, lai sāktu ierakstīšanu.
Šajā brīdī programma Excel reģistrē jūsu darbības.
Kamēr programma Excel ieraksta, atlasiet šūnu A16 un šūnā ierakstiet Kopā.
Atlasiet pirmo tukšo šūnu kolonnā D (D16) un ierakstiet = COUNTA(D2:D15).
Šī formula parāda filiāļu numuru skaitu kolonnas D apakšā. Jūs izmantojat funkciju COUNTA, jo filiāļu numuri tiek saglabāti kā teksts.
Lai apturētu makro ierakstīšanu, cilnē Izstrādātājs noklikšķiniet uz Apturēt ierakstīšanu.
Jūsu pēcsummētā darblapa.
Formatētajai darblapai vajadzētu izskatīties līdzīgi šeit parādītajai.
Lai redzētu savu makro darbību, izdzēsiet tikko pievienoto rindu Kopā un atskaņojiet makro, veicot tālāk norādītās darbības.
Cilnē Izstrādātājs atlasiet Makro.
Atrodiet un atlasiet tikko ierakstīto makro AddTotal.
Noklikšķiniet uz pogas Palaist.
Ja viss iet labi, makro atskaņo jūsu darbības uz T un parāda jūsu tabulas kopējo summu. Tagad šeit ir lieta. Neatkarīgi no tā, cik smagi jūs mēģināt, jūs nevarat panākt, lai AddTotal makro darbotos otrajā tabulā. Kāpēc? Jo jūs to ierakstījāt kā absolūtu makro.
Lai saprastu, ko tas nozīmē, pārbaudiet pamatā esošo kodu, cilnē Izstrādātājs atlasot Makro. Parādās dialoglodziņš Makro.
Excel makro dialoglodziņš.
Atlasiet makro AddTotal un noklikšķiniet uz pogas Rediģēt. Tiek atvērts Visual Basic redaktors un parādīts kods, kas tika uzrakstīts, ierakstot makro:
Sub AddTotal()
Diapazons("A16").Atlasiet
ActiveCell.FormulaR1C1 = "Kopā"
Diapazons("D16").Atlasiet
ActiveCell.FormulaR1C1 = "=SKAITS(R[-14]C:R[-1]C)"
Beigt apakš
Pievērsiet īpašu uzmanību divām koda rindām, kas atlasa diapazonu A16 un diapazonu D16. Tā kā makro tika ierakstīts absolūtās atsauces režīmā, programma Excel interpretēja jūsu diapazona atlasi kā absolūtas šūnu atsauces. Citiem vārdiem sakot, neatkarīgi no tā, kur darbgrāmatā atrodas kursors, palaižot ierakstīto makro, programma Excel atlasīs šūnu A16 un pēc tam šūnu D16. Nākamajā sadaļā apskatīsit, kā izskatās tas pats makro, ja tas ir ierakstīts relatīvās atsauces režīmā.