Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

При создании формул Microsoft Excel вы можете генерировать вычисления, используя определенные значения — также известные как жесткое кодирование — или ссылаясь на другие ячейки в рабочей книге. В этом руководстве я объясню, почему жесткое кодирование значений может вызывать проблемы, и как использование ссылок на ячейки часто является лучшим вариантом.

Проблемы, вызванные жестким кодированием значений в формулах Excel

Допустим, вы вычисляете себестоимость продукции в вашем магазине, когда добавляется налог 20%. Для этого в столбце C вы умножили значения в столбце B на 1.2, как показано в строке формул в верхней части окна Excel:

= B2 * 1.2

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Однако теперь представьте, что в следующем году налог на все товары снижается до 15%. В результате вам придется вернуться в ячейки и изменить все формулы в столбце C так, чтобы значения в столбце B умножались на 1.15.

Да, вы можете изменить формулу в ячейке C2 и автоматически дублировать ее в остальных ячейках, дважды щелкнув или щелкнув и перетащив маркер заполнения в правом нижнем углу ячейки. Однако этот подход занимает больше времени, чем необходимо, и может легко привести к ошибкам копирования или автозаполнения.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Более того, жесткое кодирование значений в формулах Excel затрудняет обнаружение ошибок, поскольку вам приходится выбирать ячейку, чтобы увидеть состав расчета в строке формул. В качестве альтернативы вы можете нажать Ctrl+` (гравитационный акцент), чтобы просмотреть все формулы в таблице, но — опять же — это ненужный шаг, который может добавить путаницы.

Наконец, если вы делитесь своей книгой Excel с другими, жестко заданные значения в формулах не имеют никакого контекста, объясняющего, как вы пришли к этому числу.

Почему ссылка на переменные ячейки — лучший вариант

Чтобы преодолеть недостатки жесткого кодирования значений в формулах Microsoft Excel, можно использовать ссылки на ячейки.

Используя приведенный выше пример, вместо того, чтобы умножать каждое значение в столбце B на 1.2 в вашей формуле, вы можете сослаться на ячейку, содержащую переменную, — в данном случае на ячейку E2:

=B2*$E$2

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Важно отметить, что ссылка на ячейку E2 является абсолютной и представлена ​​символами доллара ($) перед столбцом и строкой. Если этого не сделать, то при дублировании формулы в оставшиеся ячейки в столбце C ссылка на ячейку будет скорректирована относительно положения активной ячейки. Например, формула в ячейке C3 будет ссылаться на ячейку E3, формула в ячейке C4 будет ссылаться на ячейку E4 и т. д.

При создании формулы нажмите клавишу F4 после ввода ссылки на ячейку, чтобы превратить ее из относительной в абсолютную.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Теперь, когда налог на товары изменится до 15%, вы можете просто изменить значение в ячейке E2 на 1.15, и все формулы, ссылающиеся на эту ячейку, мгновенно обновятся.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Более того, поскольку ячейка, содержащая переменную, всегда отображается, ее легко проверить на точность. Кроме того, поскольку ячейка E1 содержит слово «Tax», любой, кто впервые обращается к таблице, может увидеть полный контекст того, как рассчитываются общие значения в столбце C.

Отказ от ответственности: есть случаи, когда жесткое кодирование значений в формулах может быть более уместным. Например, вы можете жестко закодировать недельный итог, который нужно разделить на семь, чтобы получить ежедневный итог, поскольку количество дней в неделе никогда не меняется. Кроме того, формулы со ссылками на ячейки используют немного больше памяти, чем формулы с жестко закодированными значениями, поэтому, если вы делаете это часто, вы можете заметить снижение — хотя и незначительное — производительности вашей рабочей книги.

Использование ссылок на ячейки в формулах вместо жестко закодированных значений особенно полезно, если параметры расчета, вероятно, изменятся в будущем. В этом примере функция IFS используется в столбце C для определения того, сдал ли каждый студент экзамен в конце семестра или нет, в зависимости от того, достигли ли они переменной проходного балла в ячейке E2:

=ЕСЛИ([@Оценка]<$E$2,»НЕСДАЧА»,[@Оценка]>=$E$2,»СДАЧА»)

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

В следующем семестре вы можете просто продублировать таблицу и изменить переменную проходного балла, не беспокоясь о корректировке формулы для получения правильного результата для этих данных.

Совет профессионала: дайте переменной имя

До сих пор я говорил о ссылках на ячейки в формулах Excel вместо жесткого кодирования значений. Один из способов еще больше обезопасить ваши формулы — дать ячейке, содержащей переменную, имя, что особенно полезно, если вы планируете использовать ее в своей рабочей книге.

Предположим, у вас есть несколько рабочих листов в рабочей книге, каждый из которых содержит различные товары из разных магазинов, и вам нужно отобразить общую стоимость каждого товара, включая налог.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

На снимке экрана выше вы заметите, что также есть рабочий лист под названием «Налог». Этот лист содержит текущую налоговую ставку и значение, на которое необходимо умножить затраты, чтобы рассчитать общую стоимость.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Вместо того, чтобы каждый раз запоминать расположение переменной в рабочей книге, когда вы хотите рассчитать общую стоимость продукта, вы можете дать этой ячейке имя. Для этого выберите соответствующую ячейку и в поле имени в верхнем левом углу экрана введите запоминающуюся метку ячейки. В моем случае я выбрал «TAX». Затем нажмите Enter, чтобы завершить процесс именования.

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Теперь, независимо от того, где вы находитесь в своей рабочей книге, вы можете легко ссылаться на эту переменную в своей формуле:

=B2*НАЛОГ

Почему следует избегать жесткого кодирования значений в формулах Microsoft Excel

Всякий раз, когда меняется налоговая ставка, вам нужно только один раз скорректировать ее в вашем налоговом листе, чтобы обновить все ваши расходы. Более того, поскольку ссылки на именованные диапазоны являются абсолютными по своей природе, вам не нужно помнить о добавлении знаков доллара в ваши формулы!

Ссылки на ячейки вместо жесткого кодирования значений в формулах — не единственный способ сэкономить время в Microsoft Excel. Например, вы можете добавить наиболее часто используемые команды на панель быстрого доступа или изучить некоторые из самых полезных сочетаний клавиш Excel, чтобы не переключаться между клавиатурой и мышью.

Валентин Павлов/ автор статьи
Страсть Влентина к играм началась с Resident Evil, и с тех пор он не переставал играть в хоррор-игры. Пишет экспертные руководства для самых сложных игр и обзоры для самых громких релизов. Является магистром журналистики и имеет степень бакалавра лингвистики. Любимые игры: GTA 5, Silent Hill 2, Call of Duty: Modern Warfare 2, Heavy Rain, Metro 2033 и другие.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий