![](https://cdn.wiki-base.com/9182844/excel_formula_filter_every_nth_row__2.png.webp)
Загальна формула
=FILTER(rng,MOD(SEQUENCE(ROWS(rng)),n)=0)
Резюме
Для фільтрування та вилучення кожного n-го рядка ви можете використовувати формулу на основі функції ФІЛЬТР разом із MOD, ROW та SEQUENCE. У наведеному прикладі формула в F5 має вигляд:
=FILTER(data,MOD(SEQUENCE(ROWS(data)),3)=0)
де дані - іменований діапазон D5: D16. З n, закодованим у формулу як 3, функція FILTER повертає кожен 3-й рядок даних.
Пояснення
Функція ФІЛЬТР призначена для фільтрації та вилучення інформації на основі логічних критеріїв. У цьому прикладі метою є вилучення кожного 3-го запису із показаних даних, але в даних немає інформації про номер рядка.
Працюючи зсередини, першим кроком є створення набору номерів рядків. Це робиться за допомогою функції ПОСЛІДОВНОСТІ наступним чином:
SEQUENCE(ROWS(data))
Функція ROW повертає кількість рядків у названих даних діапазону . Використовуючи підрахунок рядків, SEQUENCE повертає масив із 12 чисел послідовно:
(1;2;3;4;5;6;7;8;9;10;11;12)
Цей масив повертається безпосередньо до функції MOD як аргумент числа, а число 3 має кодове значення як дільник. MOD налаштовано для перевірки, чи номери рядків діляться на 3, а залишок дорівнює нулю
MOD(SEQUENCE(ROWS(data)),3)=0 // divisible by 3?
Результатом MOD є масив або значення TRUE та FALSE, як це:
(FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE)
Примітка: значення TRUE відповідають кожному 3-му рядку даних. Цей масив доставляється безпосередньо до функції FILTER як аргумент включення. FILTER повертає кожен 3-й рядок даних як кінцевий результат.