Как скопировать формулу в excel в другую ячейку без изменения
Важно помнить о возможностях изменения относительной ссылки на ячейку при переходе или копировании формулы.
Перемещение формулы При этом ссылки на ячейки в формуле не изменяются независимо от типа ссылки на ячейку.
Копирование формулы: При копировании формулы изменяются относительные ссылки на ячейки.
Перемещение формулы
Выделите ячейку с формулой, которую необходимо переместить.
В группе Буфер обмена на вкладке Главная нажмите кнопку Вырезать.
Формулы можно скопировать и путем перетаскивания границы выделенной ячейки в левую верхнюю ячейку области вставки. При этом будут заменяться все существующие данные.
Выполните одно из указанных ниже действий.
Чтобы вировать формулу иформатирование: в группе Буфер обмена на вкладке Главная нажмите кнопку В виде вкладки.
Чтобы вировать только формулу:в группе Буфер обмена на вкладке Главная нажмите кнопку В paste(Главная), выберите специальная ветвь ищелкните Формулы.
Копирование формулы
Вы выберите ячейку, содержащую формулу, которую нужно скопировать.
В группе Буфер обмена на вкладке Главная нажмите кнопку Копировать.
Выполните одно из указанных ниже действий.
Чтобы вировать формулу и любое форматирование, в группе Буфер обмена на вкладке Главная нажмите кнопку В виде вкладки.
Чтобы вировать только формулу, в группе Буфер обмена на вкладке Главная нажмите кнопку Вировать ,выберите специальная ветвь ,а затем щелкните Формулы.
Примечание: В нее можно вклеить только результаты формулы. В группе Буфер обмена на вкладке Главная нажмите кнопку Вировать, выберите специальная ветвь ,а затем щелкните Значения.
Убедитесь, что ссылки на ячейки в формуле дают нужный результат. При необходимости переключить тип ссылки можно следующим образом:
Выделите ячейку с формулой.
В строке формул строка формул выделите ссылку, которую нужно изменить.
Для переключения между сочетаниями нажмите F4.
В таблице подводится информация об обновлении типа ссылки при копировании формулы, содержащей ссылку, на две ячейки вниз и на две ячейки вправо.
Копируемая формула
Первоначальная ссылка
Новая ссылка
$A$1 (абсолютный столбец и абсолютная строка)
A$1 (относительный столбец и абсолютная строка)
$A1 (абсолютный столбец и относительная строка)
A1 (относительный столбец и относительная строка)
Примечание: Формулы также можно копировать в смежные ячейки с помощью маркер заполнения . После проверки на то, что ссылки на ячейки в формуле дают нужный результат в шаге 4, вы выберите ячейку со скопированной формулой и перетащите его по диапазону, который вы хотите заполнить.
Перемещение формул очень похоже на перемещение данных в ячейках. Единственное, что нужно знать, — ссылки на ячейки, используемые в формуле, остаются нужными после перемещения.
Вы выберите ячейку с формулой, которую вы хотите переместить.
Щелкните Главная > вырезать (или нажмите CTRL+X).
Выйдите из ячейки, в которая должна вться формула, и нажмите кнопку Вировать (или нажмите CTRL+V).
Убедитесь, что ссылки на ячейки остаются нужными.
Совет: Вы также можете щелкнуть ячейки правой кнопкой мыши, чтобы вырезать и врезать формулу.
Совет: Формулу также можно скопировать и вкопировать в другую ячейку или на другой таблицу.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Формулы – это хорошо. Они автоматически пересчитываются при любом изменении исходных данных, превращая 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, где уже есть готовые макросы для конвертации формул в значения и делать все одним касанием мыши:
При копировании формул в другое место можно выбрать параметры вложения, специфичные для формулы, в ячейках назначения.
Ниже объясняется, как скопировать и вставить формулу.
Выделите ячейку с формулой, которую хотите скопировать.
Щелкните ячейку, в которую нужно вставить формулу.
Если ячейка находится на другом листе, перейдите на него и выберите эту ячейку.
Чтобы быстро вировать формулу с ее форматированием, нажмите +V. Можно также щелкнуть стрелку рядом с кнопкой Вировать:
При щелчке по стрелке появляется список параметров. Ниже перечислены те из них, что используются чаще всего.
Формулы — для вклеения только формулы, а не форматирования исходной ячейки.
Формулы & числовых форматов— для вклеения только формулы и форматирования числовых данных (например, формат процента, формата валюты и так далее).
Сохранить исходное форматирование— для вклейки формулы, форматирования номеров, шрифта, размера шрифта, границы и затенения исходной ячейки.
В этом шаблоне можно вировать значения, чтобы исключить формулу и в нее просто получить результат.
Другие доступные параметры:
Без границ— для вклеения формулы, форматирования номеров, шрифта, размера шрифта, затенения, но не границы исходного текста.
Сохранить ширину столбцов исходного текста— для вклейки формулы, форматирования номеров, шрифта, размера шрифта, затенения, границы и ширины исходного текста.
Транспон— Используйте этот параметр при копировании более одной ячейки. При копировании ячеек, которые находятся рядом по строке, эти ячейки будут вкопироваться в столбец. Если ячейки находятся в столбце, они будут вклеиться в строку рядом. Этот параметр позволяет в виде вклеить формулу, форматирование номеров, шрифт, размер шрифта, затенение, границу.
Совет: Скопировать формулы в смежные ячейки листа также можно с помощью маркера заполнения.
Проверка и исправление ссылок на ячейки в новом месте
Скопировав формулу в новое место, важно убедиться в том, что все ссылки в ней работают правильно. Ссылки на ячейки могут быть изменены в зависимости от используемого типа абсолютных или относительных ссылок.
Например, если скопировать формулу на две ячейки вниз и справа от ячейки A1, использованные ссылки на ячейки будут обновлены так:
Новая ссылка
$A$1 (абсолютный столбец и абсолютная строка)
A$1 (относительный столбец и абсолютная строка)
$A1 (абсолютный столбец и относительная строка)
A1 (относительный столбец и относительная строка)
Если ссылки на ячейки в формуле не дают нужного результата, попробуйте переключиться на другие типы ссылок.
Выделите ячейку с формулой.
В области формул выберите ссылку, которая вы хотите изменить:
Чтобы переключиться с абсолютного на относительный тип ссылки или обратно, нажмите клавишу F4 и выберите нужный вариант.
Перенос формулы в другое место
В отличие от копировании формулы, при ее перемещении в другое место на том же или другом листе содержащиеся в ней ссылки на ячейки не изменяются независимо от их типа.
Щелкните ячейку с формулой, которую хотите перенести.
Щелкните ячейку, в которую нужно вставить формулу.
Если ячейка находится на другом листе, перейдите на него и выберите эту ячейку.
Чтобы вировать формулу с форматированием, на вкладке Главная нажмите кнопку В виде вкладки или нажмите +V.
Чтобы воспользоваться другими параметрами вставки, щелкните стрелку под кнопкой Вставить. Доступно несколько вариантов, но чаще всего используются перечисленные ниже.
Сохранить исходное форматирование: вставка только формул, форматов чисел, атрибутов шрифта и его размера, границ и заливки исходной ячейки.
Значения & с исходным форматированием, чтобы в нее вклеились только значения и форматирование. Формула не вставляется.
Предположим, что у нас есть вот такая несложная таблица, в которой подсчитываются суммы по каждому месяцу в двух городах, а затем итог переводится в евро по курсу из желтой ячейки 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 показывает разные результаты для каждой ячейки.
Копирование формулы с помощью маркера заполнения
Выделите ячейку, которая содержит формулу для заполнения смежных ячеек.
Поместите курсор в правый нижний угол, чтобы он принял вид знака плюс (+). Например:
Перетащите маркер заполнения вниз, вверх или по ячейкам, которые нужно заполнить. В этом примере на рисунке ниже показано перетаскивание химок заливки вниз.
Когда вы отпустите маркер, формула будет автоматически применена к другим ячейкам.
Чтобы изменить способ заполнения ячеек, нажмите кнопку Параметры автозаполнения , которая появляется после перетаскивания, и выберите нужный вариант.
Дополнительные сведения о копировании формул см. в статье Копирование и вставка формулы в другую ячейку или на другой лист.
Вы также можете нажать CTRL+D, чтобы заполнить формулу вниз по столбцу. Сначала выберите ячейку с формулой, которую нужно заполнить, а затем выберите ячейки под ней и нажмите CTRL+D.
Можно также нажать CTRL+R, чтобы заполнить формулой формулу справа в строке. Сначала вы выберите ячейку с формулой, которую нужно заполнить, а затем выберите ячейки справа от нее, а затем нажмите CTRL+R.
Если заполнение не работает
Иногда заполнение работает нормально, а в других случаях работает не так, как вы ожидаете. Поэтому важно проверить ссылки на ячейки в первой ячейке.
Ссылки на ячейки — это просто указатели на другие ячейки. Например, пусть первая ячейка содержит такую формулу:
A1 и B1 — относительные ссылки. Это означает, что при заполнении формулы вниз ссылки будут пошагово изменяться с A1, B1 на A2, B2 и так далее:
=СУММ(A1;B1)
=СУММ(A2;B2)
=СУММ(A3;B3)
В других случаях ссылки на другие ячейки могут не изменяться. Например, вы хотите, чтобы первая ссылка A1 оставалась фиксированной, а B1 изменялась при перетаскивании маркера заполнения. В этом случае необходимо ввести знак доллара ($) в первой ссылке: =СУММ($A$1;B1). При заполнении других ячеек Excel знак доллара должен продолжать нанося указатель на ячейку A1. Это может выглядеть таким образом:
=СУММ($A$1;B1)
=СУММ($A$1;B2)
=СУММ($A$1;B3)
Ссылки со знаками доллара ($) называются абсолютными. При заполнении ячеек вниз ссылка на A1 остается фиксированной, но ссылку B1 приложение Excel изменяет на B2 и B3.
Есть проблемы с отображением маркера заполнения?
Если маркер не отображается, возможно, он скрыт. Чтобы отобразить его:
В меню Excel выберите пункт Параметры.
Щелкните Правка.
В разделе Параметры правки установите флажок Включить маркер заполнения и перетаскивание ячеек.
Если автоматическое вычисление в книге не работает, при заполнении ячеек формулы не пересчитыются.
Ниже описано, как его включить.
В меню Excel выберите пункт Параметры.
Щелкните Вычисление.
Убедитесь,что в оке Параметры вычислений выбран параметр Автоматически.
Читайте также: