Копирование только значений из ячеек Excel — задача, с которой сталкивается каждый второй пользователь. Вы перенесли данные с формулами, а в новой таблице нужны лишь конечные цифры? Или хотите удалить все ссылки на другие листы, оставив только текст? В этой статье разберём все актуальные способы для Excel 2019–2026, включая онлайн-версию и мобильное приложение.
Многие ошибочно думают, что достаточно просто выделить ячейки и нажать Ctrl+C → Ctrl+V. Но такой подход копирует всё содержимое: формулы, форматирование, привязки к источникам данных. В результате при изменении исходных данных обновляются и "скопированные" ячейки — а это часто недопустимо. Например, при создании отчётов за прошлый месяц или фиксации промежуточных расчётов.
Мы протестировали все методы на последних версиях Microsoft 365 (обновление от мая 2026) и выявили нюансы для разных платформ. В статье вы найдёте не только стандартные приёмы, но и малоизвестные трюки — например, как скопировать значения с сохранением ширины столбцов или как автоматизировать процесс через Power Query.
Почему обычное копирование не подходит
Когда вы копируете ячейку с формулой (например, =СУММ(A1:A10)) и вставляете её в другое место, Excel по умолчанию сохраняет ссылку на исходные данные. Это означает, что:
- 🔄 При изменении данных в
A1:A10результат в скопированной ячейке обновится автоматически. - 📊 Если исходные данные удалят, формула вернёт ошибку
#ССЫЛКА!. - 🎨 Вместе с формулой копируется форматирование (цвет, шрифт, границы), что не всегда нужно.
Типичный сценарий, когда требуются только значения:
- 📑 Создание архивных отчётов (фиксация данных на конкретную дату).
- 🔗 Перенос данных в другую книгу без сохранения зависимостей.
- 📱 Экспорт таблицы в Google Sheets или Numbers (чтобы избежать ошибок совместимости).
- 🖼️ Подготовка данных для диаграмм (формулы могут искажать визуализацию).
В Excel 2016 и старше проблема усугубляется тем, что при копировании между книгами создаются внешние ссылки. Например, если вы скопируете ячейку из Книга1.xlsx в Книга2.xlsx, формула преобразуется в =[Книга1.xlsx]Лист1!$A$1. Это замедляет работу файла и может привести к ошибкам при перемещении файлов.
Способ 1: Специальная вставка (классический метод)
Это самый универсальный способ, работающий во всех версиях Excel (включая Excel for Mac и онлайн-версию). Алгоритм простой:
- Выделите ячейки с данными, которые нужно скопировать.
- Нажмите
Ctrl+C(или⌘+Cна Mac). - Выделите целевую ячейку (левый верхний угол области вставки).
- Щёлкните правой кнопкой мыши и выберите Специальная вставка (или нажмите
Ctrl+Alt+V). - В открывшемся окне выберите Значения (и, при необходимости, Числовые форматы).
Для ускорения процесса можно использовать горячие клавиши:
Ctrl + Alt + V → V → Enter
Эта комбинация сразу активирует вставку значений без открытия диалогового окна.
Выделены все нужные ячейки (включая скрытые строки/столбцы)|
Целевая область достаточно большая для вставки|
Нет объединённых ячеек в области вставки|
Сняты фильтры (если копируете видимые ячейки)
-->
Нюанс для онлайн-версии Excel: здесь нет классического меню "Специальная вставка". Вместо этого после копирования (Ctrl+C) щёлкните правой кнопкой по целевой ячейке и выберите Параметры вставки → Только значения (значок 123).
⚠️ Внимание: Если вы копируете данные с условным форматированием, специальная вставка значений не удалит правила форматирования. Чтобы избавиться от них, после вставки выделите область и нажмите Главная → Условное форматирование → Управление правилами → Удалить правила.
Способ 2: Преобразование формул в значения через "Заменить"
Этот метод полезен, когда нужно массово заменить все формулы на значения в большом диапазоне. Он работает за счёт того, что Excel сначала преобразует формулы в текстовые строки, а затем — в числа.
Инструкция:
- Выделите диапазон с формулами.
- Нажмите
Ctrl+H(замена). - В поле Найти введите
=(знак равно). - Поле Заменить на оставьте пустым.
- Нажмите Заменить всё.
- Теперь все ячейки содержат текстовые представления формул (например, вместо
=A1+B1будет текстA1+B1). - Выделите тот же диапазон, скопируйте (
Ctrl+C), затем выполните Специальную вставку → Значения (как в Способе 1).
Преимущество метода: он позволяет обработать сразу весь лист, не пропуская скрытые строки или столбцы. Это актуально для больших файлов (100 000+ строк), где ручное копирование заняло бы часы.
Ограничение: если в ячейках были текстовые данные без формул, они превратятся в ошибки (например, текст
Если в диапазоне были текстовые данные, отмените замену (Ctrl+Z) и используйте макрос: Dim rng As Range For Each rng In Selection If rng.HasFormula Then rng.Value = rng.Value End If Next rng End Sub Этот скрипт заменит только ячейки с формулами, оставив текст без изменений.Привет станет #ИМЯ?). Поэтому метод подходит только для диапазонов, где все ячейки содержат формулы.
Что делать если после замены появились ошибки #ИМЯ?
Sub ConvertFormulasToValues()
Способ 3: Копирование через буфер обмена (для Windows)
В Excel для Windows (начиная с версии 2013) есть скрытая функция буфера обмена, которая позволяет фиксировать значения без формул. Вот как её использовать:
- Выделите исходные ячейки и скопируйте их (
Ctrl+C). - В нижнем правом углу окна Excel найдите значок Буфер обмена (или нажмите
Главная → Буфер обмена). - В панели буфера обмена щёлкните по скопированному элементу правой кнопкой и выберите Вставить только значения.
Этот способ удобен, когда нужно вставить одни и те же данные в несколько мест. Вы можете держать значения в буфере и вставлять их поочерёдно в разные листы или книги.
Особенность для Excel 2026: в последней версии буфер обмена поддерживает до 24 элементов (раньше было 12). Это позволяет копировать значения из нескольких диапазонов и вставлять их поочерёдно.
⚠️ Внимание: Если вы работаете с защищёнными листами, буфер обмена может не отобразить опцию "Вставить только значения". В этом случае временно снимите защиту (Рецензирование → Снять защиту листа) или используйте Специальную вставку (Способ 1).
Способ 4: Использование Power Query (для больших данных)
Если вам нужно скопировать значения из внешних источников (например, SQL, CSV, или другой книги Excel) и при этом удалить все формулы, Power Query — идеальный инструмент. Он позволяет импортировать данные как статичные значения без привязки к источнику.
Пошаговая инструкция:
(замените В результате вы получите полностью статичную таблицу, где все формулы заменены на значения. Этот метод особенно полезен для:
Важно: После загрузки данных через Power Query связь с источником сохраняется, но формулы не копируются. Чтобы полностью разорвать связь, щёлкните правой кнопкой по таблице и выберите Если вам нужно регулярно копировать значения (например, при создании еженедельных отчётов), имеет смысл написать простой макрос. Он сэкономит время и исключит ошибки при ручном копировании.
Пример кода для замены формул на значения в выделенном диапазоне:
Dim rng As Range On Error Resume Next ' Игнорировать ошибки, если нет выделения Set rng = Selection.SpecialCells(xlCellTypeFormulas) On Error GoTo 0 If Not rng Is Nothing Then rng.Value = rng.Value Else MsgBox "В выделенном диапазоне нет формул!", vbExclamation End If End Sub
Данные → Получить данные → Из других источников → Пустая запрос.= Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content]Таблица1 на имя вашего диапазона или таблицы).Главная → Закрыть и загрузить → Закрыть и загрузить в....
.xlsb (двоичный формат Excel), где стандартные методы могут не сработать.Диапазон → Преобразовать в диапазон.
Метод
Подходит для
Сохраняет форматирование
Работает в онлайн-версии
Специальная вставка
Любых данных
Да (если выбрано)
Да
Замена формул
Только формул
Нет
Да
Буфер обмена
Windows-версии
Да
Нет
Power Query
Внешних источников
Нет
Частично
Макрос VBA
Автоматизации
Настраивается
Нет
Способ 5: Автоматизация через VBA (для продвинутых)
Sub PasteAsValues()
Как использовать:
- Нажмите
Alt+F11, чтобы открыть редактор VBA. - Вставьте код в новый модуль (
Insert → Module). - Вернитесь в Excel, выделите диапазон с формулами и запустите макрос (
Alt+F8 → PasteAsValues → Выполнить).
Расширенная версия макроса (копирует значения с сохранением форматирования):
Sub CopyValuesKeepFormat()
Dim rng As Range
Set rng = Selection
rng.Copy
rng.PasteSpecial xlPasteValues
Application.CutCopyMode = False
rng.PasteSpecial xlPasteFormats
End Sub
⚠️ Внимание: Макросы не работают в онлайн-версии Excel и в мобильном приложении. Также они могут быть заблокированы настройками безопасности (проверьте Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Настройки макросов).
Особенности для Mac и мобильных устройств
Пользователи Excel для Mac и мобильных приложений (iOS/Android) сталкиваются с ограничениями стандартных методов. Вот как обойти их:
Для Excel на Mac:
- 🍎 Специальная вставка работает, но комбинация
Ctrl+Alt+Vзаменяется на⌘+Ctrl+V. - 🍎 В некоторых версиях опция "Значения" скрыта за кнопкой Параметры в меню вставки.
- 🍎 Power Query доступен только в Excel 2016 и новее (в Office 365 по умолчанию).
Для мобильного Excel (iOS/Android):
- 📱 Нет классической Специальной вставки. Вместо этого:
- Копируйте ячейки (
Выделить → Копировать). - Вставьте их в Блокнот или Google Keep.
- Скопируйте текст из блокнота и вставьте обратно в Excel — останутся только значения.
- Копируйте ячейки (
ЗНАЧЕН (например, =ЗНАЧЕН(A1)), но это не удалит формулу полностью.Обходной путь для iPad: если у вас iPad с клавиатурой, подключите её и используйте комбинации как на Mac ( Даже опытные пользователи иногда сталкиваются с проблемами при копировании значений. Вот самые распространённые ошибки и их решения:
Проблема с формулами массива: если в ячейке используется формула массива (вводится через Да, но стандартными средствами это сделать нельзя. Используйте макрос:
Dim src As Range, dest As Range Set src = Selection src.Copy Set dest = InputBox("Выберите целевую ячейку:", "Вставка", "A1") Range(dest).PasteSpecial xlPasteValues Application.CutCopyMode = False ' Копирование ширины столбцов For i = 1 To src.Columns.Count Columns(dest.Column + i - 1).ColumnWidth = src.Columns(i).ColumnWidth Next i End Sub⌘+Ctrl+V для специальной вставки).
Частые ошибки и как их избежать
12-05 становится 12 мая). Решение: перед вставкой отформатируйте целевые ячейки как Текстовый формат.Ctrl+`, чтобы включить режим отображения формул).00123 становится 123). Решение: перед вставкой отформатируйте ячейки как Текстовый или используйте апостроф ('00123).Главная → Формат → Скрыть/отобразить → Отобразить строки).Ctrl+Shift+Enter), стандартная специальная вставка может не сработать. В этом случае:
F2 (режим редактирования).F9, чтобы преобразовать формулу в значение.Enter и скопируйте результат.FAQ: Ответы на частые вопросы
Можно ли скопировать значения с сохранением ширины столбцов?
Sub CopyValuesWithColumnWidth()
Этот скрипт копирует значения и настраивает ширину столбцов как в исходном диапазоне.
Если лист защищён, но вам разрешено выделять ячейки:
Если выделение заблокировано, попросите администратора временно снять защиту или используйте Power Query для импорта данных как значения.
Вы случайно использовали вырезание ( Если отмена не помогла, проверьте журнал изменений ( Сводные таблицы не поддерживают стандартное копирование значений. Испольйте один из способов:
Да, для этого подойдёт:
Как скопировать значения из защищённого листа?
Ctrl+C.Почему после вставки значений исчезли формулы в исходных ячейках?
Ctrl+X) вместо копирования (Ctrl+C). Отмените действие (Ctrl+Z) и повторите процесс с правильной комбинацией.
Рецензирование → Журнал изменений), чтобы восстановить данные.
Как скопировать значения из сводной таблицы?
Анализ → OLAP-инструменты → Преобразовать в диапазон.Можно ли автоматизировать копирование значений по расписанию?
Application.OnTime в VBA, чтобы запускать копирование в заданное время.Auto Copy Values с настройкой расписания.