Для вилучення з таблиці тільки унікальних рядків (рядків без повтору) можна використовувати формули.
Під «відбором унікальних рядків» в статті розуміється фільтрація таблиці для виключення всіх повторних входжень рядків (однакових рядків може бути, наприклад 3, але в відфільтровану таблицю увійде тільки одна).
Створіть таблицю складається з 2-х стовпців (полів): Номер_заказа і КодТовара (див. Файл прикладу).
Рядки таблиці 3 і 4. а також 6, 7, 8 вважаються однаковими рядками, тому що в них значення полів Номер_заказа і КодТовара збігаються. За цими рядками буде проводитися угруповання. У підсумку, буде сформована нова таблиця, яка містить тільки унікальні рядки, наприклад, замість трьох рядків 6, 7 і 8 отримаємо один рядок.
Відбір рядків по 2-м полях можна звести до задачі відбору рядків по одному полю. Для цього сформуємо з 2-х стовпців один Службовий (столбецD) за допомогою операції конкатенації (Номер_заказаКодТовара).
У ситуації, коли два рядки в полях Номер_заказа і КодТовара містять відповідно 21; 10 і 2; 110 (див. Рис. Рядки 1 і 2), тобто є різними рядками; об'єднання стовпців за допомогою звичайної конкатенації (Номер_заказаКодТовара) призводить до того, що в стовпці Службовий для двох рядків буде однакове значення 2110. А такі рядки будуть вважатися однаковими. Тому для конкатенації додатково використовуємо набір символів *** (припускаємо, що *** разі не можуть зустрітися в цих рядках): Номер_заказа "***" КодТовара.
Тепер почнемо створювати нову таблицю. У стовпці Номер_заказа (G) введемо формулу масиву:
= ЕСЛІОШІБКА (ІНДЕКС ($ B $ 4: $ B $ 13; НАЙМЕНШИЙ (
ЯКЩО (ПОИСКПОЗ ($ D $ 4: $ D $ 13; $ D $ 4: $ D $ 13; 0)<>СТРОКА ($ D $ 4: $ D $ 13)
-СТРОКА ($ D $ 3); "повтор"; СТРОКА ($ D $ 4: $ D $ 13) -СТРОКА ($ D $ 3)); СТРОКА (1: 1))); "")
- Виділимо частину формули ПОИСКПОЗ ($ D $ 4: $ D $ 13; $ D $ 4: $ D $ 13; 0) і натиснемо клавішу F9. отримаємо масив з позиціями перших входжень значень в стовпці Службовий;
Якщо номер позиції не збігається з поточною позицією (ПОИСКПОЗ ($ D $ 4: $ D $ 13; $ D $ 4: $ D $ 13; 0)<>СТРОКА ($ D $ 4: $ D $ 13) -СТРОКА ($ D $ 3)), то значить це значення - повтор. і його не потрібно включати в нову таблицю. Результатом функції ЯКЩО () є масив з номерами позицій унікальних значень і словами «повтор»;
- Функція НАЙМЕНШИЙ () сортує масив і поелементно виводить його;
- Функція ІНДЕКС () вибирає з шпальти вихідної таблиці (Номер_заказа) відповідне значення.