При написании формулы Excel знак $ в ссылке на ячейку сбивает с толку многих пользователей. Но объяснение очень простое: это всего лишь способ ее зафиксировать. Знак доллара в данном случае служит только одной цели — он указывает, следует ли изменять ссылку при копировании. И это короткое руководство предоставляет полную информацию о том, какими способами можно закрепить адрес ячейки, чтобы он не менялся при копировании формулы.
Если вы создаете формулу только для одной клетки вашей таблицы Excel, то проблема как зафиксировать ячейку вас не волнует. А вот если её нужно копировать или перемещать по таблице, то здесь-то и скрываются подводные камни. Чтобы не сломать расчеты, некоторые ячейки следует зафиксировать в формулах, чтобы их адреса уже не менялись.
Как упоминалось ранее, относительные ссылки на ячейки являются основными по умолчанию для любой формулы, созданной в Excel. Но их главная особенность — изменение при копировании и перемещении. Во многих же случаях необходимо зафиксировать адрес ячейки в формуле, чтобы не потерять эту ссылку при изменении таблицы. Ниже мы рассмотрим следующие способы:
- Как зафиксировать ячейку вручную.
- Использование функциональной клавиши.
- Выборочная фиксация по строке или столбцу.
- Закрепите адрес ячейки при помощи имени.
Чтобы предотвратить изменение ссылок на ячейку, строку или столбец, используют абсолютную адресацию , которая отличается тем, что перед координатой строки или столбца ставится знак доллара $.
Поясним на простом примере.
=A1*B1
Здесь используются относительные ссылки. Если переместить это выражение на 2 ячейки вниз и 2 вправо, то мы увидим уже
=C3*D3
На 2 позиции изменилась буква столбца и на 2 единицы – номер строки.
Если в ячейке A1 у нас записана информация, которую нам нужно использовать во многих клетках нашей таблицы (например, курс доллара, размер скидки и т.п.), то желательно зафиксировать ее, чтобы ссылка на ячейку A1 никогда не «сломалась»:
=$A$1*B1
В результате, если мы повторим предыдущую операцию, то получим в результате формулу
=$A$1*D3
Ссылка на A1 теперь не относительная, а абсолютная. Более подробно об относительных и абсолютных ссылках вы можете прочитать в этой статье на нашем блоге.
В этом и состоит решение проблемы фиксации ячейки — нужно превратить ссылку в абсолютную.
А теперь рассмотрим подробнее, какими способами можно закрепить ячейку, строку или столбец в формуле.
Что такое ссылка Excel
Лист состоит из ячеек. Каждая из них содержит определенную информацию. Другие ячейки могут ее использовать в вычислениях. Но как они понимают, откуда брать данные? Это помогают им сделать ссылки.
Каждая ссылка обозначает ячейку с помощью одной буквы и одной цифры. Буква обозначает столбец, а цифра – строку.
Ссылки бывают трех типов: абсолютные, относительные и смешанные. Второй из них выставлен по умолчанию. Абсолютной ссылкой считается та, которая имеет фиксированный адрес как столбца, так и колонки. Соответственно, смешанная – это та, где зафиксирована или отдельно колонка, или строка.
Метод 1
Для того, чтобы сохранить адреса и колонки, и ряда, необходимо выполнить следующие шаги:
- Нажать по ячейке, содержащей формулу.
- Нажать по строке формул по той ячейке, которая нам нужна.
- Нажать F4.
Как следствие, ссылка ячейки изменится на абсолютную. Ее можно будет узнать по характерному знаку доллара. Например, если нажать на ячейку B2, а потом нажать на F4, то ссылка обретет следующий вид: $B$2.
1 2
Что означает знак доллара перед частью адреса на ячейку?
- Если он размещается перед буквой, то это говорит о том, что ссылка на столбец остается такой же, независимо от того, куда была перемещена формула.
- Если знак доллара находится перед числом, это говорит о том, что закреплена строка.
Метод 2
Этот способ почти такой же самый, как и прошлый, только нажать нужно F4 два раза. например, если у нас была ячейка B2, то после этого она станет B$2. Простыми словами, таким способом у нас получилось зафиксировать строку. При этом буква столбца будет изменяться.
3
Очень удобно, например, в таблицах, где нужно в нижней ячейке вывести содержимое второй ячейки сверху. Вместо того, чтобы делать такую формулу много раз, достаточно зафиксировать строку и дать возможность меняться столбцу.
Фиксация строк
Простое заполнение ячеек в данном случае — это самое малое, что мы можем сделать. Кроме этого, вы должны сформировать таблицу. Для этого можно использовать или автоматический инструмент создания, или же начертить все границы вручную встроенной утилитой. В противном случае закрепить некоторые объекты внутри не удастся. Рассмотрим пошагово, как это сделать.
- Открываем документ Excel с имеющейся таблицей и ее границами. Выбираем произвольную строку или ту, которая должна быть закреплена в вашем случае. Далее переходим во вкладку Вид, перемещаемся к пункту Закрепить области и во всплывшем списке выбираем нужный вариант. В нашем случае – Закрепить области.
- После этого во время прокрутки листа вы будете видеть ту область, которую изначально закрепили. В случае необходимости ее редактирования вы можете вносить изменения прямо в закрепленном виде.
Помимо закрепления ячеек в документе Excel, вы можете пользоваться функцией разделения областей. Это поможет вывести определенные границы на видимую часть листа, на котором вы работаете.
Метод 3
Это полностью аналогичный предыдущему метод, только нужно нажать клавишу F4 три раза. Тогда абсолютной будет только ссылка на колонку, а строка останется зафиксированной.
4
Метод 4
Предположим, у нас есть абсолютная ссылка на ячейку, но тут понадобилось сделать ее относительной. Для этого необходимо нажать клавишу F4 такое количество раз, чтобы не было знаков $ в ссылке. Тогда она станет относительной, и при перемещении или копировании формулы будет изменяться как адрес столбца, так и адрес строки.
5
Способ второй
Второй способ будет для другого типа формул, в частности, если они имеют вид, например, R1C1. Предлагаю рассмотреть все нюансы тезисно:
- если вам нужно, чтобы была зафиксирована вся ячейка, она должна иметь такой внешний вид: R4C6;
- если вы хотите сделать нескользящей только строчку, в данном случае – R, формула будет выглядеть как R4C[-1];
- чтобы закрепить лишь столбец (C), пропишите RC6;
- для полной фиксации всего диапазона, выделите строку формул и нажмите на клавиатуре F4.
Закрепление ячеек для большого диапазона
Видим, что приведенные выше методы вообще не представляют никакой сложности для выполнения. Но задачи бывают специфические. И, например, что делать, если у нас есть сразу несколько десятков формул, ссылки в которых нужно превратить в абсолютные.
К сожалению, стандартными методами Excel достичь этой цели не получится. Для этого нужно воспользоваться специальным аддоном, который называется VBA-Excel. Она содержит много дополнительных возможностей, позволяющих значительно быстрее выполнять стандартные задачи с Excel.
В ее состав входит больше ста пользовательских функций и 25 различных макросов, а также она регулярно обновляется. Она позволяет улучшить работу почти с любым аспектом:
- Ячейки.
- Макросы.
- Функции разных типов.
- Ссылки и массивы.
В том числе, эта надстройка позволяет закрепить ссылки сразу в большом количестве формул. Для этого необходимо выполнить следующие действия:
- Выделить диапазон.
- Открыть вкладку VBA-Excel, которая появится после установки.
- Открыть меню «Функции», где располагается опция «Закрепить формулы».
6 - Далее появится диалоговое окно, в котором нужно указать необходимый параметр. Этот аддон позволяет закрепить столбец и колонку по отдельности, вместе, а также снять уже имеющееся закрепление пакетом. После того, как будет выбран необходимый параметр с помощью соответствующей радиокнопки, нужно подтвердить свои действия путем нажатия «ОК».
Один столбец
При оформлении таблицы иногда требуется задать шапку слева, а не сверху. Чтобы сделать видимыми заголовки при горизонтальной прокрутке, следует:
- Выделить любую ячейку. Кликнуть по инструменту закрепления (вкладка «Вид») и активировать пункт «Закрепить первый столбец».
- Столбцы будут отграничены вертикальной линией.
Пример
Давайте приведем пример для большей наглядности. Допустим, у нас есть информация, в которое описывается стоимость товаров, его общее количество и выручка за продажи. И перед нами стоит задача сделать так, чтобы таблица, исходя из количества и стоимости автоматически определялась, сколько денег получилось заработать без вычета убытков.
7
В нашем примере для этого необходимо ввести формулу =B2*C2.
Она достаточно простая, как видите. Очень легко на ее примере описывать то, как можно закрепить адрес ячейки или отдельный ее столбец или ряд.
Можно, конечно, в данном примере попробовать протянуть с помощью маркера автозаполнения формулу вниз, но в таком случае ячейки будут автоматически изменены. Так, в ячейке D3 будет другая формула, где цифры будут заменены, соответственно, на 3. Далее по схеме – D4 – формула обретет вид =B4*C4, D5 – аналогично, но с цифрой 5 и так далее.
Если так и надо (в большинстве случаев так и получается), то проблем нет. Но если нужно зафиксировать формулу в одной ячейке, чтобы она не изменялась при перетягивании, то сделать это будет несколько сложнее.
Предположим, нам необходимо определить долларовую выручку. В ячейке B7 давайте его укажем. Давайте немного поностальгируем и укажем стоимость 35 рублей за доллар. Соответственно, чтобы определить выручку в долларах, необходимо сумму в рублях разделить на курс доллара.
Вот, как оно выглядит в нашем примере.
8
Если мы аналогично предыдущему варианту попробуем прописать формулу, то потерпим поражение. Точно так же формула изменится на соответствующую. В нашем примере она будет такой: =E3*B8
. Отсюда мы можем увидетЬ. что первая часть формулы превратилась в E3, и мы ставим перед собой эту задачу, а вот изменение второй части формулы на B8 нам ни к чему. Поэтому нам нужно превратить ссылку на абсолютную. Можно сделать это и без нажатия на клавишу F4, просто поставив знак доллара.
После того, как мы превратили ссылку на вторую ячейку в абсолютную, то она стала защищенной от изменений. Теперь можно смело ее перетаскивать с помощью маркера автозаполнения. Все зафиксированные данные будут оставаться такими же, независимо от положения формулы, а незафиксированные будут гибко меняться. Во всех ячейках будет выручка в рублях, описанная в этой строке, делиться на один и тот же курс доллара.
Сама формула будет выглядеть следующим образом:
=D2/$B$7
Внимание!
Мы указали два знака доллара. Таким образом мы показываем программе, что нужно фиксировать как столбец, так и строку.
Возможные проблемы и пути решения
Зная, как в Excel не изменять ячейку в формуле, можно упростить сложные расчеты и избежать ошибок. При этом могут возникать разные сложности, которые не дают сделать работу:
- Не удается зафиксировать данные. Убедитесь, что вы выполняете работу с учетом приведенной выше инструкции. Попробуйте перезапустить приложение, чтобы исключить временные ошибки. Также может потребоваться перезапуск самого ПК / ноутбука.
- Позиция абсолютной ссылки изменилась во процессе работы. Многие считают, что, если зафиксировать ячейку, ее позиция не изменится. Но это не так. На практике абсолютная ссылка в Excel меняется, когда пользователь добавляет / удаляет строки / столбца на листе. В результате корректируется и расположение фиксированной ячейки. К примеру, если вставить строку вверху таблиц, тогда адрес сместится вниз во всех формулах, с которых идет ссылка. Этот момент необходимо учесть при внесении изменений или вообще отказаться от корректировок.
- При нажатии F4 ничего не происходит. Убедитесь, что функциональная клавиша работает. Иногда для ее активации необходимо нажать комбинацию Fn+F4. Это зависит от типа используемой клавиатуры.
Теперь вы знаете, как в Excel зафиксировать секцию таблицы, чтобы избежать постоянного перемещения данных. Для этого используйте ручной метод и функциональную кнопку F4. Контролировать правильность работы можно по положению символа доллара, который появляется перед цифрой или буквой.
В комментариях расскажите, пригодилась ли вам предложенная инструкция, и какие еще методы можно использовать для решения поставленной задачи.
Ссылки на ячейку в макросах
Макрос – это подпрограмма, которая позволяет автоматизировать действия. В отличие от стандартного функционала Excel, макрос позволяет сразу задать конкретную ячейку и выполнить определенные действия всего в несколько строчек кода. Полезно для пакетной обработки информации, например, если нет возможности установки аддонов (например, используется компьютер компании, а не личный).
Для начала нужно понять, что ключевое понятие макроса – объекты, которые могут содержать в себе другие объекты. За электронную книгу (то есть, документ) отвечает объект Workbooks. В его состав входит объект Sheets, который являет собой совокупность всех листов открытого документа.
Соответственно, ячейки – это объект Cells. Он содержит все ячейки определенного листа.
Каждый объект уточняется с помощью аргументов в скобках. В случае с ячейками, ссылки на них даются в такой последовательности. Сначала указывается номер строки, а потом – номер или буква столбца (допустимы оба формата).
Например, строчка кода, содержащая ссылку на ячейку C5, будет выглядеть так:
Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Cells(5, 3)
Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Cells(5, «C»)
Также доступ к ячейке можно получить с помощью объекта Range.
Вообще, он предназначен для того, чтобы давать ссылку на диапазон (элементы которого, к слову, также могут быть абсолютными или относительными), но можно дать просто название ячейки, в таком же формате, как в документе Excel.
В этом случае строчка будет выглядеть следующим образом.
Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Range(«C5»)
Может показаться, что этот вариант удобнее, но преимущество первых двух вариантов в том, что можно использовать переменные в скобках и давать ссылку уже не абсолютную, а что-то типа относительной, которая будет зависеть от результатов вычислений.
Таким образом, макросы могут эффективно использоваться в программах. По факту, все ссылки на ячейки или диапазоны здесь будут абсолютными, и поэтому с их помощью также можно фиксировать их. Правда, это не так удобно. Использование макросов может быть полезным при написании сложных программ с большим количеством шагов в алгоритме. Вообще, стандартный способ использования абсолютных или относительных ссылок значительно удобнее.
Как открепить области
Для снятия закрепления областей не требуется производить какое-либо выделение ячеек, тут все гораздо проще. Требуется лишь во вкладе “Вид” щелкнуть на кнопку “Окно” и в открывшихся вариантах кликнуть «Снять закрепление областей».
Примечание: Аналогично ситуации, описанной выше, если размеры окна программы позволяют, промежуточной вкладки “Окно” не будет, и мы сразу может найти все кнопки, отвечающие за закрепление областей во вкладке “Вид”.
В результате выполненной процедуры все области в документе будут откреплены.