Excel-formel: Kopier verdi fra hver niende rad -

Innholdsfortegnelse

Generisk formel

=OFFSET($B$5,(ROW(A1)*n)-1,0)

Sammendrag

For å kopiere verdier eller generere referanser med et mønster som hver 3. rad, hver 7. linje osv., Kan du bruke en formel basert på OFFSET- og ROW-funksjonene. I eksemplet vist er formelen i D5:

=OFFSET($B$5,(ROW(D1)*3)-1,0)

Som kan kopieres ned i kolonne D til henting av verdier fra kolonne B.

Forklaring

I Excel kan du ikke enkelt kopiere formler som trenger å hoppe over rader eller kolonner etter et bestemt mønster, fordi referansene i formelen automatisk endres etter forholdet mellom den opprinnelige kildecellen og den nye målcellen. Imidlertid, med litt arbeid er det mulig å lage formelhenvisninger som følger spesifikke mønstre.

I dette tilfellet bruker vi OFFSET-funksjonen, som er designet for å bygge referanser til andre celler, eller celleområder, basert på et gitt startpunkt eller opprinnelse.

I eksemplet som er vist er startcellen B5, gitt til OFFSET som referanse-argument, og fast som en absolutt referanse slik at den ikke endres når formelen kopieres:

=OFFSET($B$5

For å beregne riktig verdi for radargumentet, bruker vi en underformel basert på ROW-funksjonen:

(ROW(D1)*3)-1

Rad får den første cellen i samme kolonne, og returnerer 1. Dette resultatet multipliseres med n, som er 3 i dette eksemplet for å få 3.

Når formelen kopieres nedover i kolonnen, øker verdien av ROW med 1, og det er det som skaper det "nte mønsteret".

Årsaken til at vi trekker 1 i hvert tilfelle, er fordi OFFSET-funksjonen ikke inkluderer referansecellen når radargumentet brukes. Med andre ord, motregning av en rad fra A1 returnerer A2:

=OFFSET(A1,1,0) // returns A2

Å trekke fra 1 tar hensyn til denne oppførselen.

Fra 1

Hvis du vil begynne å kopiere på første rad, og følg hvert nnte mønster, kan du justere formelen slik:

=OFFSET($B$5,(ROW(A1)-1)*n,0)

Interessante artikler...