Når du tar opp dine handlinger, Excel registrerer normalt absolutte referanser til celler. (Dette er standardopptaksmodus.) Men ganske ofte, dette er galt
opptaksmodus. Hvis du bruker absolutt opptaksmodus, registrerer Excel faktiske cellereferanser. Hvis du bruker relative opptak, Excel poster relative
referanser til celler. Hold lesing for å se forskjellen.
Opptak i absolutt modus
Følg disse trinnene for å spille inn en enkel makro i absolutt modus. Denne makroen bare går tre månedsnavn i et regneark: De samme handlingene skje uansett hvilken celle er aktiv når du kjører makroen. En makro registrert ved hjelp absolutte referanser produserer alltid de samme resultatene når den utføres. I dette tilfellet, makro alltid kommer inn navnene på de tre første månedene i området B1:. D1 på det aktive regnearket I noen tilfeller vil du innspilte makro til å arbeide med celle steder i et forhold Du kan endre måten som Excel registrerer dine handlinger ved å klikke på Bruk Relative referanser knappen i Kode-gruppen i kategorien Utvikler. Denne knappen er en veksleknapp. Når knappen vises uthevet i en annen farge, er opptaksmodus slektning. Når knappen vises normalt, er du opptak i absolutt modus. For å se hvordan relativ opptaksmodus fungerer, slette innholdet rekkevidde B1: D1 og deretter utføre følgende trinn: Legg merke til at denne fremgangsmåten er litt forskjellig fra det forrige eksempelet. I dette eksempelet, aktiverer du begynnelsen celle før Denne makroen alltid begynner å skrive inn tekst i den aktive cellen. Prøv det. Flytt cellepekeren til en celle, og deretter kjøre Relativ makro. Navnene måneden er alltid angitt som begynner på den aktive cellen Med opptaksmodus satt til slektning, er koden som Excel genererer ganske forskjellig fra koden genereres i absolutt modus. For å teste denne makroen, aktivere en celle unntatt B1. Navnene måned føres i tre celler, som begynner med den cellen du aktivert.
Kontroller at Developer → Kode → Bruk Relative referanser knappen er ikke anbefale markert og velg deretter Developer → Kode → Registrer makro.
Flytt til celle C1, og skriv februar
Flytt til celle D1, og skriv mars
Klikk celle B1 for å aktivere den igjen.
Stopp makro opptaker.
Trykk Alt + F11 for å aktivere VBE
Excel genererer følgende kode:..
Sub Absolute () '' Absolutt Macro 'Range ("B1") Velg ActiveCell.FormulaR1C1 = "Jan" Range ("C1") Velg ActiveCell .. .FormulaR1C1 = "februar" Range ("D1") Velg ActiveCell.FormulaR1C1 = "Mar" Range ("B1") SelectEnd SubWhen henrettet, velger denne makroen celle B1 og setter de tre månedsnavn i området B1: D1. Deretter makro reaktiverer celle B1.
Opptak i relativ modus
måte. Det kan være lurt makro å begynne å skrive navnene måneden i den aktive cellen. I et slikt tilfelle, må du bruke relative opptaket.
Du kan endre opptaksmetode når som helst, selv midt i opptaket.
Aktiver celle B1
Velg Developer →. Kode → Registrer makro.
Når du klikker på denne knappen, endres den til en annen farge enn resten av båndet.
Skriv inn Jan i celle B1.
Flytt til celle C1, og skriv februar
Flytt til celle D1, og skriv mars
Velg celle B1.
Stopp makro opptaker.
du starter opptaket. Dette er et viktig skritt når du spiller inn makroer som bruker den aktive cellen som base.
Sub Relativ () ' "Relativ Macro 'ActiveCell.FormulaR1C1 =" Jan "ActiveCell.Offset (0, 1) .Range (" A1 "). Velg ActiveCell.FormulaR1C1 =" februar "ActiveCell.Offset (0, 1) .Range (" A1 ") .Velg ActiveCell.FormulaR1C1 = "Mar" ActiveCell.Offset (0, -2) .Range ("A1"). SelectEnd Sub
Merke til at koden generert av makro opptaker refererer til celle A1. Dette kan virke rart, fordi du aldri brukt celle A1 under innspillingen av makroen. Dette er rett og slett et biprodukt av måten makro opptaker fungerer. Anmeldelser