Копирование формул без сдвига ссылок
Предположим, что у нас есть вот такая несложная таблица, в которой подсчитываются суммы по каждому месяцу в двух городах, а затем итог переводится в евро по курсу из желтой ячейки 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 и скопируйте туда текст вот такого макроса:
Sub Copy_Formulas() Dim copyRange As Range, pasteRange As Range On Error Resume Next Set copyRange = Application.InputBox("Выделите ячейки с формулами, которые надо скопировать.", _ "Точное копирование формул", Default:=Selection.Address, Type:=8) If copyRange Is Nothing Then Exit Sub Set pasteRange = Application.InputBox("Теперь выделите диапазон вставки." & vbCrLf & vbCrLf & _ "Диапазон должен быть равен по размеру исходному " & vbCrLf & _ "диапазону копируемых ячеек.", "Точное копирование формул", _ Default:=Selection.Address, Type:=8) If pasteRange.Cells.Count <> copyRange.Cells.Count Then MsgBox "Диапазоны копирования и вставки разного размера!", vbExclamation, "Ошибка копирования" Exit Sub End If If pasteRange Is Nothing Then Exit Sub Else pasteRange.Formula = copyRange.Formula End If End Sub
Для запуска макроса можно воспользоваться кнопкой Макросы на вкладке Разработчик (Developer — Macros) или сочетанием клавиш Alt+F8. После запуска макрос попросит вас выделить диапазон с исходными формулами и диапазон вставки и произведет точное копирование формул автоматически:

Ссылки по теме
- Удобный просмотр формул и результатов одновременно
- Зачем нужен стиль ссылок R1C1 в формулах Excel
- Как быстро найти все ячейки с формулами
- Инструмент для точного копирования формул из надстройки PLEX
Как зафиксировать ссылку в Excel?
![]()
Это необходимо для того, чтобы, когда вы протягивали формулу, ссылка на ячейку не смещалась. Например, для расчета коэффициента сезонности января (см. вложение) мы средние продажи за январь (пункт 2 см. вложение) делим на среднегодовые продажи за 3 года (пункт 3 см. вложение). Если мы просто протянем ячейку вниз, чтобы рассчитать коэффициенты для других месяцев, то для февраля мы получим, что среднегодовые продажи за февраль разделятся на ноль, а не на среднегодовые продажи за 3 года.
Как зафиксировать ссылку на ячейку, чтобы, когда мы протягивали формулу, ссылка не смещалась?
Для этого в строке формул выделяете ссылку, которую хотите зафиксировать:

и нажимаете клавишу «F4». Ссылка станет со значками $, как на рисунке:

это означает, что если вы протяните формулу, то ссылка на ячейку $F$4 останется на месте, т.е. зафиксирована строка ‘4’ и столбец ‘F’. Если вы еще раз нажмёте клавишу F4, то ссылка станет F$4 — это означает, что зафиксирована строка 4, а столбец F будет перемещаться.

Если еще раз нажмете клавишу «F4», то ссылка станет $F4:

Это означает, что зафиксирован столбец F и он не будет перемещаться, когда вы будите протаскивать формулу, а ссылка на строку 4 будет двигаться.
Если ссылки имеют вид R1C1, то полностью зафиксированная ячейка будет иметь вид R4C6 :

Если зафиксирована только строка (R), то ссылка будет R 4 C[-1]

Если зафиксирован только столбец (С), то ссылка будет иметь вид R C6

Для того, чтобы зафиксировать диапазон, необходимо его выделить в строке формул в Excel и нажать клавиши “F4”.

Предлагаю вам самостоятельно проделать описанные выше операции, и если будут вопросы, задать их в комментариях к данной статье.
Присоединяйтесь к нам!
Скачивайте бесплатные приложения для прогнозирования и бизнес-анализа:
- Novo Forecast Lite — автоматический расчет прогноза в Excel .
- 4analytics — ABC-XYZ-анализ и анализ выбросов в Excel.
- Qlik Sense Desktop и QlikView Personal Edition — BI-системы для анализа и визуализации данных.
Тестируйте возможности платных решений:
- Novo Forecast PRO — прогнозирование в Excel для больших массивов данных.
Получите 10 рекомендаций по повышению точности прогнозов до 90% и выше.
Как в excel закрепить (зафиксировать) ячейку в формуле
Очень часто в Excel требуется закрепить (зафиксировать) определенную ячейку в формуле. По умолчанию, ячейки автоматически протягиваются и изменяются. Посмотрите на этот пример.
У нас есть данные по количеству проданной продукции и цена за 1 кг, необходимо автоматически посчитать выручку.

Чтобы это сделать мы прописываем в ячейке D2 формулу =B2*C2
Если мы далее протянем формулу вниз, то она автоматически поменяется на соответствующие ячейки. Например, в ячейке D3 будет формула =B3*C3 и так далее. В связи с этим нам не требуется прописывать постоянно одну и ту же формулу, достаточно просто ее протянуть вниз. Но бывают ситуации, когда нам требуется закрепить (зафиксировать) формулу в одной ячейке, чтобы при протягивании она не двигалась.
Взгляните на вот такой пример. Допустим, нам необходимо посчитать выручку не только в рублях, но и в долларах. Курс доллара указан в ячейке B7 и составляет 35 рублей за 1 доллар. Чтобы посчитать в долларах нам необходимо выручку в рублях (столбец D) поделить на курс доллара.

