Video: CS50 Lecture by Steve Ballmer 2024
A relativ referanse i en Excel-makro betyr forholdet 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, åpne prøvefil. xlsx tilgjengelig online. Deretter bruker du følgende trinn for å ta opp en relativ referansemakro:
-
På Utvikler-fanen velger du alternativet Bruk relative referanser.
-
Kontroller at celle A1 er valgt.
-
I kategorien Utvikler velger du Record Macro.
-
Navngi makroen AddTotalRelative.
-
Velg denne arbeidsboken for lagreplasseringen.
-
Klikk på OK for å starte opptaket.
-
Velg celle A16 og skriv Totalt i cellen.
-
Velg den første tomme cellen i kolonne D (D16) og skriv = COUNTA (D2: D15).
-
På Utvikler-fanen klikker du Stopp innspilling for å stoppe opptak av makroen.
På dette tidspunktet har du spilt inn to makroer. Ta et øyeblikk for å undersøke koden for den nylig opprettede 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 registrerte makroen din. Denne gangen ser koden ut som følgende:
Sub AddTotalRelative () ActiveCell. Offset (15, 0). Range ("A1"). Velg ActiveCell. FormulaR1C1 = "Total" ActiveCell. Offset (0, 3). Range ("A1"). Velg ActiveCell. FormulaR1C1 = "= COUNTA (R [-14] C: R [-1] C)" End Sub
Første merk at koden ikke inneholder referanser til bestemte celleområder (annet enn utgangspunktet, A1). Merk at i denne makroen bruker Excel Offset-egenskapen til den aktive cellen. Denne egenskapen forteller markøren for å flytte et bestemt antall celler opp eller ned og et bestemt antall celler til venstre eller høyre.
I dette tilfellet forteller Offset-egenskapskoden Excel for å flytte 15 rader ned og 0 kolonner over fra den aktive cellen (A1). Fordi makroen ble registrert ved hjelp av relativ referanse, vil Excel ikke eksplisitt velge en bestemt celle som den gjorde ved opptak av en absolutt referansemakro.
Hvis du vil se denne makroen i handling, sletter du totalraden for begge tabellene og gjør følgende:
-
Velg celle A1.
-
Velg Makroer på Utvikler-fanen.
-
Finn og velg AddTotalRelative makroen.
-
Klikk på Kjør-knappen.
-
Velg celle F1.
-
Velg Makroer på Utvikler-fanen.
-
Finn og velg AddTotalRelative makroen.
-
Klikk på Kjør-knappen.
Merk at denne makroen, i motsetning til den tidligere makroen, fungerer på begge settene med data.Fordi makroen bruker totalene i forhold til den nåværende aktive cellen, blir totalene brukt riktig.
For at denne makroen skal fungere, trenger du bare å sikre at
-
Du har valgt riktig startcelle før du kjører makroen.
-
Blokken av data har samme antall rader og kolonner som dataene du registrerte makroen på.