En relativ referanse i en Excel-makro betyr i forhold til den aktive cellen. Så vær forsiktig med ditt aktive cellevalg - både når du registrerer den relative referansemakroen og når du kjører den.
Først åpner du Sample File.xlsx tilgjengelig online . Deretter bruker du følgende trinn for å registrere en relativ referansemakro:
På Utvikler-fanen velger du alternativet Bruk relative referanser.
Ta opp en makro med relative referanser.
Sørg for at celle A1 er valgt.
På Utvikler-fanen velger du Spill inn makro.
Gi makroen et navn AddTotalRelative.
Velg denne arbeidsboken for lagringsstedet.
Klikk OK for å starte opptaket.
Velg celle A16 og skriv inn Total i cellen.
Velg den første tomme cellen i kolonne D (D16) og skriv inn = COUNTA(D2:D15).
På Utvikler-fanen klikker du Stopp opptak for å stoppe opptak av makroen.
På dette tidspunktet har du spilt inn to makroer. Ta deg tid til å undersøke koden for den nyopprettede makroen ved å velge Makroer på Utvikler-fanen for å åpne Makro-dialogboksen. Velg AddTotalRelative-makroen og klikk Rediger.
Igjen åpner Visual Basic Editor og viser deg koden som ble skrevet da du spilte inn makroen. Denne gangen ser koden din omtrent slik ut:
Sub AddTotalRelative()
ActiveCell.Offset(15, 0). Range("A1").Velg
ActiveCell.FormulaR1C1 = "Totalt"
ActiveCell.Offset(0, 3).Range("A1").Velg
ActiveCell.FormulaR1C1 = "=COUNTA(R[-14]C:R[-1]C)"
End Sub
Vær først oppmerksom på at koden ikke inneholder referanser til spesifikke celleområder (annet enn startpunktet, A1). Merk at i denne makroen bruker Excel egenskapen Offset for den aktive cellen. Denne egenskapen forteller markøren å flytte et visst antall celler opp eller ned og et visst antall celler til venstre eller høyre.
I dette tilfellet forteller egenskapskoden for forskyvning til Excel om å flytte 15 rader ned og 0 kolonner på tvers av den aktive cellen (A1). Fordi makroen ble registrert ved hjelp av relativ referanse, vil ikke Excel eksplisitt velge en bestemt celle slik den gjorde ved registrering av en absolutt referansemakro.
For å se denne makroen i aksjon, slett Total-raden for begge tabellene og gjør følgende:
Velg celle A1.
På Utvikler-fanen velger du Makroer.
Finn og velg AddTotalRelative-makroen.
Klikk på Kjør-knappen.
Velg celle F1.
På Utvikler-fanen velger du Makroer.
Finn og velg AddTotalRelative-makroen.
Klikk på Kjør-knappen.
Merk at denne makroen, i motsetning til den forrige makroen, fungerer på begge settene med data. Fordi makroen bruker totalsummene i forhold til den aktive cellen, blir totalsummene brukt riktig.
For at denne makroen skal fungere, må du bare sørge for det