Формула, где в качестве операндов используются ссылки ячеек, воспринимается системой как шаблон, а ссылки ячеек в таком шаблоне – как средство указания на местоположение ячеек с операндами относительно ячейки с формулой.
Рассмотрим правило относительной ориентации клетки на примере.
Пример 14.11. Клетка со ссылкой С2 содержит формулу-шаблон сложения двух чисел, находящихся в ячейках А1 и В4. Эти ссылки являются относительными и отражают ситуацию взаимного расположения исходных данных в ячейках А1 и В4 и результата вычисления по формуле в ячейке С2. По правилу относительной ориентации клеток ссылки исходных данных воспринимаются системой не сами по себе, а так, как они расположены относительно клетки С2: ссылка А1 указывает на клетку, которая смещена относительно клетки С2 на одну клетку вверх и на две клетки влево; ссылка В4 указывает на клетку, которая смещена относительно клетки С2 на две клетки вниз и одну клетку влево.
Копирование формул
Другой особенностью электронных таблиц является возможность автоматического изменения ссылок при копировании и перемещении формул.
Копирование содержимого одной ячейки (блока ячеек) в другую (блок ячеек) производится для упрощения ввода однотипных данных и формул. При этом осуществляется автоматическая настройка относительных ссылок операндов. Для запрета автоматической настройки адресов используют абсолютные ссылки ячеек.
Исходная формула, подлежащая копированию или перемещению, воспринимается как некий шаблон, где указывается местоположение входных данных относительно местоположения клетки с формулой.
Копируемую формулу назовем формулой-оригиналом. Скопированную формулу - формулой-копией. При копировании формул действует правило относительной ориентации клеток. Поэтому после окончания копирования относительное расположение клеток, содержащих формулу-копию и исходные данные (заданные относительными ссылками), остается таким же, как в формуле-оригинале. Поясним на примере.
Пример 14.12. На рис. 14.2 мы видим результат копирования формулы, содержащейся в ячейке A3, при использовании относительных, полностью абсолютных и частично абсолютных ссылок. При копировании формулы с использованием относительных ссылок происходит их автоматическая подстройка (рис. 14.2 a). Результаты копирования с использованием абсолютных ссылок со знаком $ приведены на рис. 14.2 б. Как нетрудно заметить, применение абсолютных ссылок запрещает автоматическую настройку адресов, и копируемая формула сохраняет свой первоначальный вид. В приведенном на рис. 14.2 в примере для запрещения автоматической подстройки адресов используются смешанные ссылки.
Рис. 14.2. Копирование формул: а – с относительными ссылками;
б – с абсолютными ссылками; в – с частично абсолютными ссылками
Автоматическое изменение ссылок происходит не только при копировании субъекта (т.е. формул, содержащих ссылки), но и при перемещении объекта (т.е. ячейки, на которую имеются ссылки в других местах).
Перемещение формул
В электронной таблице часто перемещают данные из одной ячейки (диапазона ячеек) в другую заданную ячейку (блок ячеек). После перемещения данных исходная ячейка окажется пустой. Это главное отличие перемещения от процесса копирования, в котором копируемая ячейка сохраняет свои данные. Перемещение формул также связано с автоматической подстройкой входящих в нее адресов операндов. При перемещении формул, так же как при их копировании, действует правило относительной ориентации клеток. Поэтому после перемещения относительное расположение клеток, содержащих перемещенную формулу и исходные данные (заданные относительными адресами), сохраняется таким же, как в формуле-оригинале.
Пример 14.13. На рис. 14.3 а мы видим перемещение содержимого отдельной ячейки A3 в ячейку С3. В этом случае содержимое исходной ячейки, не изменяясь, перемещается в ячейку назначения, а исходная ячейка остается пустой. Рис. 14.3 б иллюстрирует случай перемещения содержимого трех ячеек A1, A2 и A3. При этом ячейки взаимосвязаны – содержимое третьей ячейки включает в себя содержимое первых двух. После перемещения мы видим, что в результате автоматической подстройки ссылок содержащаяся в ячейке A3 формула изменилась, чтобы отразить произошедшие в электронной таблице изменения (теперь компоненты содержащейся в ячейке С3 суммы находятся в других ячейках). Так же как и в предыдущем случае диапазон исходных ячеек после выполнения операции перемещения опустел.
На рис. 14.3 в мы видим перемещение содержимого ячейки A3 в ячейку С3, когда адрес переносимой ячейки входит в другую формулу. Это случай перемещения зависимых ячеек. Например, имеется дополнительная ячейка В1, содержимое которой зависит от содержимого перемещаемой ячейки A3. В данном случае содержимое перемещаемой ячейки не изменяется, но изменяется содержимое зависимой ячейки В1 (хотя она не перемещается). Автоматическая подстройка адресов и в данном случае отразит изменения в электронной таблице так, чтобы результат формулы, содержащейся в ячейке В1, не изменился.
Последний случай, не рассмотренный на рис. 14.3, связан с возможностью использования абсолютных адресов. Нетрудно заметить, что использование абсолютных адресов при выполнении команды перемещения не имеет смысла, поскольку над ними также выполняется автоматическая подстройка адресов для отражения изменений, происходимых в таблице.
Рис. 14.3. Перемещение содержимого ячеек: а – одной ячейки; б – колонки; в – зависимых ячеек
В целом команда перемещения является непростой командой, и вам следует хорошо подумать, прежде чем перемещать формулы и функции, содержащие ссылки. При перемещении символьных данных никаких трудностей не возникает.