Почему работодатели тестируют знания Excel на собеседовании
Собеседование по Microsoft Excel — стандартная практика для 87% вакансий, где требуется работа с данными. Даже если в описании должности не указано "продвинутый Excel", рекрутеры часто проверяют базовые навыки через тестовые задания. Причина проста: ошибка в формуле может стоить компании миллионы — как в случае с JPMorgan Chase, где опечатка в Excel-отчёте привела к убыткам в $6 млрд.
Тесты на собеседовании делятся на три категории:
- 📊 Практические задачи — решаются прямо на компьютере с ограничением по времени (обычно 15–30 минут).
- 💬 Устные вопросы — проверяют понимание логики формул ("Чем
INDEX(MATCH())лучшеVLOOKUP?"). - 📝 Домашние задания — дают файлы с сырыми данными и просят подготовить отчёт (часто для позиций аналитиков).
В этой статье разберём 15 реальных заданий с собеседований 2023–2026 годов, включая задачи от Big 4, банков и IT-компаний. Все примеры адаптированы для версий Excel 2019–2026 и Excel 365.
1. Базовые задачи: формулы и функции
Даже на должности с требованием "продвинутый Excel" первые 2–3 задания обычно проверяют знание базовых функций. Типичные ошибки кандидатов:
- 🔢 Путают
COUNT(считает числа) иCOUNTA(считает непустые ячейки). - 📅 Не учитывают, что
TODAY()обновляется автоматически (это ловушка в тестах!). - 💰 Округляют финансовые данные с помощью
ROUND, не зная проROUNDUP/ROUNDDOWN.
Пример задачи (из теста PwC):
⚠️ Внимание: В таблице с продажами по месяцам нужно рассчитать:
- Средний чек за квартал (исключая пустые ячейки).
- Процент выполнения плана, если план — 120% от среднего чека прошлого квартала.
- Дата последней продажи в формате "ДД.ММ.ГГГГ (день недели)".
Используйте только формулы (без ручного ввода!).
| Функция | Пример решения | Типичная ошибка |
|---|---|---|
AVERAGEIF | =AVERAGEIF(B2:B100,">0") | Используют AVERAGE, не исключая нули |
TEXT | =TEXT(TODAY(),"DD.MM.YYYY (DDDD)") | Забывают про локализацию дней недели |
IF + AND | =IF(AND(C2>1000,D2="Да"),"Бонус","-") | Пишут вложенные IF вместо AND |
2. Сводные таблицы: 3 хитрых вопроса
Сводные таблицы (PivotTables) — обязательный блок на собеседованиях для аналитиков. Работодатели любят задавать вопросы на понимание механики, а не просто просить построить отчёт. Вот три самых коварных вопроса:
Вопрос 1: "Почему при добавлении нового столбца в исходные данные сводная таблица не обновляется автоматически?"
Правильный ответ: Потому что диапазон данных в сводной таблице фиксирован. Нужно либо расширить его вручную, либо преобразовать данные в умную таблицу (Ctrl+T).
Вопрос 2: "Как в сводной таблице показать долю каждого элемента от общего?"
Решение: Кликните правой кнопкой по ячейке с значением → "Показать значения как" → "Доля от суммы по столбцу" (% of Column Total).
Вопрос 3: "Можно ли в сводной таблице использовать данные из нескольких листов?"
Ответ: Да, но нужно:
- Создать модель данных (
Вставка → Модель данныхв Excel 2013+). - Или объединить листы через Power Query (
Данные → Получить данные → Из других источников → Пустая запрос).
Как проверить, обновляется ли сводная таблица автоматически?
Создайте сводную таблицу из диапазона A1:B10, затем добавьте данные в A11:B11. Если новые данные не появились в сводной таблице — диапазон статический.
3. VLOOKUP vs INDEX(MATCH): что спрашивают на собеседовании
90% тестов включают задачи на поиск данных — и здесь рекрутеры любят ловить кандидатов на мелочах. Классическая ловушка: дать таблицу с дублирующимися значениями в первом столбце и спросить, почему VLOOKUP возвращает неверный результат.
Пример задачи (из теста Сбербанка):
⚠️ Внимание: В таблице с данными сотрудников (ФИО, отдел, зарплата) нужно найти зарплату Иванова И.И. из отдела "Маркетинг". Используйте:
- 🔍
VLOOKUP(обязательно укажите 4-й аргументFALSE).- 🎯 Комбинацию
INDEX(MATCH()).Объясните, какой метод надёжнее и почему.
Решение с VLOOKUP:
=VLOOKUP("Иванов И.И.", A2:C100, 3, FALSE)
Проблема: Если в таблице два Иванова И.И., функция вернёт первого попавшегося.
Решение с INDEX(MATCH):
=INDEX(C2:C100, MATCH(1, (A2:A100="Иванов И.И")*(B2:B100="Маркетинг"), 0))
Преимущество: Можно искать по нескольким критериям (ФИО + отдел).
☑️ Проверка формулы поиска
4. Условное форматирование: неочевидные задачи
Условное форматирование (Conditional Formatting) кажется простым, но на собеседованиях дают задачи, где нужно комбинировать правила. Например:
Задача (из теста Яндекс):
Выделите красным ячейки, где:
- 📉 Продажи ниже среднего по региону И дата позже 01.01.2026.
- 🟡 Выделите жёлтым топ-10% продаж по всему датасету.
Решение:
- Для красного: правило "Форматировать только ячейки, которые содержат" → формула:
=AND(B2DATE(2026,1,1)) - Для жёлтого: правило "Первые/последние" → "Топ 10%".
Лайфхак: если правила конфликтуют, используйте Имя → Диспетчер правил (Alt + O → D), чтобы настроить приоритеты.
5. Работа с датами и временем: подводные камни
Даты — самая коварная тема в Excel. Ошибки здесь допускают даже опытные пользователи. Типичные задачи на собеседовании:
Задача 1: "Посчитайте количество рабочих дней между двумя датами, исключая праздники (список праздников дан в отдельном столбце)."
Решение: Используйте NETWORKDAYS с третьим аргументом:
=NETWORKDAYS(A2, B2, $D$2:$D$10)
Задача 2: "Преобразуйте время в формате '13:45:22' в десятичное число (например, 13.75)."
Ловушка: Если просто умножить на 24, получите 13.755555... (из-за секунд). Правильно:
=HOUR(A2) + MINUTE(A2)/60 + SECOND(A2)/3600
| Функция | Типичная ошибка | Как избежать |
|---|---|---|
DATEDIF | Не учитывает порядок аргументов (DATEDIF(конец, начало, "D") даст ошибку) | Всегда DATEDIF(начало, конец, "D") |
EOMONTH | Забывают про второй аргумент (смещение месяцев) | =EOMONTH(A2, 0) — последний день текущего месяца |
WEEKDAY | Путают нумерацию дней недели (в Excel воскресенье = 1) | Используйте WEEKDAY(A2, 2) для стандарта ISO (понедельник = 1) |
6. Power Query и Power Pivot: задачи для продвинутых
Для вакансий с требованием "Excel + SQL" или "анализ больших данных" обязательно будут вопросы по Power Query (в Excel 2016+) и Power Pivot. Примеры:
Задача 1 (Power Query): "Объедините две таблицы по ключу 'ID', но в первой таблице ключ называется 'Client_ID', а во второй — 'ID_клиента'. Как это сделать без переименования столбцов?"
Решение: В редакторе Power Query выберите "Объединить запросы" → укажите соответствующие столбцы в каждом запросе.
Задача 2 (Power Pivot): "Почему мера SUM([Продажи]) возвращает одинаковое значение для всех строк отчёта?"
Причина: Отсутствует связь между таблицами в модели данных. Нужно создать связь по ключевому полю.
Задача 3 (DAX): "Напишите меру для расчёта 'Продажи в текущем месяце / Продажи в прошлом месяце'."
Решение:
Sales YoM =
VAR CurrentMonth = SUM(Sales[Amount])
VAR PrevMonth = CALCULATE(SUM(Sales[Amount]), DATEADD('Date'[Date], -1, MONTH))
RETURN DIVIDE(CurrentMonth, PrevMonth, 0)
7. Макросы и VBA: что спрашивают у разработчиков
Для вакансий с требованием "автоматизация Excel" или "VBA" тесты включают написание макросов. Типичные задачи:
Задача 1: "Напишите макрос, который скопирует данные из листа 'Исходные' в лист 'Отчёт', если в столбце A стоит 'Да'."
Решение:
Sub CopyData()
Dim wsSource As Worksheet, wsDest As Worksheet
Dim lastRow As Long, i As Long
Set wsSource = ThisWorkbook.Sheets("Исходные")
Set wsDest = ThisWorkbook.Sheets("Отчёт")
lastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row
wsDest.Cells.Clear
For i = 2 To lastRow
If wsSource.Cells(i, 1).Value = "Да" Then
wsSource.Rows(i).Copy wsDest.Cells(wsDest.Rows.Count, 1).End(xlUp).Offset(1)
End If
Next i
End Sub
Задача 2: "Как оптимизировать этот макрос, если он работает слишком медленно на 100 000 строк?"
Ответ: Отключить обновление экрана и автоматический пересчёт:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
'--- код макроса ---
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
⚠️ Внимание: На собеседованиях часто просят объяснить, что делает чужая VBA-функция. Например:
Function GetLastRow(ws As Worksheet) As LongGetLastRow = ws.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
End Function
Если не знаете, что такое
SearchDirection:=xlPrevious, признайтесь — лучше честно сказать "не помню", чем угадывать.
8. Стресс-тесты: нестандартные задачи
Некоторые компании (особенно стартапы и IT) дают нетипичные задачи, чтобы оценить креативность. Примеры:
Задача 1 (из теста Tinkoff): "В ячейке A1 записано число 12345. Напишите формулу, которая развернёт его (54321) без использования VBA."
Решение:
=TEXTJOIN("",1,MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))
(Для Excel 2016+; в старых версиях нужно использовать массивную формулу с Ctrl+Shift+Enter.)
Задача 2 (из теста Ozon): "Как в Excel эмулировать функцию REGEX (регулярные выражения)?"
Ответ: Использовать комбинацию FIND, MID, LEN и SUBSTITUTE. Например, для извлечения всех цифр из строки:
10^ROW($1:$25)/10)
=SUMPRODUCT(MID(0&A1, LARGE(INDEX(ISNUMBER(--MID(A1, ROW($1:$25), 1))ROW($1:$25), 0), ROW($1:$25))+1, 1)
Задача 3: "Как в Excel создать интерактивную карту по регионам России с подсветкой при наведении?"
Решение: Использовать связанные рисунки (вставляете картинку → присваиваете макрос на событие MouseOver) или Power Map (в Excel 2013+).
FAQ: Ответы на частые вопросы о тестах по Excel
Могу ли я пользоваться интернетом во время теста?
Зависит от компании. В Big 4 и банках обычно запрещено, а в IT-стартапах иногда разрешают "погуглить" синтаксис функций. Уточняйте заранее!
Что делать, если не знаю ответ на вопрос?
Честно скажите: "Эту функцию я не использовал, но могу попробовать разобраться". Покажите ход мыслей — это ценится выше, чем угадывание.
Как подготовиться к тесту по Excel за 1 день?
Сфокусируйтесь на:
- Формулах
VLOOKUP,INDEX(MATCH),SUMIFS. - Сводных таблицах (группировка, вычисления).
- Условном форматировании по формуле.
Потренируйтесь на Exceljet или Excel Easy.
Какие ошибки чаще всего ведут к провалу теста?
По опыту HR:
- 🔄 Непроверенные формулы (не нажали
F9для пересчёта). - 📏 Некорректные ссылки на диапазоны (например,
$A$1вместоA1). - ⏱️ Превышение времени (на задачу даётся 5–10 минут).
Где взять реальные тесты для практики?
Источники:
- 📌 WallStreetMojo (тесты для финансового моделирования).
- 📌 Udemy (курсы "Excel for Interviews").
- 📌 LeetCode (раздел "Excel Sheet Column Number").