![](https://cdn.wiki-base.com/9182844/excel_formula_filter_every_nth_row__2.png.webp)
Všeobecný vzorec
=FILTER(rng,MOD(SEQUENCE(ROWS(rng)),n)=0)
Zhrnutie
Ak chcete filtrovať a extrahovať každý n-tý riadok, môžete použiť vzorec založený na funkcii FILTER spolu s MOD, ROW a SEQUENCE. V zobrazenom príklade je vzorec v F5:
=FILTER(data,MOD(SEQUENCE(ROWS(data)),3)=0)
kde údajmi je pomenovaný rozsah D5: D16. Keď je n vo vzorci pevne zakódovaných ako 3, funkcia FILTER vráti každý 3. riadok v dátach.
Vysvetlenie
Funkcia FILTER je navrhnutá na filtrovanie a extrahovanie informácií na základe logických kritérií. V tomto príklade je cieľom extrahovať každý 3. záznam zo zobrazených údajov, v údajoch však nie sú žiadne informácie o počte riadkov.
Pri prvom postupe zvnútra von je potrebné vygenerovať množinu čísel riadkov. Toto sa deje pomocou funkcie SEQUENCE takto:
SEQUENCE(ROWS(data))
Funkcia ROW vráti počet riadkov v pomenovaných údajoch rozsahu . Pomocou počtu riadkov vráti SEQUENCE pole 12 čísel v poradí:
(1;2;3;4;5;6;7;8;9;10;11;12)
Toto pole sa vracia priamo do funkcie MOD ako argument čísla, pričom číslo 3 je pevne dané ako deliteľ. MOD je nastavený na testovanie, či sú čísla riadkov deliteľné 3 so zvyšnou nulou
MOD(SEQUENCE(ROWS(data)),3)=0 // divisible by 3?
Výsledkom MOD je pole alebo TRUE a FALSE hodnoty, ako je tento:
(FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE)
Poznámka. Pravé hodnoty zodpovedajú každému 3. riadku v dátach. Toto pole sa dodáva priamo do funkcie FILTER ako argument zahrnutia. FILTER vráti každý 3. riadok v údajoch ako konečný výsledok.