Кто тут крайний?

Кто тут крайний?

Если бы в электронных таблицах можно было только сложить "два плюс два", то скорее всего мы бы до сих пор пользовались, в лучшем случае, умными программируемыми калькуляторами. Ими и пользоваться проще, и никакого срока для освоения не требуется. Тем не менее, калькуляторы окончательно уступили пальму первенства электронным таблицам. И дело тут вот в чем: калькулятор, даже очень умный, все же оперирует готовыми и однозначно определенными величинами, а в каждой конкретной ячейке таблицы могут находиться не только буквы или цифры, там могут располагаться формулы или, например, ссылки на другие ячейки этой или другой таблицы. Как говорил Штирлиц, это открывает широкие возможности для комбинаций.

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

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

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

Любой товар, везде и во все времена, имеет свою цену, обычно именуемую контрактной. Эта величина постоянная, вернее, неизменная с точки зрения дальнейших расчетов. Поэтому графу "Контракт" можно заполнить вручную любыми числовыми значениями. Как безликие цифры, лично мне, они не очень симпатичны, поэтому их не помешает слегка отформатировать. В меню "ФОРМАТ" есть режим "ЯЧЕЙКИ". Этот режим отвечает за все операции, связанные с изменением внешнего вида самой ячейки или ее содержимого. В данном случае нужно отформатировать ячейки В7:В9 так, чтобы возле конкретного значения стояло обозначение денежной единицы, например, рубля. Для этого на окне "ФОРМАТ ЯЧЕЙКИ" следует выбрать вкладку "Число" . На этой вкладке, слева вверху, расположено окно с общими стилями форматирования, какие только есть в вашей программе. Правда, это еще не означает, что их нельзя расширить, но об этом позже. В нашем случае наиболее подходящим является формат "Финансовый". Вкладка тут же изменит свою форму и спросит лишь о том, какой денежный символ вы желаете поставить и сколько десятичных знаков после запятой являются значимыми. Понятное дело, выбираем рубли (если они не установлены по умолчанию) и игнорируем десятичную часть (уже давно никто не считает копейки по причине их незначительной стоимости в новых условиях).

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

Теперь можно и самой пошлиной заняться. Начать стоит с того, что каждая ячейка в Microsoft Excel 97 (как и в более ранних версиях) может иметь не только буквенно-цифровое (типа А1), но еще и конкретное, удобное и легко распознаваемое наименование. Конечно, можно оперировать и шифром, но, по моему скромному мнению, название ячейки "Таможенная_пошлина" куда более информативно, чем В2. Особенно, если таблица большая, много переменных и всяких формул, этими переменными оперирующих. Вторым достоинством индивидуального наименования ячеек является еще и то, что в дальнейшем такую ячейку можно всюду называть ее именем, даже в формулах. Согласитесь, что выражение "=доход-расход" куда удобнее, чем "=AD34-FF56".

Для того чтобы назначить ячейке имя, нужно выделить эту ячейку и воспользоваться режимом "ИМЯ" из меню "ВСТАВКА". Там есть три варианта: присвоить, создать и заголовки диапазонов. Так как нам нужно присвоить имя одной единственной ячейке, то выберите "Создать". Это приведет вас к мастеру имен . Если непосредственно слева от выделенной ячейки располагается какое-нибудь наименование, то мастер предложит по умолчанию выделенную ячейку назвать так же. Если это не подходит, то в верхней строке мастера вы вольны набрать любое информативное, с вашей точки зрения, имя. Для ориентации тут же показаны все имена ячеек, какие существуют на данном листе таблицы Microsoft Excel. Если вы уже спланировали таблицу изначально и можете точно сказать, каким ячейкам понадобятся имена и какие конкретно, то в нижней строке мастера можно вручную вводить адреса ячеек для каждого нового имени. Только вместо "ОК" надо нажимать "ДОБАВИТЬ".

После присвоения имени внешне ячейка ничем не отличается от безымянной. Но в дальнейшем Microsoft Excel будет присваивать этому имени то значение и тот формат, какими они указаны в ячейке, имеющей данное имя. Предположим, что ставка таможенной пошлины составляет пять процентов. Поэтому в ячейку В2 введем 0,05 и отформатируем в проценты. В столбе "Пошлина" надо набрать формулу, в которой значение цены конкретного наименования товара должно быть умножено на величину таможенной пошлины . Формула начинается со знака равно, потом можно кликнуть по нужной ячейке слева (в нашем случае В7), потом набрать оператор (в данном случае - звездочку, обозначающую умножение) и следующий операнд.

