Перенос значений между листами Excel без ручного копирования

Иван Корнев·09.04.2026·⏱4 мин

Чтобы подтянуть данные с другого листа в Excel, используйте функцию ВПР (для простых задач), ПРОСМОТРХ (в новых версиях) или связку ИНДЕКС+ПОИСКПОЗ для гибкого поиска. Эти инструменты автоматически находят значение по ключу на другом листе и возвращают нужный результат, исключая ошибки ручного копирования. Ниже — подробные инструкции для каждого метода.

Главное правило: При ссылке на другой лист имя листа указывается перед адресом через восклицательный знак: Лист2!A1. Если имя содержит пробелы, его обязательно берут в одинарные кавычки: 'Отчет за май'!A1.

ВПР (VLOOKUP): классический вертикальный поиск

Функция ВПР ищет значение в первом столбце указанной таблицы и возвращает данные из ячейки в той же строке, но в другом столбце. Это самый популярный способ для версий Excel до 2021 года.

Синтаксис: =ВПР(искомое_значение; таблица; номер_столбца; [интервальный_просмотр])

Пример использования: Допустим, на листе Цены в столбце A указаны товары, а в столбце B — их стоимость. На листе Заказы нужно подтянуть цену для товара из ячейки A2. Формула будет выглядеть так: =ВПР(A2; Цены!$A:$B; 2; 0)

Где:

  • A2 — что ищем (название товара).
  • Цены!$A:$B — где ищем (диапазон на другом листе, закрепленный знаками $).
  • 2 — номер столбца, из которого взять цену (столбец B второй в диапазоне).
  • 0 (или ЛОЖЬ) — требование точного совпадения.

Ограничение ВПР: Функция умеет искать данные только справа от ключевого столбца. Если нужное значение находится левее искомого, ВПР не сработает. Используйте метод ниже.

ИНДЕКС и ПОИСКПОЗ: универсальная связка

Комбинация функций ИНДЕКС и ПОИСКПОЗ лишена ограничений ВПР. Она позволяет искать данные в любом направлении (слева направо и справа налево) и работает быстрее на больших массивах.

Логика работы:

  1. ПОИСКПОЗ находит номер строки, где лежит искомое значение.
  2. ИНДЕКС берет значение из этой строки в нужном вам столбце.

Формула: =ИНДЕКС(столбец_с_результатом; ПОИСКПОЗ(искомое; столбец_для_поиска; 0))

Пример: Нужно найти цену товара (лист Цены, столбец B) по его названию (лист Заказы, ячейка A2), при этом столбец с названиями может быть где угодно. =ИНДЕКС(Цены!$B:$B; ПОИСКПОЗ(A2; Цены!$A:$A; 0))

Этот метод надежнее: если вы добавите новый столбец в таблицу источников, формула не сломается, в отличие от ВПР, где придется менять номер столбца вручную.

ПРОСМОТРХ (XLOOKUP): современный стандарт

Владельцы подписки Microsoft 365 и Excel 2021+ могут использовать функцию ПРОСМОТРХ. Она заменяет собой и ВПР, и связку ИНДЕКС/ПОИСКПОЗ, обладая более простым синтаксисом и встроенной обработкой ошибок.

Синтаксис: =ПРОСМОТРХ(искомое; массив_поиска; массив_возврата; [если_не_найдено])

Пример: =ПРОСМОТРХ(A2; Цены!$A:$A; Цены!$B:$B; "Товар не найден")

Преимущества:

  • Не нужно указывать номер столбца — вы сразу выбираете диапазон возврата.
  • По умолчанию ищет точное совпадение (не нужно ставить 0 в конце).
  • Встроенный аргумент "Товар не найден" избавляет от необходимости оборачивать формулу в ЕСЛИОШИБКА.
ФункцияНаправление поискаРабота с ошибкамиВерсии Excel
ВПРТолько вправоТребует ЕСЛИОШИБКАВсе версии
ИНДЕКС+ПОИСКПОЗЛюбоеТребует ЕСЛИОШИБКАВсе версии
ПРОСМОТРХЛюбоеВстроено365, 2021+

Динамические ссылки с функцией ДВССЫЛ

Если имя листа хранится в ячейке (например, в A1 написано слово "Январь", и нужно тянуть данные с листа Январь), используйте функцию ДВССЫЛ (англ. INDIRECT). Она превращает текстовую строку в рабочую ссылку.

Формула: =ДВССЫЛ("'" & A1 & "'!B2")

Здесь конструкция "'" & A1 & "'!" собирает имя листа с учетом возможных пробелов. Если в A1 изменить текст на "Февраль", формула автоматически подтянет данные с листа "Февраль".

Функция ДВССЫЛ является волатильной (пересчитывается при любом изменении в книге). Не используйте её в тысячах ячеек одновременно, чтобы не замедлить работу файла.

Power Query: автоматизация для больших таблиц

Когда объем данных превышает 50–100 тысяч строк, обычные формулы начинают тормозить файл. В таких случаях используйте надстройку Power Query (вкладка Данные → Получить данные).

Алгоритм действий:

  1. Выделите исходную таблицу на другом листе и выберите Данные → Из таблицы/диапазона.
  2. Откроется редактор запросов. При необходимости отфильтруйте лишние столбцы.
  3. Нажмите Закрыть и загрузить. Данные появятся на новом листе как связанная таблица.
  4. Для обновления данных достаточно нажать правой кнопкой мыши на таблицу и выбрать Обновить.

Этот метод идеален для сводных отчетов, где структура данных меняется, но логику переноса нужно сохранить.

Частые ошибки при переносе данных

  • #Н/Д (#N/A): Значение не найдено. Проверьте, нет ли лишних пробелов в ячейках (используйте функцию СЖПРОБЕЛЫ или TRIM) и совпадает ли формат данных (текст с текстом, число с числом).
  • #ССЫЛКА! (#REF!): Ссылка на несуществующий лист или удаленный диапазон. Проверьте правильность написания имени листа в формуле.
  • Неверный результат: Часто возникает при использовании ВПР без последнего аргумента 0. Без него функция ищет приблизительное значение, что недопустимо для кодов и названий.
  • Сбитые диапазоны: При протягивании формулы диапазон поиска "уплывает. Всегда фиксируйте его знаками доллара ($A:$B`) или превращайте исходную таблицу в "Умную таблицу" (Ctrl+T).

FAQ

Можно ли подтянуть данные из другого файла Excel? Да. Синтаксис остается тем же, но перед именем листа добавляется имя файла в квадратных скобках: =[Бюджет.xlsx]Лист1!$A$1. Файл-источник должен быть открыт для корректной работы ссылок.

Почему формула не обновляется при изменении данных на другом листе? Проверьте режим вычислений книги (Формулы → Параметры вычисления). Должно быть выбрано "Автоматически". Также убедитесь, что в формуле нет функции ДВССЫЛ, ссылающейся на закрытый файл.

Как быстро скопировать только значения без формул? Если связь больше не нужна, выделите ячейки с формулами, нажмите Ctrl+C, затем правой кнопкой мыши выберите значок "123" (Сохранить только значения).