Если мы пропишем формулу как в предыдущем варианте. В ячейке E2 напишем =D2* B7 и протянем формулу вниз, то у нас ничего не получится. По аналогии с предыдущим примером в ячейке E3 формула поменяется на =E3* B8 — как видите первая часть формулы поменялась для нас как надо на E3, а вот ячейка на курс доллара тоже поменялась на B8, а в данной ячейке ничего не указано. Поэтому нам необходимо зафиксировать в формуле ссылку на ячейку с курсом доллара. Для этого необходимо указать значки доллара и формула в ячейке E3 будет выглядеть так =D2/ $B$7 , вот теперь, если мы протянем формулу, то ссылка на ячейку B7 не будет двигаться, а все что не зафиксировано будет меняться так, как нам необходимо.
Примечание: в рассматриваемом примере мы указал два значка доллара $ B $ 7. Таким образом мы указали Excel, чтобы он зафиксировал и столбец B и строку 7 , встречаются случаи, когда нам необходимо закрепить только столбец или только строку. В этом случае знак $ указывается только перед столбцом или строкой B $ 7 (зафиксирована строка 7) или $ B7 (зафиксирован только столбец B)
Формулы, содержащие значки доллара в Excel называются абсолютными (они не меняются при протягивании), а формулы которые при протягивании меняются называются относительными.
Чтобы не прописывать знак доллара вручную, вы можете установить курсор на формулу в ячейке E2 (выделите текст B7) и нажмите затем клавишу F4 на клавиатуре, Excel автоматически закрепит формулу, приписав доллар перед столбцом и строкой, если вы еще раз нажмете на клавишу F4, то закрепится только столбец, еще раз — только строка, еще раз — все вернется к первоначальному виду.
Как закрепить ячейку в Excel с помощью знака доллара

Рассказываем, как закрепить ячейку в Excel, чтобы ссылка на нее оставалась постоянной или менялась только в одном направлении.


При составлении формул в текстовом редакторе Эксель пользователь может столкнуться с необходимостью их копирования вдоль строки или столбца таблицы. Иногда математическое или текстовое выражение приходится копировать в прямоугольную область. Но если сделать это простым перетаскиванием, можно заметить, что адреса в формулах, по умолчанию установленные как относительные, будут меняться.
Чтобы этого не произошло, надо закрепить ячейку в Эксель — добиться этого поможет значок доллара, установленный в нужном месте.
Полное закрепление
Самый простоя способ, как закрепить ячейку при протягивании формулы — полностью зафиксировать ее, не давая изменяться адресу ни в одном из направлений. То есть, выбрав A1, можно рассчитывать, что этот адрес останется без изменений при любом копировании.
Такую формулу называют абсолютной — для ее получения следует поставить значки доллара перед каждой частью ссылки. То есть для A1 это будет $A$1. В ячейку можно записать, например, курс валют, который будет общим для всех расчетов. Или размеры МРОТ, расход бензина, процент начислений и другие коэффициенты.

Без знаков $ при копировании ссылка на A1 будет изменяться. Так, при копировании формулы «= A1/30» из ячейки E5 в E6 результатом станет «=A2/30». А если скопировать формулу из E5 в D5, данные для расчетов будут браться уже не из A1, а из B1. Зафиксировав ячейку в формуле Excel, пользователь делает адрес $A$1 постоянным при копировании по вертикали или горизонтали.
Фиксация по столбцу и строке
Если закрепить ячейку в формуле Excel нужно так, чтобы без изменений при копировании оставался только столбец, знак $ необходимо поставить в самом начале ссылки. Например, $A1. Вероятность сдвига в формуле сохранится только в том случае, если копирование происходит вдоль другого столбца.
Так, выражение «=$A1/E4» при копировании из E5 в D5 превратится в «$A1/D4», что позволит посчитать разные значения только с одним неизменным коэффициентом (курсом валют, процентом ставки). Но если пользователь копирует формулу вдоль столбца, то оставаться без изменений будет только первая часть ссылки: «А» — «A1», «A2», «A3» и т. д.
Еще один способ, как зафиксировать ячейку в Excel, предполагает фиксацию только по строке. В этом случае знак $ в ссылке ставится перед вторым идентификатором — например, A$1. В этом случае пользователь может протянуть формулу, копируя ее по прямоугольной области — но изменяться будет только столбец. Так можно сделать, установив в одной из строк проценты, которые будут разные для каждой категории. При копировании такая процентная ставка изменяется по столбцам.
Несколько особенностей закрепления
Закрепляя адрес ячейки в Эксель, пользователь экономит время на прописывание отдельных одинаковых формул. При этом снижается вероятность ошибки, даже если таких скопированных выражений в таблице будет всего 5-10. Когда количество формул увеличивается до нескольких десятков, без использования знака $ в адресе просто не обойтись.
Чтобы упростить прописывание доллара в ссылке и не переключаться каждый раз на другую раскладку клавиатуры (которых может быть и 2, и 3, и 4), можно выделить ту часть адреса, перед которой он ставится, и нажать F4. Если выделен весь адрес, при первом нажатии на функциональную клавишу $ ставится перед строкой и столбцом. При втором — закрепляется только столбец. При следующем — только строка. Четвертое нажатие возвращает нормальное написание адреса.
Читайте также:
- Удаление повторяющихся строк в Эксель: самые быстрые методы=«content_internal_link»>
- Как сделать рамку в Ворде: 2 простых способа=«content_internal_link»>
