Зміст
Сьогодні я хотів би познайомити вас з Функція OFFSET в Excel з 3 реальними прикладами.
Спочатку я опишу синтаксис формули, а потім розповім про те, як функцію OFFSET можна використовувати для вирішення завдань в реальному житті.
Вступ
Функція OFFSET може повертати посилання на комірку (назвемо її цільова комірка) або діапазон (цільовий діапазон), що знаходиться на відстані вказаної кількості рядків і стовпців від іншої комірки (опорна комірка) або діапазону (опорний діапазон).
На малюнку нижче показано, як використовувати функцію OFFSET для повернення посилання на комірку (ліва частина) або діапазон (права частина).
Це дасть вам інтуїтивне уявлення про те, що є цільовою коміркою, а що - еталонною коміркою.
Комірка, виділена зеленим кольором, є цільовою коміркою, а клітинки, виділені жовтим кольором, складають цільовий діапазон.
Клітинки, виділені синім кольором, є довідковими.
Малюнок 1
Що означає OFFSET в Excel (синтаксис)?
Нижче наведено синтаксис функції зсуву: OFFSET (посилання, рядки, стовпці, [висота], [ширина])
Посилання | Обов'язково. Посилання - це комірка або діапазон комірок, з якої починається зміщення. Зверніть увагу, що комірки повинні бути суміжними, якщо ви вказуєте діапазон комірок. |
Ряди | Необхідно Кількість рядків, вгору або вниз, опорна комірка або верхня ліва комірка опорного діапазону. Ряди може бути як позитивним, так і негативним. Подивіться на ліву частину малюнка 1, цільовою коміркою буде B2, якщо я зміню функцію на OFFSET (C3, -1, -1). B2 знаходиться на один рядок вище C3. |
Cols | Обов'язково. Кількість стовпчиків, ліворуч або праворуч від базової комірки або верхньої лівої комірки базового діапазону. Ряди аргумент, значення Cols також може бути як позитивним, так і негативним. Як записати функцію OFFSET, якщо ми встановили B4 як базову комірку, а C3 - як цільову? Відповідь: OFFSET (B4, -1, 1). Тут видно, що Cols позитивний, а C3 знаходиться на один стовпець правіше B4. |
Висота | За бажанням. Використовуйте аргумент Height тільки в тому випадку, якщо цільовий діапазон є діапазоном. Він вказує, скільки рядків містить цільовий діапазон. Висота повинна бути позитивним числом. З правої частини малюнка 1 видно, що в цільовому діапазоні є два рядки. Тому в цьому випадку ми встановили Height рівним 2. |
Ширина | За бажанням. Використовуйте аргумент Ширина тільки в тому випадку, якщо цільовий діапазон є діапазоном (див. праву частину малюнка 1). Він вказує, скільки стовпців містить цільовий діапазон. Ширина повинна бути позитивним числом. |
Що ж, дозвольте мені зараз показати вам, як використовувати функцію OFFSET для вирішення проблем в реальному житті.
Приклад 1: Пошук справа наліво за допомогою комбінації функцій OFFSET і MATCH
Загальновідомо, що за допомогою функції VLOOKUP можна виконати пошук тільки зліва направо.
Значення, яке потрібно шукати, повинно бути розміщено в першому стовпчику масиву Вашої таблиці.
Ви повинні змістити весь діапазон таблиці вправо на один стовпець, якщо ви хочете додати нове значення для пошуку, або змінити структуру даних, якщо ви хочете використовувати інший стовпець як значення для пошуку.
Але комбінуючи OFFSET разом з функцією Match, обмеження функції VLOOKUP можна зняти.
Що таке функція МАТЧ і як ми можемо об'єднати функцію OFFSET з функцією МАТЧ для здійснення пошуку?
Функція "Соответствие" шукає вказаний елемент у діапазоні клітинок, а потім повертає відносне положення цього елемента в діапазоні.
Візьмемо для прикладу діапазон В3:В8 з рисунку 2.1 (який показує доходи різних країн у різні роки).
Формула "=МАТЧ ("США", B3:B8, 0)" поверне 1 оскільки США є першою позицією в діапазоні (див. комірку B10 та C10).
Для іншого діапазону C2:F2 формула "=СРЗНАЧ (2015, C2:F2, 0)" повертає 3 оскільки 2015 рік є третьою позицією в діапазоні (див. клітинки B11 та C11).
Повернення до функції OFFSET.
Якщо ми встановимо комірку B2 як базову, а комірку E3 - як цільову, то як записати формулу OFFSET?
E3 - це 1 рядок нижче B2 та 3 стовпчики праворуч до В2.
Тому формулу можна записати як "=OFFSET(B2, 1 , 3 Подивіться уважно на цифри червоного кольору, чи можете ви знайти, що вони збігаються?
Ось і відповідь на питання - Як поєднати функцію OFFSET з функцією Match? Функція match може бути застосована в якості другого або третього аргументу функції OFFSET (див. комірку С13).
Комірка C14 демонструє, як використовувати функцію VLOOKUP для отримання тих самих даних.
Перед написанням функції VLOOKUP ми повинні знати виручку за 2015 рік, яка записана в 4-му стовпчику табличного масиву B2:F8.
Це означає, що при використанні функції VLOOKUP ми повинні дуже добре знати структуру даних.
Це ще одне обмеження для VLOOKUP. Однак, використовуючи функцію MATCH як аргумент функції OFFSET, нам не обов'язково знати індекс стовпця.
Це дуже корисно, якщо колонок багато.
Рисунок 2.1
Тепер перейдемо до більш складного прикладу.
Припустимо, що у нас є таблиця, яка містить назву компанії, контактне ім'я та адресу електронної пошти для різних компаній.
І ми хочемо отримати назву компанії з відомого імені контакту або отримати ім'я контакту з відомої адреси електронної пошти. Що ми можемо зробити?
Дивіться Рисунок 2.2, діапазон B5:E8 містить інформацію про компанію. Ввівши дані в комірку C2 та комірку B3, за допомогою формули в червоному квадраті, я можу отримати назву компанії, якщо мені відоме ім'я контактної особи.
Діапазон D2:E4 показує, як отримати ім'я контакту за відомою адресою електронної пошти.
Таким чином, ці два приклади ілюструють, що ми можемо виконувати пошук справа наліво, і шукане значення не обов'язково розміщувати в крайньому правому стовпчику. Будь-які стовпчики в масиві таблиці можуть містити шукане значення.
Рисунок 2.2
Кейс 2: Автоматизувати обчислення, об'єднавши функції OFFSET і COUNT
Перед тим, як розповісти про те, як автоматизувати обчислення кожного разу, коли ми додаємо нове число в стовпчик, давайте почнемо з того, як спочатку автоматично повернути останнє число в стовпчику.
Подивіться на малюнок нижче, де показані записи з відділу кадрів. Припустимо, що ми хочемо отримати останнє число в колонці B, формула буде виглядати так: "=OFFSET (C2, 9 , 0)", якщо ми застосовуємо функцію OFFSET.
З формули можна дізнатися, що 9 ключове число.
Оскільки ми можемо повертати цей номер автоматично, ми зможемо автоматично знаходити останнє число в стовпчику.
9 це просто кількість клітинок, які містять числа у стовпчику C.
Якщо ви знайомі з функцією СЧЕТЕСЛИ, то знаєте, що функція СЧЕТЕСЛИ може підрахувати кількість клітинок, які містять числа в діапазоні.
Наприклад, формула "=СЧЕТ (С3:С11)" підрахує кількість комірок, які містять числа в комірках з С3 по С11.
У нашому випадку ми хотіли б дізнатися, скільки чисел у цілому стовпчику, тому слід використовувати посилання типу C:C, яке включає всі рядки стовпчика C.
Подивіться на комірки G4 і H4, число, що повертається функцією "=COUNT(C:C)" в точності дорівнює 9 .
Таким чином, замінивши 9 на COUNT(C:C) у наведеній вище функції OFFSET, можна отримати нову формулу "=OFFSET (C2, COUNT(C:C) , 0)" (у комірці H5).
Число, яке він повертає, - 87000, що є саме останнім числом у колонці С.
Тепер перейдемо до автоматичного підрахунку. Припустимо, що нам потрібна сума всіх чисел в колонці С.
Формула буде мати вигляд "=SUM (OFFSET (C2, 1, 0, 9 , 1))", якщо ми використовуємо SUM разом з OFFSET.
9 загальна кількість рядків у діапазоні C3:C11, а також загальна кількість комірок, що містять числа у стовпчику C.
Тому ми можемо записати формулу по-новому: "=СУММ(OFFSET (C2,1, 0, COUNT (C:C), 1)".
Подивіться на клітинки G10 та H10, загальна сума заробітної плати цих 9 працівників становить $521 700.
Тепер, якщо ви введете в комірку С12 число, наприклад, 34 000 доларів США, то число в комірках G5 і G10 зміниться на 34 000 доларів США і 555 700 доларів США відповідно.
Це те, що я називаю автоматизацією, оскільки вам не потрібно оновлювати формули в комірці G5 або G10.
Ви повинні бути обережними при використанні функції СЧЕТ, оскільки функція СЧЕТ повертає тільки кількість клітинок, що містять числа.
Наприклад, "=COUNT (B: B)" повертає 0 замість 9, оскільки в стовпці B немає комірки, яка містить числа (див. комірки G3 і H3).
Колонка D включає 10 комірок, що містять числа, і число, що повертається функцією "COUNT (D: D)", також дорівнює 10.
Але якщо ми захочемо отримати останнє число в колонці D, як ми це зробили для колонки C, ми отримаємо число 0 (див. комірку G8 та H8).
Очевидно, що 0 - це не те, що ми хочемо. Що не так? Клітинка D13 знаходиться на відстані 11 рядків від клітинки D2 замість 10 рядків.
Це також можна продемонструвати за допомогою формули "=OFFSET (D2, COUNT (D: D) + 1 , 0)" у комірці G7.
Таким чином, якщо ми хочемо використовувати функцію COUNT разом з функцією OFFSET для автоматизації обчислень, то числа повинні бути поруч один з одним.
Малюнок 3
Кейс 3: Використання функції OFFSET для створення динамічного діапазону
Припустимо, що ми хочемо побудувати графік щомісячних продажів одиниці продукції компанії, і на рисунку 4.1 показані поточні дані та графік, створений на основі поточних даних.
Щомісяця під останнім числом у колонці С додаватимуться продажі одиниць продукції за останній місяць.
Чи існує простий спосіб автоматичного оновлення діаграми?
Ключовим моментом в оновленні діаграми є використання функції OFFSET для створення назв динамічних діапазонів для стовпчика "Продані одиниці".
Динамічний діапазон для продажів одиниць буде автоматично включати всі дані про продажі по мірі введення нових даних.
Рисунок 4.1
Для створення динамічного діапазону натисніть кнопку Формули вкладка і, потім виберіть Ім'я менеджера або Визначити ім'я .
Нижче Нова назва діалогове вікно з'явиться, якщо ви натиснете на кнопку Визначити ім'я .
Якщо ви обираєте Ім'я менеджера також необхідно натиснути на кнопку Новий вжити наступних заходів Нова назва з'явиться діалогове вікно.
Рисунок 4.2
В рамках проекту " Ім'я: " слід заповнити ім'я динамічного діапазону, а в полі вводу " Відноситься до:" потрібно ввести формулу OFFSET "=OFFSET (Figure4!$C$2, 1, 0, COUNT (!$C: $C), 1)", яка створить динамічний діапазон значень на основі значень проданих одиниць, введених у колонці C.
За замовчуванням ім'я застосовується до всієї книги і повинно бути унікальним в межах книги.
Однак, ми хочемо обмежити сферу застосування конкретним аркушем.
Тому ми обираємо рисунок 4 тут, у розділі " Масштаб: "Після натискання на кнопку ГАРАЗД. створюється динамічний діапазон.
Вона буде автоматично включати всі дані про продажі по мірі введення нових даних.
Тепер клацніть правою кнопкою миші на будь-якій точці діаграми і виберіть "Виділити дані".
Рисунок 4.3
У запропонованому Виберіть Дані Джерело, обирайте Серія 1 а потім Редагувати.
Рисунок 4.4
А потім введіть "=Figure4!Units", як показано на рисунку 4.5.
Рисунок 4.5
Нарешті, давайте спробуємо ввести 11 в комірку C13. Ви можете побачити, що діаграма змінилася, і значення 11 було включено.
Графік буде змінюватися автоматично при додаванні нових даних.
Рисунок 4.6
Читати далі...
- Функція Зсув(...) в Excel з прикладами
Завантажити робочі файли
Завантажити робочі файли можна за посиланням нижче.
Excel-Функція зміщення.rar