Перенос значений между листами 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" (Сохранить только значения).