Для того чтобы вставить не просто адрес ячейки, а воспользоваться ее именем, нужно вместо набора аббревиатуры воспользоваться меню "ВСТАВКА" / "ИМЯ" / "Вставить". В появившемся списке выберите необходимое имя, и программа сама вставит его в создаваемую формулу. Если вы в точности воспроизводили все перечисленные операции и экспериментировали с такими же числами, как в примере, то таможня за стулья "попросит" шесть рублей. Теперь, если вам лень повторять эту процедуру с каждой значащей ячейкой, что, впрочем, очень даже понятно, то можно воспользоваться процедурой копирования. Выделите ячейку С7, растяните выделение так, чтобы выделенная область захватила и ячейку С9. Нажмите комбинацию клавиш Ctrl+D. Эта операция называется "заполнить вниз" и означает, что редактор должен скопировать содержимое верхних ячеек выделенного диапазона (выделять можно не только один столбец за раз) вниз во все ячейки соответствующего диапазона. Комбинация Ctrl+R выполняет то же, но вправо от исходной ячейки.

Так как содержимым исходной ячейки в примере было не число, а формула, то редактор перенес ее на весь выделенный диапазон. Кстати, вы увидели еще одно преимущество именной адресации. Дело в том, что изначальная система адресов в Microsoft Excel относительная. Она основана на том, что все ссылки автоматически пересчитываются в своего рода шаги. Например, если в ячейку С3 ввести формулу "=А1-С22", то для редактора она будет означать, что в эту ячейку следует поместить разницу между значением, расположенным на две строки выше и на два столбца левее, и значением, расположенным в том же столбце и на девятнадцать строк ниже. Если указанную формулу скопировать в другую ячейку, то ее значение изменится, потому что по этой схеме источником данных станут другие ячейки.

Можно, конечно, зафиксировать ссылку на конкретной ячейке, если перед номером столбца и перед номером строки поставить знак доллара ($). Такая ссылка является абсолютной. Куда бы вы ни переносили формулу с абсолютной ссылкой, она всегда будет брать данные из одного и того же места. Допускается так же комбинировать абсолютные и относительные адреса, вставляя "доллар" только перед столбцом или только перед строкой.

Применение в формуле индивидуального имени ячейки равнозначно использованию абсолютного адреса этой ячейки. Поэтому при копировании формулы из С7 операцией заполнения вниз редактор переписывал только первый множитель, не меняя второй. Подобный прием удобен, когда нужно ввести в некоторую область (например, строку или столбец) абсолютно одинаковые по принципу формулы. Получается быстро и удобно.

Предположим, что транспортные расходы равны для всех товарных позиций и составляют пять рублей. Конечно, можно было бы отформатировать пятерку так же, как я это проделал с ценой. Однако существует еще один удобный метод, особо подходящий в случаях, когда вам нужно скопировать внешний вид одной или нескольких уже имеющихся ячеек. Для этого нужно выделить ту ячейку, чей формат вы хотите воспроизвести, нажать на правую клавишу мыши для активизации контекстно-зависимого меню и выбрать там операцию копирования. Потом выделить ту ячейку (или их группу), в которую вы хотите скопировать формат, и опять же активизировать контекстное меню мыши. Только вместо операции "Вставить", нужно воспользоваться режимом "Специальная вставка". Это вызовет массу вопросов . Как вы увидите, режим "специальной вставки" позволяет вставлять не только все содержимое ячейки-источника, но и отдельные ее элементы. В нашем случае мы воспользуемся только вставкой формата. Для этого нужно поставить мышью точку против соответствующей надписи и нажать "Ввод". Редактор скопирует только форматы, что и требовалось доказать. Точно так же копируются только формулы, только значения и тому подобное.

В графе "Себест-ть" суммируем все предшествующие графы . Это можно набрать вручную, можно воспользоваться режимом "ФУНКЦИЯ" из меню "ВСТАВКА", словом, как вам больше нравится. Когда закончите с одной ячейкой, через Ctrl+D "заполните вниз" и таблица покажет текущую себестоимость стульев, столов и канделябров .

А все эти премудрости я тут напридумывал не только ради демонстрации всяких возможностей Microsoft Excel 97 (об этом мы еще будем беседовать долго и разнообразно), описанный пример я настоятельно рекомендую самостоятельно набрать в соответствии с описаниями и советами. Дело в том, что личный опыт - он самый убедительный. А на собственном опыте вы можете убедиться, что простое изменение текущего значения ставки таможенной пошлины будет немедленно отражаться на значениях всех ячеек, прямо или косвенно его использующих.

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

Александр Запольскис
E-mail: leshy@nestor.minsk.by
- титульная страница


Компьютерная газета. Статья была опубликована в номере 22 за 1998 год в рубрике soft :: субд

©1997-2024 Компьютерная газета