
Generisk formel
=FILTER(rng,MOD(SEQUENCE(ROWS(rng)),n)=0)
Sammanfattning
För att filtrera och extrahera var nionde rad kan du använda en formel baserad på FILTER-funktionen tillsammans med MOD, ROW och SEQUENCE. I exemplet som visas är formeln i F5:
=FILTER(data,MOD(SEQUENCE(ROWS(data)),3)=0)
där data är det namngivna området D5: D16. Med n hårdkodad i formeln som 3 returnerar FILTER-funktionen var tredje rad i data.
Förklaring
FILTER-funktionen är utformad för att filtrera och extrahera information baserat på logiska kriterier. I det här exemplet är målet att extrahera var tredje post från de data som visas, men det finns ingen radnummerinformation i data.
Arbeta inifrån och ut, det första steget är att generera en uppsättning radnummer. Detta görs med SEQUENCE-funktionen så här:
SEQUENCE(ROWS(data))
ROW-funktionen returnerar antalet rader i namngivna områdesdata . Med hjälp av antalet rader returnerar SEQUENCE en matris med 12 nummer i sekvens:
(1;2;3;4;5;6;7;8;9;10;11;12)
Denna matris returneras direkt till MOD-funktionen som talargument, med nummer 3 hårdkodat som delare. MOD är inställt för att testa om radnummer är delbara med 3 och resten noll
MOD(SEQUENCE(ROWS(data)),3)=0 // divisible by 3?
Resultatet från MOD är en array eller SANT och FALSKA värden så här:
(FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE)
Obs! SANT värden motsvarar var tredje rad i data. Denna matris levereras direkt till FILTER-funktionen som inkluderingsargument. FILTER returnerar var tredje rad i data som slutresultat.