Как в эксель перенести столбец с сохранением формул
Формулы – это хорошо. Они автоматически пересчитываются при любом изменении исходных данных, превращая Excel из "калькулятора-переростка" в мощную автоматизированную систему обработки поступающих данных. Они позволяют выполнять сложные вычисления с хитрой логикой и структурой. Но иногда возникают ситуации, когда лучше бы вместо формул в ячейках остались значения. Например:
- Вы хотите зафиксировать цифры в вашем отчете на текущую дату.
- Вы не хотите, чтобы клиент увидел формулы, по которым вы рассчитывали для него стоимость проекта (а то поймет, что вы заложили 300% маржи на всякий случай).
- Ваш файл содержит такое больше количество формул, что Excel начал жутко тормозить при любых, даже самых простых изменениях в нем, т.к. постоянно их пересчитывает (хотя, честности ради, надо сказать, что это можно решить временным отключением автоматических вычислений на вкладке Формулы – Параметры вычислений).
- Вы хотите скопировать диапазон с данными из одного места в другое, но при копировании "сползут" все ссылки в формулах.
В любой подобной ситуации можно легко удалить формулы, оставив в ячейках только их значения. Давайте рассмотрим несколько способов и ситуаций.
Способ 1. Классический
Этот способ прост, известен большинству пользователей и заключается в использовании специальной вставки:
- Выделите диапазон с формулами, которые нужно заменить на значения.
- Скопируйте его правой кнопкой мыши – Копировать(Copy) .
- Щелкните правой кнопкой мыши по выделенным ячейкам и выберите либо значок Значения (Values) :
либо наведитесь мышью на команду Специальная вставка (Paste Special) , чтобы увидеть подменю:
Из него можно выбрать варианты вставки значений с сохранением дизайна или числовых форматов исходных ячеек.
В старых версиях Excel таких удобных желтых кнопочек нет, но можно просто выбрать команду Специальная вставка и затем опцию Значения (Paste Special - Values) в открывшемся диалоговом окне:
Способ 2. Только клавишами без мыши
При некотором навыке, можно проделать всё вышеперечисленное вообще на касаясь мыши:
- Копируем выделенный диапазон Ctrl + C
- Тут же вставляем обратно сочетанием Ctrl + V
- Жмём Ctrl , чтобы вызвать меню вариантов вставки
- Нажимаем клавишу с русской буквой З или используем стрелки, чтобы выбрать вариант Значения и подтверждаем выбор клавишей Enter :
Способ 3. Только мышью без клавиш или Ловкость Рук
Этот способ требует определенной сноровки, но будет заметно быстрее предыдущего. Делаем следующее:
- Выделяем диапазон с формулами на листе
- Хватаем за край выделенной области (толстая черная линия по периметру) и, удерживая ПРАВУЮ клавишу мыши, перетаскиваем на пару сантиметров в любую сторону, а потом возвращаем на то же место
- В появившемся контекстном меню после перетаскивания выбираем Копировать только значения (Copy As Values Only) .
После небольшой тренировки делается такое действие очень легко и быстро. Главное, чтобы сосед под локоть не толкал и руки не дрожали ;)
Способ 4. Кнопка для вставки значений на Панели быстрого доступа
Ускорить специальную вставку можно, если добавить на панель быстрого доступа в левый верхний угол окна кнопку Вставить как значения. Для этого выберите Файл - Параметры - Панель быстрого доступа (File - Options - Customize Quick Access Toolbar) . В открывшемся окне выберите Все команды (All commands) в выпадающем списке, найдите кнопку Вставить значения (Paste Values) и добавьте ее на панель:
Теперь после копирования ячеек с формулами будет достаточно нажать на эту кнопку на панели быстрого доступа:
Кроме того, по умолчанию всем кнопкам на этой панели присваивается сочетание клавиш Alt + цифра (нажимать последовательно). Если нажать на клавишу Alt , то Excel подскажет цифру, которая за это отвечает:
Способ 5. Макросы для выделенного диапазона, целого листа или всей книги сразу
Если вас не пугает слово "макросы", то это будет, пожалуй, самый быстрый способ.
Макрос для превращения всех формул в значения в выделенном диапазоне (или нескольких диапазонах, выделенных одновременно с Ctrl) выглядит так:
Если вам нужно преобразовать в значения текущий лист, то макрос будет таким:
И, наконец, для превращения всех формул в книге на всех листах придется использовать вот такую конструкцию:
Код нужных макросов можно скопировать в новый модуль вашего файла (жмем Alt + F11 чтобы попасть в Visual Basic, далее Insert - Module). Запускать их потом можно через вкладку Разработчик - Макросы (Developer - Macros) или сочетанием клавиш Alt + F8 . Макросы будут работать в любой книге, пока открыт файл, где они хранятся. И помните, пожалуйста, о том, что действия выполненные макросом невозможно отменить - применяйте их с осторожностью.
Способ 6. Для ленивых
Если ломает делать все вышеперечисленное, то можно поступить еще проще - установить надстройку PLEX, где уже есть готовые макросы для конвертации формул в значения и делать все одним касанием мыши:
Предположим, что у нас есть вот такая несложная таблица, в которой подсчитываются суммы по каждому месяцу в двух городах, а затем итог переводится в евро по курсу из желтой ячейки J2.
Проблема в том, что если скопировать диапазон D2:D8 с формулами куда-нибудь в другое место на лист, то Microsoft Excel автоматически скорректирует ссылки в этих формулах, сдвинув их на новое место и перестав считать:
Задача: скопировать диапазон с формулами так, чтобы формулы не изменились и остались теми же самыми, сохранив результаты расчета.
Способ 1. Абсолютные ссылки
Как можно заметить по предыдущей картинке, Excel сдвигает только относительные ссылки. Абсолютная (со знаками $) ссылка на желтую ячейку $J$2 не сместилась. Поэтому для точного копирования формул можно временно перевести все ссылки во всех формулах в абсолютные. Нужно будет выделить каждую формулу в строке формул и нажать клавишу F4:Способ 2. Временная деактивация формул
- Выделяем диапазон с формулами (в нашем примере D2:D8)
- Жмем Ctrl+H на клавиатуре или на вкладке Главная - Найти и выделить - Заменить (Home - Find&Select - Replace)
Способ 3. Копирование через Блокнот
Этот способ существенно быстрее и проще.
Нажмите сочетание клавиш Ctrl+Ё или кнопку Показать формулы на вкладке Формулы (Formulas - Show formulas) , чтобы включить режим проверки формул - в ячейках вместо результатов начнут отображаться формулы, по которым они посчитаны:
Скопируйте наш диапазон D2:D8 и вставьте его в стандартный Блокнот:
Теперь выделите все вставленное (Ctrl+A), скопируйте в буфер еще раз (Ctrl+C) и вставьте на лист в нужное вам место:
Осталось только отжать кнопку Показать формулы (Show Formulas) , чтобы вернуть Excel в обычный режим.
Примечание: этот способ иногда дает сбой на сложных таблицах с объединенными ячейками, но в подавляющем большинстве случаев - работает отлично.
Способ 4. Макрос
Если подобное копирование формул без сдвига ссылок вам приходится делать часто, то имеет смысл использовать для этого макрос. Нажмите сочетание клавиш Alt+F11 или кнопку Visual Basic на вкладке Разработчик (Developer) , вставьте новый модуль через меню Insert - Module и скопируйте туда текст вот такого макроса:
Для запуска макроса можно воспользоваться кнопкой Макросы на вкладке Разработчик (Developer - Macros) или сочетанием клавиш Alt+F8. После запуска макрос попросит вас выделить диапазон с исходными формулами и диапазон вставки и произведет точное копирование формул автоматически:
Используйте команды Вырезать, Копировать и Вставить, чтобы перемещать или копировать содержимое ячеек. Так можно копировать определенную часть содержимого или свойств ячеек. Например, скопировать вычисленное по формуле значение, не копируя саму формулу, или скопировать только формулу.
Ячейки в Excel перемещаются и копируются вместе с формулами, итоговыми значениями, форматом и примечаниями.
В Excel ячейки можно перемещать путем перетаскивания или с помощью команд Вырезать и Вставить.
Перемещение ячеек путем перетаскивания
Выделите ячейки или диапазон ячеек, которые требуется переместить или скопировать.
Наведите указатель мыши на границу выделенной области.
Когда указатель примет вид указателя перемещения , перетащите ячейку или диапазон ячеек в другое место.
Перемещение ячеек с помощью команд "Вырезать" и "Вставить"
Выделите ячейку или диапазон ячеек.
Выделите ячейку, в которую вы хотите переместить данные.
На вкладке Главная нажмите кнопку Вставить или нажмите клавиши CTRL+V.
Копируйте ячейки на листе с помощью команд Копировать и Вставить.
Выделите ячейку или диапазон ячеек.
Выделите ячейки, которые нужно переместить или скопировать.
На вкладке Главная в группе Буфер обмена выполните одно из указанных ниже действий.
Чтобы переместить ячейки, нажмите кнопку Вырезать .
Сочетание клавиш Можно также нажать клавиши CTRL+X.
Чтобы скопировать ячейки, нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Выделите левую верхнюю ячейку области вставки.
Совет: Чтобы переместить или скопировать выделенный фрагмент на другой лист или в другую книгу, щелкните ярлычок другого листа или выберите другую книгу и выделите левую верхнюю ячейку области вставки.
На вкладке Главная в группе Буфер обмена нажмите кнопку Вставить .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+V.
В Excel вырезанные или скопированные ячейки выделяются анимированной пунктирной рамкой. Чтобы снять это выделение, нажмите клавишу ESC.
При перемещении ячеек путем вырезания и вставки в приложении Excel замещаются существующие данные в области вставки.
Чтобы воспользоваться специальными вариантами вставки ячеек, можно щелкнуть стрелку под кнопкой Вставить и выбрать нужный вариант. Например, вы можете нажать Специальная вставка или Рисунок.
По умолчанию в приложении Excel на листе отображается кнопка Параметры вставки, которая позволяет получить доступ к специальным вариантам вставки ячеек, например Сохранить исходное форматирование. Если не нужно отображать эту кнопку при каждой вставке ячеек, ее можно отключить. Откройте вкладку Файл и выберите команду Параметры. В категории Дополнительно в разделе Вырезание, копирование и вставка снимите флажок Отображать кнопку параметров вставки при вставке содержимого.
По умолчанию режим перетаскивания включен, поэтому можно перемещать и копировать ячейки с помощью мыши.
Выделите ячейки или диапазон ячеек, которые требуется переместить или скопировать.
Выполните одно из указанных ниже действий.
Для перемещения ячейки или диапазона ячеек поместите указатель на границу выделенного фрагмента. Когда указатель примет вид указателя перемещения , перетащите ячейку или диапазон ячеек в другое место.
Чтобы скопировать ячейки или диапазон ячеек, поместите указатель на границу выделенного фрагмента, удерживая нажатой клавишу CTRL. Когда указатель примет форму указателя копирования , перетащите ячейку или диапазон ячеек в новое расположение.
Примечание: При перемещении ячеек в приложении Excel замещаются существующие данные в области вставки.
При копировании ячеек ссылки на ячейки изменяются автоматически. Но при перемещении ячеек ссылки не изменяются, и вместо содержимого этих ячеек и всех ячеек, которые на них ссылаются, может отображаться ошибка адресации. В этом случае потребуется изменить ссылки вручную.
Если выделенная область копирования содержит скрытые ячейки, строки или столбцы, приложение Excel копирует их. Может понадобиться временно отобразить данные, которые не нужно копировать.
Вставка скопированных и перемещенных ячеек между существующими ячейкамиВыделите ячейку или диапазон ячеек с данными, которые нужно переместить или скопировать.
На вкладке Главная в группе Буфер обмена выполните одно из указанных ниже действий.
Чтобы переместить выделенный фрагмент, нажмите кнопку Вырезать .
Сочетание клавиш Можно также нажать клавиши CTRL+X.
Чтобы скопировать выделенный фрагмент, нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Щелкните правой кнопкой мыши левую верхнюю ячейку области вставки, а затем выберите пункт Вставить вырезанные ячейки или Вставить скопированные ячейки.
Совет Чтобы переместить или скопировать выделенный фрагмент на другой лист или в другую книгу, щелкните ярлычок другого листа или выберите другую книгу и выделите левую верхнюю ячейку области вставки.
В диалоговом окне Вставка скопированных ячеек выберите направление, в котором нужно сдвинуть окружающие ячейки.
Заметка При вставке целых строк или столбцов окружающие строки и столбцы сдвигаются соответственно вниз и влево.
Если часть ячеек, строк или столбцов на листе не отображается, можно скопировать все ячейки или только видимые. Например, можно скопировать только отображаемые итоговые данные на листе со структурой.
Выделите ячейки, которые вы хотите скопировать.
На вкладке Главная в группе Редактирование нажмите кнопку Найти и выделить и выберите команду Выделить группу ячеек.
В группе Выбор щелкните элемент Только видимые ячейки и нажмите кнопку ОК.
На вкладке Главная в группе Буфер обмена нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Выделите левую верхнюю ячейку области вставки.
Совет: Чтобы переместить или скопировать выделенный фрагмент на другой лист или в другую книгу, щелкните ярлычок другого листа или выберите другую книгу и выделите левую верхнюю ячейку области вставки.
На вкладке Главная в группе Буфер обмена нажмите кнопку Вставить .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+V.
Если нажать стрелку под командой Вставить , можно выбрать параметры вставки, которые следует применить к выделенному диапазону.
При копировании значения последовательно вставляются в строки и столбцы. Если область вставки содержит скрытые строки или столбцы, возможно, потребуется отобразить их, чтобы увидеть все скопированные данные.
При копировании и вставке скрытых или отфильтрованных данных в другое приложение или в другой экземпляр приложения Excel будут скопированы только видимые ячейки.
Предотвращение замещения данных скопированными пустыми ячейкамиВыделите диапазон ячеек, содержащий пустые ячейки.
На вкладке Главная в группе Буфер обмена нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Выделите левую верхнюю ячейку области вставки.
На вкладке Главная в группе Буфер обмена щелкните стрелку под кнопкой Вставить и выберите вариант Специальная вставка.
Установите флажок пропускать пустые ячейки.
Перемещение и копирование только содержимого ячейкиДважды щелкните ячейку с данными, которые нужно переместить или скопировать.
Заметка По умолчанию можно редактировать и выделять данные непосредственно внутри ячейки, дважды щелкнув ее, но можно редактировать и выделять данные и в строка формул.
В ячейке выделите символы, которые нужно скопировать или переместить.
На вкладке Главная в группе Буфер обмена выполните одно из указанных ниже действий.
Чтобы переместить выделенный фрагмент, нажмите кнопку Вырезать .
Сочетание клавиш Можно также нажать клавиши CTRL+X.
Чтобы скопировать выделенный фрагмент, нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Щелкните в том месте ячейки, куда нужно вставить символы, или дважды щелкните другую ячейку для перемещения или копирования в нее данных.
На вкладке Главная в группе Буфер обмена нажмите кнопку Вставить .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+V.
Нажмите клавишу ВВОД.
Примечание: При двойном щелчке ячейки или нажатии клавиши F2 для редактирования активной ячейки клавиши со стрелками будут работать только внутри данной ячейки. Чтобы с помощью клавиш со стрелками переместиться в другую ячейку, сначала нажмите клавишу ВВОД, чтобы завершить внесение изменений в активную ячейку.
Копирование значений ячеек, форматов ячеек и только формулПри вставке скопированных данных можно выполнить любое из следующих действий:
вставить только параметры форматирования ячейки, такие как цвет текста или цвет заливки (но не содержимое ячеек);
преобразовать формулы в ячейках в вычисленные значения без переопределения существующего форматирования;
вставить только формулы (но не вычисленные значения).
Выделите ячейку или диапазон ячеек со значениями, форматами или формулами, которые нужно скопировать.
На вкладке Главная в группе Буфер обмена нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Выделите левую верхнюю ячейку области вставки или ту ячейку, куда нужно вставить значение, формат ячейки или формулу.
На вкладке Главная в группе Буфер обмена щелкните стрелку под кнопкой Вставить и выполните одно из следующих действий:
чтобы вставить только значения, выберите вариант значения;
чтобы вставить только форматы ячеек, выберите вариант Форматирование;
чтобы вставить только формулы, выберите вариант формулы.
Примечание: Если копируемые формулы содержат относительные ссылки на ячейки, Excel настраивает ссылки (и относительные части смешанных ссылок) в скопированных формулах. Допустим, ячейка B8 содержит формулу =СУММ(B1:B7). Если скопировать эту формулу в ячейку C8, новая формула будет ссылаться на соответствующие ячейки этого столбца: =СУММ(C1:C7). Если копируемые формулы содержат абсолютные ссылки на ячейки, ссылки в скопированных формулах не меняются. Если вы не получили ожидаемого результата, попробуйте изменить ссылки в исходных формулах на относительные или абсолютные, а затем снова скопировать ячейки.
При вставке скопированных данных к ним применяются параметры ширины целевых ячеек. Чтобы изменить ширину ячеек в соответствии с параметрами исходных ячеек, выполните указанные ниже действия.
Выделите ячейки, которые нужно переместить или скопировать.
На вкладке Главная в группе Буфер обмена выполните одно из указанных ниже действий.
Чтобы переместить ячейки, нажмите кнопку Вырезать .
Сочетание клавиш Можно также нажать клавиши CTRL+X.
Чтобы скопировать ячейки, нажмите кнопку Копировать .
Сочетание клавиш Можно также нажать сочетание клавиш CTRL+C.
Выделите левую верхнюю ячейку области вставки.
Совет: Чтобы переместить или скопировать выделенный фрагмент на другой лист или в другую книгу, щелкните ярлычок другого листа или выберите другую книгу и выделите левую верхнюю ячейку области вставки.
На вкладке Главная в группе Буфер обмена нажмите стрелку под кнопкой Вставить и выберите пункт Сохранить ширину столбцов оригинала.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Важно помнить о возможностях изменения относительной ссылки на ячейку при переходе или копировании формулы.
Перемещение формулы При этом ссылки на ячейки в формуле не изменяются независимо от типа ссылки на ячейку.
Копирование формулы: При копировании формулы изменяются относительные ссылки на ячейки.
Перемещение формулы
Выделите ячейку с формулой, которую необходимо переместить.
В группе Буфер обмена на вкладке Главная нажмите кнопку Вырезать.
Формулы можно скопировать и путем перетаскивания границы выделенной ячейки в левую верхнюю ячейку области вставки. При этом будут заменяться все существующие данные.
Выполните одно из указанных ниже действий.
Чтобы вировать формулу иформатирование: в группе Буфер обмена на вкладке Главная нажмите кнопку В виде вкладки.
Чтобы вировать только формулу:в группе Буфер обмена на вкладке Главная нажмите кнопку В paste(Главная), выберите специальная ветвь ищелкните Формулы.
Копирование формулы
Вы выберите ячейку, содержащую формулу, которую нужно скопировать.
В группе Буфер обмена на вкладке Главная нажмите кнопку Копировать.
Выполните одно из указанных ниже действий.
Чтобы вировать формулу и любое форматирование, в группе Буфер обмена на вкладке Главная нажмите кнопку В виде вкладки.
Чтобы вировать только формулу, в группе Буфер обмена на вкладке Главная нажмите кнопку Вировать ,выберите специальная ветвь ,а затем щелкните Формулы.
Примечание: В нее можно вклеить только результаты формулы. В группе Буфер обмена на вкладке Главная нажмите кнопку Вировать, выберите специальная ветвь ,а затем щелкните Значения.
Убедитесь, что ссылки на ячейки в формуле дают нужный результат. При необходимости переключить тип ссылки можно следующим образом:
Выделите ячейку с формулой.
В строке формул строка формул выделите ссылку, которую нужно изменить.
Для переключения между сочетаниями нажмите F4.
В таблице подводится информация об обновлении типа ссылки при копировании формулы, содержащей ссылку, на две ячейки вниз и на две ячейки вправо.
Копируемая формула
Первоначальная ссылка
Новая ссылка
$A$1 (абсолютный столбец и абсолютная строка)
A$1 (относительный столбец и абсолютная строка)
$A1 (абсолютный столбец и относительная строка)
A1 (относительный столбец и относительная строка)
Примечание: Формулы также можно копировать в смежные ячейки с помощью маркер заполнения . После проверки на то, что ссылки на ячейки в формуле дают нужный результат в шаге 4, вы выберите ячейку со скопированной формулой и перетащите его по диапазону, который вы хотите заполнить.
Перемещение формул очень похоже на перемещение данных в ячейках. Единственное, что нужно знать, — ссылки на ячейки, используемые в формуле, остаются нужными после перемещения.
Вы выберите ячейку с формулой, которую вы хотите переместить.
Щелкните Главная > вырезать (или нажмите CTRL+X).
Выйдите из ячейки, в которая должна вться формула, и нажмите кнопку Вировать (или нажмите CTRL+V).
Убедитесь, что ссылки на ячейки остаются нужными.
Совет: Вы также можете щелкнуть ячейки правой кнопкой мыши, чтобы вырезать и врезать формулу.
Совет: Формулу также можно скопировать и вкопировать в другую ячейку или на другой таблицу.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Читайте также: