Formula di Excel: copia il valore da ogni ennesima riga -

Sommario

Formula generica

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

Sommario

Per copiare valori o generare riferimenti con uno schema come ogni 3a riga, ogni 7a riga, ecc. È possibile utilizzare una formula basata sulle funzioni OFFSET e RIGA. Nell'esempio mostrato, la formula in D5 è:

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

Che può essere copiato nella colonna D per riprendere l'ennesimo valore dalla colonna B.

Spiegazione

In Excel, non è possibile copiare facilmente le formule che devono saltare righe o colonne seguendo un determinato schema, perché i riferimenti nella formula cambieranno automaticamente in base alla relazione tra la cella di origine originale e la nuova cella di destinazione. Tuttavia, con un po 'di lavoro è possibile costruire riferimenti a formule che seguono schemi specifici.

In questo caso, stiamo usando la funzione OFFSET, progettata per creare riferimenti ad altre celle o intervalli di celle, in base a un dato punto di partenza o origine.

Nell'esempio mostrato, la cella iniziale è B5, fornita a OFFSET come argomento di riferimento e fissata come riferimento assoluto in modo che non cambierà quando la formula viene copiata:

=OFFSET($B$5

Per calcolare il valore corretto per l'argomento righe, utilizziamo una formula secondaria basata sulla funzione RIGA:

(ROW(D1)*3)-1

A Riga viene assegnata la prima cella nella stessa colonna e restituisce 1. Questo risultato viene moltiplicato per n, che in questo esempio è 3 per ottenere 3.

Quando la formula viene copiata lungo la colonna, il valore restituito da RIGA aumenta di 1, che è ciò che crea l '"ennesimo modello".

Il motivo per cui sottraiamo 1 in ogni caso è perché la funzione OFFSET non include la cella di riferimento quando viene applicato l'argomento righe. In altre parole, l'offset di una riga da A1 restituisce A2:

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

Sottraendo 1 si tiene conto di questo comportamento.

A partire da 1

Se vuoi iniziare a copiare dalla prima riga, quindi seguire ogni ennesimo schema, puoi regolare la formula in questo modo:

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

Articoli interessanti...