в Microsoft
Excel 2010
Excel* 2010
Formulas
by John Walkenbach
WILEY
Джон Уокенбах
ДИА Л ЕКТИ КА
М осква • Санкт-Петербург • Киев
2011
ББК 32.973.26-018.2.75
У62
УДК 681.3.07
Компьютерное издательство “Диалектика”
Уокенбах, Джон.
У62 Формулы в Microsoft Excel 2010. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2011. —
704 с .: ил. — Парал. тит. англ.
ISBN 978-5-8459-1704-1 (рус.)
ББК 32.973.26-018.2.75
Все названия программных продуктов являются зарегистрированными торговыми марками соответст
вующих фирм.
Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в какой бы то ни было
форме и какими бы то ни было средствами, будь то электронные или механические, включая фотокопирование
и запись на магнитный носитель, если на это нет письменного разрешения издательства Wiley Publishing, Inc.
Copyright © 2011 by Dialektika Computer Publishing.
Original English language edition Copyright © 2010 by Wiley Publishing, Inc.
All rights reserved including the right of reproduction in whole or in part in any form. This translation is
published by arrangement with Wiley Publishing, Inc.
Научно-популярное издание
Джон Уокенбах
Формулы в Microsoft Excel 2010
Литературный редактор Е.П. Перестюк
Верстка О.В. Романенко
Художественный редактор Е.П. Дынник
Корректор Л.А. Гордиенко
Об авторе 25
Введение 26
Об авторе 25
Введение ~ 26
Глава 3. Имена 89
Что такое имя 89
Область действия имен 90
Ссылки на имена 90
Содержание 9
Рекомендации читателям
Эта книга написана исключительно для версии Excel 2010. Если у вас установлена ка
кая-либо из более старых версий, рекомендую отложить книгу и взять в руки одно из
ранних изданий. Изменения, произошедшие в Excel с выходом версии 2010, весьма су
щественны, поэтому в старой версии вам вряд ли удастся применить материал настояще
го издания.
Для использования примеров, содержащихся на компакт-диске книги, вам потребует
ся привод CD-ROM. Примеры, содержащиеся на прилагаемом компакт-диске, будут опи
саны далее.
Введение 27
Примечание
Я работаю исключительно в Excel для Windows, а не Macintosh. По этой при
чине я не могу гарантировать, что все примеры будут работать в Excel для
Macintosh. Для Excel характерна достаточно неплохая, но все же не идеаль
ная кроссплатформенная совместимость.
Чем быстрее работает ваша система, тем лучше. И естественно, большой объем опе
ративной памяти сделает вашу работу более удобной. Настоятельно рекомендую: на
стройте монитор на работу в режиме высокого разрешения. А еще лучше — установите
два монитора.
Соглашения
Потратьте немного времени на этот раздел, и вы узнаете, какие соглашения и услов
ные обозначения используются в книге1.
Работа с клавиатурой
Клавиатура нужна для того, чтобы вводить формулы. Кроме того, с ее помощью
можно работать с меню и диалоговыми окнами. Этот метод значительно ускорит вашу
работу, особенно если вы хорошо владеете техникой слепой печати.
Листинги формул
Формулы обычно располагаются в отдельной строке и выделяются моноширинным
шрифтом. Ниже приведен пример формулы.
= В П Р (Н ом ерК атегории;П райс-лист; 2 ; ЛОЖЬ)
При описании синтаксиса функций используются подстановки, т.е. названия аргумен
тов, вместо которых должны быть подставлены конкретные значения. Подстановки вы
делены курсивом. Например, приведенная ниже запись означает, что функция ИНДЕКС
принимает аргументы м а с с и в , н о м е р _ с т р о к и и н о м ер _ ст о лб ц а .
ИНДЕКС (массив; номер_строки; номер_столбца)
Курсивом выделяются также специальные термины Excel, определение которых при
водится в тексте.
Excel поддерживает такой специфический тип формул, как формулы массивов. После
ввода такой формулы нажмите <Ctrl+Shift+Enter> (а не просто <Enter>). Excel заключает
такую формулу в фигурные скобки, таким образом напоминая вам о том, что это форму
Примечание
Создавая формулу массива, не вводите фигурные скобки вручную — Excel
сделает это автоматически.
Работа с мышью
В книге используется стандартная терминология для обозначения действий, выпол
няемых с помощью мыши: вы можете “указывать”, “щелкать кнопкой мыши”, “щелкать
правой кнопкой мыши”, “перетаскивать” и т.д.
Введение 29
Мышь — главный инструмент запуска команд с помощью ленты. Команды ленты от
мечаются в книге специальным рубленым шрифтом. Вы часто будете встречать записи
примерно такого вида: Вид^Окно^ Новое окно. Это означает, что на ленте нужно от
крыть вкладку Вид и в группе Окно щелкнуть на кнопке Новое окно. Этим же шрифтом
отмечаются все названия элементов интерфейса, которые вы видите на экране, например
“флажок Включить итеративные вычисления” .
Пиктограммы
В этой книге пометки располагаются над абзацами, к которым они относятся. Отме
ченные абзацы выделены специальным шрифтом. Пометки предназначены для того, что
бы обратить ваше внимание на материал, имеющий важное значение.
Новинка
Данная пометка указывает на нововведения, появившиеся в Excel 2010.
Примечание
Данная пометка привлекает ваше внимание к определенной информации.
Например, в примечании может быть описан новый подход, который помо
жет вам справиться со сложным заданием, или же основополагающий
принцип, необходимый для четкого понимания темы.
Совет
Советы укажут вам новый эффективный путь решения задачи.
Компакт-диск
Эта пометка указывает на то, что прилагаемый к книге компакт-диск содер
жит соответствующий данной теме файл.
Предупреждение
Материал, отмеченный этой пометкой, предостерегает вас от потенциаль
ных ошибок, которые могут возникнуть, если не прочитать данный абзац.
Перекрестная ссылка
Перекрестные ссылки указывают на другие главы, в которых вы найдете бо
лее подробную информацию по рассматриваемой теме или информацию,
имеющую какое-либо отношение к ней.
Структура книги
Систематизируя материал книги, я решил разделить информацию на шесть основных
частей плюс Приложения/Приложения содержат дополнительную информацию, которая
может оказаться весьма полезной.
30 Введение
Глава 22 ознакомит вас с языком и редактором VBA, а глава 23 предоставит основную ин
формацию о пользовательских функциях. Глава 24 освещает некоторые аспекты програм
мирования, а в главе 25 вы найдете примеры пользовательских функций, которые сможете
применить в исходном виде или адаптировать к собственным задачам.
Компакт-диск книги
Эта книга содержит множество примеров, файлы которых собраны на прилагаемом
компакт-диске. Примеры организованы в папки, соответствующие конкретным главам. В
каждой из таких папок вы найдете авторские, а также адаптированные к русскоязычной
версии Excel примеры — последние имеют название главы с дополненным суффиксом
RUS, например C hapterl5__R U S . x l s x .
Файлы примеров хранятся на компакт-диске в несжатом виде, поэтому можете от
крывать их непосредственно с компакт-диска без какой-либо предварительной установ
ки. Все файлы сохранены в формате Excel 2010. Файлы, имеющие расширение * .x ls m ,
содержат макросы VBA. Чтобы использовать эти файлы, нужно предварительно вклю
чить поддержку макросов.
Помимо этого, компакт-диск содержит электронную версию книги на английском
языке. Электронная версия в формате PDF, несомненно, пригодится вам в дальней ко
мандировке.
Перекрестная ссылка
Подробно файлы примеров, содержащиеся на компакт-диске книги, описа
ны в приложении Г.
32 Введение
Обратная связь
Я очень заинтересован в ваших отзывах о моих книгах. Обратную связь со мной луч
ше всего поддерживать с помощью электронной почты. Ваши замечания и предложения
направляйте по такому адресу:
j ohn@j- w a l k . com
К сожалению, я не смогу ответить на конкретные вопросы. Советую выносить возни
кающие вопросы в сетевые конференции, посвященные Excel, и вам обязательно помо
гут. В приложении В вам будет предложено несколько ссылок на такие конференции.
Путешествуя по Интернету, не забудьте заглянуть и на мой сайт:
www. s p r e a d s h e e t s . com
А теперь, не тратя времени даром, переверните страницу и начните повышать свою
квалификацию.
Основные сведения
В этой части...
Глава 1
Знакомство с Excel
Глава 2
Знакомство с формулами
Глава 3
Имена
Глава
Знакомство с Excel
В этой главе...
♦ Краткая история Excel
♦ Концепция объектной модели
♦ Рабочие книги
♦ Интерфейс пользователя Excel 2010
♦ Справочная система
♦ Форматирование ячеек
♦ Таблицы
♦ Формулы и функции электронных таблиц
♦ Объекты графического слоя
♦ Пользовательская настройка Excel
♦ Средства Интернета
♦ Средства анализа
♦ Средства защиты
чинам данная программа не стала популярной в США. Не удивительно, что Lotus 1-2-3
оставила своего конкурента MultiPlan далеко позади.
В некоторой степени MultiPlan можно считать предшественницей Excel. Выпущенная
для платформы Macintosh в 1985 году, программа Excel, подобно другим приложениям
для Macintosh, имела графический интерфейс (в отличие от текстового интерфейса Mul
tiPlan). Первая версия Excel для Windows (она называлась Excel 2, поскольку изначаль
ная версия была разработана для Macintosh) вышла в свет в ноябре 1987 года. Программа
Excel стала популярной не сразу— она совершенствовалась параллельно с Windows.
Вскоре появилась версия Lotus 1-2-3 для Windows. Еще одним конкурентом для Excel
стала Quattro Pro — программа, созданная компанией Borland International для DOS, ко
торая была впоследствии продана компании Novell, а затем перешла в собственность
компании Corel (теперешнего владельца Quattro Pro).
Версии Excel
Excel 2010— это на самом деле всего лишь “псевдоним” версии Excel 14. Однако не
стоит воспринимать ее как четырнадцатую по счету версию программы. Microsoft — очень
успешная компания, но ее нумерация программных продуктов часто приводит в замеша
тельство. Как вы вскоре узнаете, Excel 2010 на самом деле является одиннадцатой версией
продукта. В следующих подразделах будут кратко описаны основные версии Excel.
Excel 2
Исходная версия Excel для Windows — Excel 2 — вышла в конце 1987 года. Эта вер
сия программы получила название “номер 2”, поскольку версия “номер 1” была разрабо
тана для Macintosh. В то время операционная система Windows еще не имела такого ши
рокого распространения. Поэтому к Excel прилагалась оперативная версия Windows —
операционная система, которая обладала функциями, достаточными для запуска Excel.
По нынешним стандартам эта версия Excel кажется недоработанной (рис. 1.1).
/
Excel 3
В 1990 году компания Microsoft выпустила Excel 3 для Windows. Эта версия обладала
более совершенными инструментами и привлекательным внешним видом. В Excel 3 поя
вились панели инструментов, средства рисования, режим структуры рабочей книги, над
стройки, трехмерные диаграммы, функция совместного редактирования документов и
многое другое.
Excel 4
Excel 4 вышла в свет весной 1992. Появление этой версии программы оказало значи
тельное влияние на рост популярности Windows. Excel 4 обладала рядом новых функций.
Кроме того, она была значительно удобнее в использовании, и теперь начинающие поль
зователи могли достаточно быстро освоить незнакомую для них программу.
Excel 5
В начале 1994 года на рынке появилась Excel 5. Эта версия предлагала пользователям
огромное количество новых средств, включая многолистовые книги и новый макроязык
Visual Basic for Application (VBA). Как и предшествующая версия, Excel 5 получала наи
лучшие отзывы во всех отраслевых изданиях.
38 Часть I. Основные сведения
Рис. 1.1. Исходная версия Excel 2 для Windows. С тех пор программа претерпела
значительные изменения (фотография предоставлена Microsoft Corporation)
Excel 95
Версия Excel 95 (также известная как Excel 7) была выпущена летом 1995 года.
Внешне она напоминала предыдущую (в Excel 95 появилось лишь несколько новых
средств). Однако выход этой версии все же имел большое значение, поскольку в Excel 95
впервые был использован более современный 32-разрядный код. В Excel 95 и Excel 5 ис
пользовался один и тот же формат файлов.
Excel 97
Версия Excel 97 (также известная как Excel 8) была значительно усовершенствована
по сравнению с предыдущими версиями. Изменился внешний вид панелей инструментов
и меню, справочная система была организована на качественно новом уровне, количест
во строк рабочей книги увеличилось в четыре раза. Если вы занимаетесь программиро
ванием макросов, то, вероятно, заметили бы, что рабочая среда VBA была значительно
усовершенствована. В Excel 97 появился новый формат файлов.
Excel 2000
Excel 2000 (также известная как Excel 9) появилась в июне 1999 года. Эта версия ха
рактеризовалась незначительным расширением возможностей. Немаловажным преиму
ществом новой версии стала возможность использования HTML в качестве альтернатив
ного формата файлов. В Excel 2000, конечно же, поддерживался и стандартный двоич
ный формат файлов, совместимый с Excel 97.
Глава 1. Знакомство с Excel 39
Excel 2002
Версию программы Excel 2002 (также известную как Excel 10 или Excel ХР) выпус
тили в июне 2001 года. Она составляет часть пакета Microsoft Office ХР. В этой версии
присутствует несколько новых функций, предназначенных, прежде всего, для начинаю
щих пользователей Excel. Основным нововведением Excel 2002 стала возможность со
хранения результатов работы в случае аварийного завершения программы и восстанов
ления файлов поврежденной рабочей книги, над которой вы когда-то работали. В новой
версии Excel появилась также фоновая проверка формул, а также новые инструменталь
ные средства отладки.
Excel 2003
Excel 2003 (также известная как Excel 11) появилась на рынке в конце 2003 года. Внее
было добавлено немного новых средств. Одной из самых заметных новых функций была
возможность импортировать данные из файлов XML и экспортировать их в эти файлы,
а также отображать данные XML на определенные ячейки рабочего листа. Также в этой
версии была введена концепция списка— особым образом организованного диапазона
ячеек. Обе эти функции стали “кандидатами” на дальнейшее усовершенствование.
Excel 2007
Excel 2007 (также известная как Excel 12) была выпущена в начале 2007 года. Офици
альное название этой программы — Microsoft Office Excel 2007. Эта версия программы
стала наибольшим прорывом со времен выхода версии Excel 97. Одним из самых замет
ных нововведений стал новый формат файлов рабочих книг, основанный на технологиях
XML. В то же время остался доступным и старый двоичный формат файлов. Еще одним
заметным новшеством стала лента — новый тип интерфейса пользователя, пришедший
на замену старой системе каскадных меню и панелей инструментов. В дополнение к это
му была усовершенствована концепция списка, введенная в версии Excel 2003 (теперь
этот способ организации данных стал называться таблицей), улучшен внешний вид диа
грамм, существенно увеличено количество доступных строк и столбцов на рабочем листе
и добавлено несколько новых функций рабочего листа.
Примечание
В документе XML (extensible Markup Language) данные хранятся в структу
рированном текстовом формате. Новые форматы файлов на самом деле
представляют собой сжатые папки, содержащие несколько различных фай
лов XML. По умолчанию расширением файлов рабочих книг Excel является
. x s 1х. Одновременно доступен формат . x s lm , поддерживающий макросы,
двоичный формат с расширением . x l s b и старый формат . x l s .
Excel 2010
Текущая версия, Excel 2010 (другое название— Excel 14), выпущена в начале 2010
года. Куда же подевалась версия 13? Внятных разъяснений от Microsoft нет. Видимо, да
же такая большая компания, как Microsoft, может быть подвержена предрассудкам.
Большинство пользователей считают, что компания просто решила пропустить несчаст
ливое число 13.
Версия 2010 содержит все улучшения, введенные в Excel 2007. Кроме того, в нее добавлен
ряд новых средств, о которых будет подробно рассказано в соответствующих главах.
40 Часть I. Основные сведения
Новинка
Ниже перечислены новые средства, добавленные в Excel 2010.
Рабочие книги
Основным документом Excel является рабочая книга. Все, что вы делаете в Excel,
происходит именно в рабочей книге.
Начиная с версии Excel 2007 файлы рабочих книг фактически являются сжатыми
папками. Если вы когда-либо открывали файл с расширением . z i p , то, наверное, уже
знакомы с концепцией сжатия. Внутри файла . z i p хранится несколько файлов, в кото
рых находится вся информация рабочей книги, в том числе диаграммы, макросы, форма
тирование и данные ячеек.
Рабочая книга Excel может содержать любое количество листов (их количество огра
ничено только объемом памяти). Существует четыре типа листов:
• рабочие листы;
• листы диаграммы;
• листы макросов Excel 4.0 (устаревшие, но все еще поддерживаемые);
• листы диалоговых окон Excel 5.0 (также устаревшие, но все еще поддерживаемые).
Можно открыть любое количество книг (каждую в отдельном окне), но активной кни
гой в текущий момент может быть только одна из них. Аналогично, только один лист книги
может быть активным листом. Для того чтобы активизировать другой лист, щелкните на
42 Часть I. Основные сведения
Рабочий ли ст
Наиболее распространенный тип листа — это рабочий лист. Его мы чаще всего под
разумеваем, говоря об электронной таблице. Каждый рабочий лист Excel 2010 имеет
16 384 столбцов и 1 048 576 строк. После многих лет запросов сообщества пользовате
лей компания Microsoft наконец-то соблаговолила существенно увеличить число доступ
ных строк и столбцов.
Примечание
Рабочие листы версий программы, предшествовавших Excel 2007, поддер
живали только 256 столбцов и 65 536 строк. Если открыть такой файл, Ex
cel 2010 перейдет в режим совместимости с предыдущими версиями, и вы
сможете работать с рабочим листом такого размера. Чтобы расширить та
кой рабочий лист до новых размеров, вам придется сохранить файл в фор
мате Excel 2010, затем закрыть рабочую книгу и снова открыть ее.
Вы имеете полный контроль над видимыми размерами ячеек, можете даже скрывать
их. Содержимое ячеек может отображаться как вертикально, так и под заданным углом.
Ячейка может содержать несколько строк. Кроме того, ячейки можно объединять, полу
чая таким образом одну большую ячейку.
Примечание
По умолчанию каждая новая рабочая книга состоит из трех рабочих листов.
Добавить новый рабочий лист можно в любой момент, поэтому начинать но
вую книгу с трех рабочих листов нет необходимости. Можно изменить уста
новленное по умолчанию количество листов таким образом, чтобы каждая
новая книга состояла всего из одного рабочего листа. Для этого выберите
команду Файл^Параметры Excel, перейдите во вкладку Общие и измените
значение в поле Число листов.
Листы диаграмм
Лист диаграммы состоит из одной диаграммы. Многие пользователи предпочитают
создавать вместо листов диаграмм внедренные диаграммы, которые хранятся на графи
ческом слое обычного рабочего листа с данными. Разумеется, вовсе не обязательно ис
пользовать листы диаграмм, однако с их помощью проще распечатать диаграмму на от
дельной странице, что особенно важно при подготовке презентаций. Внедренные (или
плавающие) диаграммы описаны далее.
Лента
Лента представляет собой основной элемент интерфейса Excel. Она заменила собой
систему меню и большинство панелей инструментов, существовавших в предыдущих
версиях. Это самое значительное отступление от стандартного интерфейса, свойственно
го Windows-программам.
Примечание
Некоторые команды все же не поместились на ленте, и у вас может сложиться
впечатление, будто их не стало. Однако вся хитрость заключается в том, что
они существуют, но пользователю нужно знать, где их искать. Щелкните пра
вой кнопкой мыши на панели быстрого доступа и выберите в контекстном ме
ню пункт Настройка панели быстрого доступа. Откроется диалоговое окно со
списком команд, которые можно разместить на панели быстрого доступа. Не
которые из этих команд недоступны ни в каком другом месте интерфейса
пользователя. Можно также добавить команды на ленту. Для этого щелкните
правой кнопкой мыши на ленте и выберите пункт Настройка ленты.
Навигация
Навигацию по ленте легче всего осуществлять с помощью мыши. Щелкните на
вкладке, а затем — на нужном инструменте. Если вы предпочитаете использовать кла
виатуру, эту возможность компания Microsoft для вас сохранила. Нажав клавишу <Alt>,
вы увидите под вкладками буквы “горячих” клавиш, с помощью которых можно будет их
“открыть”. В открывшейся вкладке будут отображены горячие клавиши, соответствую
щие конкретным командам. При нажатии клавиши будет выполнена соответствующая
команда. Нажатие клавиши <Esc> отменяет предыдущее нажатие клавиши.
К примеру, нажатие клавиш <Ак+Я+И+1+Ж> (<Alt+H+B+B>) приведет к добавле
нию границы в нижней части выделенного фрагмента. В данном случае клавиша <Alt>
46 Часть I. Основные сведения
Контекстные вкладки
Лента содержит несколько вкладок, которые отображаются только тогда, когда в них
возникает потребность. Обычно они отображаются тогда, когда на рабочем листе выде
лен элемент или диапазон со специфичными характеристиками (например, диаграмма
или сводная таблица.) Типичным примером является контекстная вкладка Средства ри
сования. Если выделить фигуру или объект WordArt, эта вкладка становится видимой
и активной. В ней содержится множество инструментов, которые применимы только к
фигурам (например, средства форматирования фигур).
Вкладка Файл
Большая круглая кнопка Office, которая была в Excel 2007, в Excel 2010 заменена
вкладкой Файл. При щелчке на корешке вкладки Файл открывается окно, показанное
Глава 1. Знакомство с Excel 47
на рис. 1.3. В нем можно выполнять большинство операций над документом Excel, таких
как создание рабочей книги, открытие и сохранение файлов, печать и т.д.
На левой панели вкладки Файл приведен список категорий (часто их тоже называют
вкладками). Например, при щелчке на категории Последние открывается список откры
вавшихся документов со значками рядом с каждым элементом списка. С помощью знач
ка документ можно закрепить в верхней части списка, где он будет оставаться независи
мо от того, сколько других файлов было открыто или закрыто.
В нижней части списка категорий приведен пункт Параметры. При щелчке на нем
открывается диалоговое окно Параметры Excel, предназначенное для настройки рабо
чей среды Excel.
Рис. 1.4. При щелчке правой кнопкой на диапазоне ячеек открывается контекстное меню и ми
ни-панель инструментов
Смарт-теги
.Смарт-тег — это небольшой значок, который автоматически отображается на рабо
чем листе после выполнения некоторых действий. Щелчок на этом значке приводит
к открытию меню, содержащего несколько команд.
К примеру, если вы скопировали и вставили диапазон ячеек, Excel отображает смарт-
тег под вставляемым диапазоном (рис. 1.5). В Excel встроено также много других смарт-
тегов; некоторые смарт-теги поставляются сторонними производителями.
Панель задач
В версии Excel 2002 была впервые представлена панель задач. Это элемент интер
фейса пользователя, который обычно прикрепляется к правой границе окна Excel (при
50 Часть I. Основные сведения
желании вы можете перетащить ее в другое место). Панель задач используется для мно
жества целей, в том числе для отображения буфера обмена Office, обеспечения помощи
в исследованиях, отображения полей сводной таблицы и данных XML. На рис. 1.6 пока
зана панель задач, открываемая при вставке клипов.
Перетаскивание данных
Функция перетаскивания данных графического интерфейса программы позволяет
свободно перемещать объекты, расположенные на рабочем листе. Нажатие клавиши
<Ctrl> при перемещении объекта приводит к его копированию. Перетаскивать можно та
кие объекты, как фигуры, внедренные диаграммы, объекты SmartArt и т.д.
Excel позволяет также перетаскивать ячейки и диапазоны. И в этом случае нажатие
клавиши <Ctrl> при перетаскивании приводит к копированию.
Примечание
Возможность перетаскивания ячеек можно отключить. Для этого откройте
диалоговое окно Параметры Excel, перейдите во вкладку Дополнительно ив-
разделе Параметры правки снимите флажок Разрешить маркеры заполнения
и перетаскивание ячеек.
Комбинации клавиш
Наряду с горячими клавишами, используемыми для навигации по ленте, Excel пред
лагает множество других комбинаций клавиш для непосредственного выполнения ко
манд. Например, скопировать выделенные элементы в буфер обмен можно, нажав
<Ctrl+C>. Если вы начинающий пользователь Excel или же просто хотите научиться ра
ботать эффективнее, воспользуйтесь справочной системой Excel. Справочная система
содержит описание полезных комбинаций клавиш, используемых для быстрого выпол
нения команд в электронной таблице.
Глава 1. Знакомство с Excel 51
Для упрощения перехода с предыдущих версий на Excel 2010 компания Microsoft вклю
чила возможность использования горячих клавиш Excel 2003. Работа многих пользователей
Excel, привыкших к навигации по старой системе меню с помощью горячих клавиш, поте
ряет свою эффективность, если им придется полагаться исключительно на новую ленту.
Если нажать клавишу <Alt> одновременно с какой-либо буквой, не являющейся частью
ленты, но приводившую к выполнению какой-либо команды в Excel 2003, в верхней части
окна Excel откроется экранная подсказка (рис. 1.7). Если после этого нажать клавишу <R>,
в данном случае будет открыто диалоговое окно консолидации данных.
Примечание
Формулы всегда начинаются со знака равенства (=).
Справочная система
Одной из наиболее важных особенностей Excel 2010 является мощная справочная
система. Значок справки в виде голубого круга с вопросительным знаком находится
в правом верхнем углу окна программы. Щелчок на этом значке или нажатие
клавиши <F1> приводит к отображению окна справки, показанного на рис. 1.8.
Два основных метода навигации по справочной системе сводятся к использова
нию текстового поля Поиск и пункта Оглавление. Ввод ключевых слов в поле по
иска и щелчок на кнопке Поиск приведет к отображению в главном окне соответст
вующих статей справочной системы. В оглавлении перечислено множество связан
ных по темам статей справочной системы. Окно оглавления, когда оно не
используется, может быть скрыто. Обратите внимание, что кнопка Поиск на самом
деле представляет собой элемент раскрывающегося списка. Щелкните на маленькой
стрелке, и вы сможете выбрать тип необходимой справки. По умолчанию содержи
мое справки загружается с сайта Microsoft Office Online. Если у вас нет доступа к
Интернету или вы хотите ограничиться статьями справки, установленными на вашем
компьютере, щелкните на кнопке Автономная работа в правом нижнем углу окна
справки (см. рис. 1.8). Откроется небольшое меню, которое позволит определить,
какая именно справочная система будет использоваться. В этом же меню содержит
ся значок, открывающий справку по справочной системе (странное словосочетание
“справка о справке” в данном случае вполне уместно).
54 Часть I. Основные сведения
Форматирование ячеек
В Excel существует два типа форматов ячеек: числовой и стилевой.
Числовое форматирование
От числового форматирования зависит то, как значение будут представлено в ячейке.
В Excel существует целый ряд стандартных числовых форматов. Кроме того, во вкладке
Число диалогового окна Формат ячейки можно создавать и собственные числовые
форматы. Для активизации этого диалогового окна щелкните на кнопке со стрелкой
в правом конце заголовка группы Число вкладки Главная.
Перекрестная ссылка
© Дополнительную информацию о том, как создавать собственные числовые
форматы, можно найти в приложении Б.
Числовой формат не влияет на само значение, которое находится в ячейке. Предполо
жим, ячейка содержит значение 3 , 1 4 1 5 9 . Если задать такой формат, при котором ото
бражаются только два десятичных разряда, в ячейке будет отображена запись 3 , 1 4 . В то
же время в формуле будет использоваться фактическое значение ячейки ( 3 , 1 4 1 5 9 ) .
Глава 1. Знакомство с Excel 55
Стилевое форматирование
Стилевое форматирование используется исключительно для того, чтобы придать со
держимому ячеек требуемый внешний вид (цвет, начертание, границы, выравнивание
и т.д.)- Группы Главная^Шрифт и Главная^Стили содержат все команды, необходи
мые для форматирования ячеек и диапазонов.
В Excel 2007 была введена новая концепция, называемая темами документов. Темы
позволяют одним мановением руки применить множество параметров форматирования,
таких как шрифты, цвета и стили ячеек. Параметры форматирования, содержащиеся
в теме, установлены так, чтобы органично сочетаться друг с другом. Применив тему,
можно быть уверенным в гармоничном сочетании цветов. Все команды, связанные с те
мами, находятся в группе Темы вкладки Разметка страницы.
Стоит обратить внимание и на функцию условного форматирования Excel. Этот удобный
инструмент позволяет назначить объекту определенный стиль форматирования, который
применяется только при определенных условиях. Например, можно назначить красный цвет
заливки ячейке, содержащей отрицательное число. В Excel 2007 введено множество новых
параметров условного форматирования, а в Excel 2010 они существенно улучшены.
_ Перекрестная ссылка
fcLsr Более подробную информацию об условном форматировании можно найти
в главе 19.
Таблицы
Таблицей называют специально назначенный диапазон ячеек на рабочем листе Ex
cel 2010. Преобразование диапазона ячеек в таблицу существенно упрощает выполнение
множества операций над данными.
Данные в таблице связаны особым образом. Строки представляют связанные объек
ты, а столбцы — связанные элементы информации о каждом из этих объектов. Если,
к примеру, у вас есть таблица книг, содержащихся в библиотеке, каждая строка будет со
держать информацию об одной книге. Столбцы могут включать заголовок, имя автора,
издателя, дату публикации и т.п. В терминологии баз данных в этом случае строки назы
ваются записями, а столбцы — полями.
Если на рабочем листе данные организованы описанным выше образом, их можно
преобразовать в таблицу. Для этого нужно выделить диапазон и выбрать команду Встав-
ка^Таблицы^Таблица. Excel автоматически вставит обобщенные заголовки столбцов,
если таковые не существуют, цветовую заливку и раскрывающиеся списки заголовков.
Эти раскрывающиеся списки, равно как и контекстная вкладка Работа с таблицами на
ленте, обеспечивают быстрый доступ к связанным с таблицами функциям, таким как
сортировка, фильтрация и форматирование. К тому же использование формул в таблицах
имеет ряд существенных преимуществ.
Не пугайте понятия “таблица” и “электронная таблица”. Электронной таблицей принято
называть рабочий лист Excel, а таблицей — диапазон ячеек, определенный, как описано
в предыдущем абзаце.
Перекрестная ссылка
Таблицы подробно рассматриваются в главе 9.
56 Часть I. Основные сведения
Перекрестная ссылка
Функции рабочего листа подробно описаны в главе 4.
Перекрестная ссылка
Глава 3 полностью посвящена именам.
Фигуры
У вас есть возможность вставить на рабочий лист множество разнообразных фигур.
Их выбор выполняется с помощью командной кнопки Фигуры, расположенной в группе
Иллюстрации вкладки Вставка. После вставки фигуры на лист ее можно модифициро
вать, выделяя ее и перетаскивая отображаемые маркеры. К фигурам также можно приме
нять стили, эффекты заполнения и трехмерные эффекты, а группирование множества фи
гур в единый графический объект облегчает изменение его размеров и местоположения.
Иллюстрации
Изображения, клипы и объекты SmartArt можно вставить из группы Иллюстрации
вкладки Вставка. На рис. 1.9 показаны некоторые объекты графического слоя рабочего
листа, включая объекты группы Иллюстрации.
Элементы управления
На рабочий лист можно вставить множество различных элементов управления. Формаль
но их можно разделить на две категории: элементы управления форм и элементы ActiveX.
Использование элементов управления способно значительно повысить эффективность работы
с листом, часто даже без использования макросов. Чтобы вставить элемент управления, выбе
рите на ленте команду РазработчикаЭлементы управления^Вставить. На рис. 1.10 по
казан рабочий лист с несколькими элементами управления (флажок, две группы переклю
чателей, полоса прокрутки и др.), добавленными на лист.
Примечание
Вкладка Разработчик по умолчанию не отображается. Для отображения этой
вкладки откройте окно параметров программы и во вкладке Настройка лен
ты установите флажок Разработчик.
Компакт-диск
Для того чтобы увидеть элементы управления в работе (см. рис. 1.10), от
кройте файл w o r k s h e e t c o n t r o l s . x s l x (C h a p te r0 1 _ R U S . x s lm ) на прила
гаемом компакт-диске.
Диаграммы
Excel — превосходная среда для построения диаграмм. Как уже отмечалось, диа
граммы могут храниться на листе диаграмм или располагаться на текущем рабочем лис
те в качестве плавающих объектов.
В Excel любая диаграмма может изменяться, чтобы максимально соответствовать
требованиям пользователя. При выделении диаграммы на ленте отображается контекст
ная вкладка, содержащая все инструменты, необходимые для коррекции диаграммы. На
жав клавиши <Ctrl+l>, можно открыть диалоговое окно форматирования выделенных
элементов диаграммы. Щелчок правой кнопкой мыши на объекте диаграммы приводит к
открытию контекстного меню.
Создать плавающую диаграмму нетрудно. Выделите данные, на основе которых стро
ится диаграмма, и щелкните на соответствующем типе диаграммы в группе Диаграммы
вкладки Вставка.
Перекрестная ссылка
Глава 17 содержит дополнительную информацию о диаграммах.
Спарклайны
Спарклайн— это диаграмма, расположенная в одной ячейке. Обычно спарклайны
располагают в нескольких соседних ячейках, чтобы визуально продемонстрировать
тренды данных (рис. 1.11).
Макросы
Язык программирования V B A — мощный инструмент, позволяющий Excel выпол
нять такие задачи, осуществить которые иными средствами чрезвычайно сложно или во
обще невозможно. С помощью VBA создаются следующие основные типы макросов:
• макросы, автоматизирующие операции в Excel;
• макросы, которые функционируют в качестве пользовательских функций и при
меняются при вычислении формул на рабочем листе.
Глава 1. Знакомство с Excel 59
Перекрестная ссылка
Часть VI этой книги посвящена созданию пользовательских функций с по
мощью VBA.
Надстройки
Надстройка — это программа, подключаемая к Excel и расширяющая возможности
основной программы. Например, в надстройке можно хранить пользовательские функ
ции электронных таблиц. Для подключения надстройки выберите в окне параметров
программы вкладку Надстройки.
К Excel прилагается только несколько надстроек. Можно также приобрести или за
грузить из Интернета большое количество иных надстроек. Одна из них — пакет Power
Utility Рак, созданный автором этой книги и получивший множество наград. Ознакоми
тельную (бесплатную), а также полную (платную) версию пакета можно загрузить с мое
го сайта h t t p : / / s p r e a d s h e e t p a g e . com.
Перекрестная ссылка
В главе 23 вы узнаете, как создавать собственные надстройки, содержащие
дополнительные функции рабочего листа.
Средства Интернета
Excel содержит множество функций, связанных с Интернетом. К примеру, можно сохра
нить рабочий лист или вообще всю книгу в формате HTML, доступном для браузеров. Можно
также вставлять в ячейки рабочего листа гиперссылки, включая электронные адреса.
60 Часть I. Основные сведения
Средства анализа
В Excel встроены мощные средства анализа данных. Большинство пользователей при
меняют электронные таблицы именно с целью анализа. С помощью формул решаются мно
гие задачи. В то же время в арсенале Excel имеется целый ряд других средств, предназна
ченных для проведения анализа. Об этих средствах речь пойдет в следующих разделах.
Перекрестная ссылка
В главе 9 приведена дополнительная информация о списках и базах данных
рабочего листа.
Excel может автоматически вставлять (а также удалять) формулы промежуточных
итогов в таблицах, настроенных как база данных. Кроме того, Excel автоматически фор
мирует структуру данных, чтобы вы могли видеть только промежуточные итоги на нуж
ном уровне детализации.
Структура таблицы
Режим структуры таблиц особенно удобен при работе с иерархически упорядочен
ными данными, например бюджетными сведениями. Excel может создать подходящую
структуру автоматически, исходя из формул таблицы (для этого используется команда
Глава 1. Знакомство с Excel 61
Рис. 1.12. Функция фильтрации облегчает просмотр записей, которые удовлетворяют задан
ному критерию
Управление сценариями
Управление сценариями — это процесс сохранения входных величин, которые со
ставляют определенную модель. Например, вы подготовили прогноз сбыта продукции.
Этот прогноз может включать сценарии наиболее благоприятного, наименее благопри
ятного и наиболее вероятного сценариев развития событий.
Наиболее эффективно управление сценариями осуществляет диспетчер сценариев.
Учитывайте, что Excel может решать только самые простые задачи управления сцена
62 Часть I. Основные сведения
риями. Тем не менее использовать функцию управления сценариями Excel гораздо удоб
нее, чем пытаться согласовать несколько сценариев вручную.
Сводные таблицы
Сводные таблицы — довольно мощное инструментальное средство Excel. Они позво
ляют отображать сводные данные в любой форме. Данные для сводной таблицы можно
взять из табличной или внешней базы данных и хранить в специальном кеше. В резуль
тате программа быстро пересчитает данные в случае изменения сводной таблицы.
Перекрестная ссылка
Глава 18 содержит дополнительную информацию о сводных таблицах.
Перекрестная ссылка
Более полная информация о функциях проверки данных программы Excel
содержится в главе 21.
Средства защиты
В Excel существует несколько средств защиты данных. Например, можно защитить
формулы от перезаписи или изменения, защитить структуру рабочей книги, а также за
щитить код VBA.
Примечание
По умолчанию все ячейки являются заблокированными. Однако блокировка
и разблокировка ячеек бессмысленна, если не защищен рабочий лист.
Когда вы защищаете рабочий лист, диалоговое окно Защита листа (рис. 1.14) позво
ляет выбрать и те элементы, которые не должны защищаться. Например, можно разре
шить пользователям сортировать данные или использовать автофильтр при работе с за
щищенным листом (в предыдущих версиях программы это было невозможно).
Предупреждение
© Не забывайте о том, что функции защиты Excel несовершенны. Даже если
установлен пароль, защитить компоненты книги удастся только от рядовых
пользователей. Тот, кто действительно заинтересован в том, чтобы взло
мать защиту вашей книги, скорее всего, добьется желаемого результата
с помощью существующих программ взлома паролей.
Рис. 1.15. Диалоговое окно За Рис. 1.16. В диалоговом окне Шифро
щита структуры и окон вание документа рабочую книгу можно
защитить паролем
Глава
Знакомство
с формулами
В этой главе...
♦ Ввод и редактирование формул
♦ Использование операторов в формулах
♦ Порядок вычисления формул
♦ Ссылки на ячейки и диапазоны ячеек
♦ Создание точной копии формулы
♦ Преобразование формул в значения
♦ Сокрытие формул
♦ Ошибки в формулах
♦ Работа с циклическими ссылками
♦ Функция подбора параметра
Эта глава является своего рода введением в такую обширную тему, как использова
ние формул в Excel. Несмотря на то что изложенная информация в первую очередь адре
сована начинающим пользователям Excel, некоторые сведения могут оказаться полез
ными даже опытным пользователям.
Элементы формул
Формула, вводимая в ячейку, может состоять из пяти типов элементов.
• Операторы. Символы, такие как “+” (сложение) и (умножение).
• С сы лки на ячейки. В эту категорию входят именованные ячейки и диапазоны,
относящиеся к текущему рабочему листу, ячейкам другого листа текущей книги и
даже ячейкам листа другой рабочей книги.
• Значения и текстовы е строки. Например, 7 , 5 или " Р е з у л ь т а т ы н а к о н е ц
года".
• Ф ункции и аргументы функций. К этой категории относятся такие функции, как
СУММ, СРЗНАЧ и др., а также их аргументы.
• Скобки. Задают порядок выполнения операций в формуле.
Ввод формул
Когда вы вводите в пустую ячейку знак равенства, программа воспринимает следующую
за этим знаком запись как формулу. В Excel формулы всегда начинаются со знака равенства.
В начале формулы допускается также использование знаков “плюс” и “минус”. Однако Excel
автоматически вставит знак равенства, как только вы закончите вводить формулу.
Excel также воспринимает символы, привычные для пользователей Lotus 1-2-3
(например, “собачка” — @). Этот символ может открывать формулу, которая начинается
с функции. Например, программа распознает обе приведенные ниже формулы:
=СУММ(А 1 :А2 0 0)
@СУММ(А 1 :А2 0 0)
Однако после ввода второй формулы программа автоматически заменит символ @ на
знак равенства. Ввести формулу в ячейку можно двумя способами: вручную или указав
ссылки на ячейки. Оба метода описаны в следующих разделах.
Примечание
Исключение составляют формулы массивов. По окончании ввода формул
массива следует нажать комбинацию клавиш <Ctrl+Shift+Enter>. О формулах
массивов речь пойдет в части IV.
После нажатия клавиши <Enter> в ячейке будет отображаться результат выполнения
формулы. Сама же формула будет отображена в строке формул, когда активизирована
соответствующая ячейка.
Вставка имен
В главе 3 речь пойдет о том, как присвоить имя ячейке или диапазону. Например,
чтобы присвоить имя ячейке, щелкните на ней правой кнопкой мыши и выберите коман
ду Присвоить имя. Если в формуле используются именованные ячейки или диапазоны,
то можно задать имя вместо адреса. Имя следует выбрать из списка, тогда программа
автоматически вставит его в формулу.
Для вставки имени в формулу поместите курсор в то место формулы, в котором
должно находиться имя, а затем воспользуйтесь любым из следующих методов.
• Нажмите клавишу <F3>, чтобы открыть диалоговое окно вставки имени. Выбери
те имя из списка и щелкните на ОК.
• Выберите команду Формулы^Определенные именам Использовать в формуле.
В открывшемся списке имен выберите нужное имя, и оно будет вставлено в формулу.
• Воспользуйтесь преимуществами функции автозавершения. При вводе очередной
буквы во время ввода формулы программа Excel отображает список подходящих
вариантов имен и функций. С помощью клавиши <i> выберите нужное имя, а за
тем нажмите <ТаЬ>, чтобы вставить имя в формулу.
ние данных и при этом не влияют на результат формулы. Для того чтобы задать разрыв
строки, нажмите комбинацию клавиш <Alt+Enter>. На рис. 2.1 показана формула, в ко
торой использованы пробелы и разрывы строк.
Совет
Чтобы в строке формулы отображалось несколько строк, перетащите ее
нижнюю границу вниз.
Перекрестная ссылка
О том, как создавать пользовательские функции, читайте в части VI.
Примеры формул
Следуя представленным выше инструкциям, вы сможете создать разнообразные фор
мулы. В этом разделе будет приведено несколько примеров формул.
Компакт-диск
Все примеры этой главы содержатся в файле c h a p t e r 2 _ R U S . x s l x на при
лагаемом компакт-диске.
• Следующая формула используется для умножения чисел 15 0 и 0 , 0 1 . Результат
вычисления— 1 , 5 . В этой формуле были использованы только константы, по
этому особой ценности она не имеет (вместо формулы можно было просто ввести
значение 1 , 5).
=150*,01
• С помощью следующей формулы складываются значения ячеек А1 и А 2:
=А1+А2
• Следующая формула предназначена для вычитания значения ячейки с именем
Р асх о д ы из значения ячейки с именем Доходы:
=Доходы-Расходы
Глава 2. Знакомство с формулами 69
Редактирование формул
Если необходимо внести изменения в рабочий лист, вам, возможно, придется редак
тировать формулы. Если же формула возвращает одно из значений ошибки (описанных
далее), то ее необходимо исправить. Отредактировать формулу можно так же, как и зна
чение любой другой ячейки.
Режим редактирования ячейки активизируется несколькими способами.
• Дважды щелкните на ячейке. Это позволит внести изменения непосредственно
в ячейке. Данный способ работает только в том случае, если во вкладке Дополни
тельно диалогового окна параметров программы установлен флажок Разрешить
редактирование в ячейках.
• Щелкните на ячейке и нажмите клавишу <F2>. В результате вы сможете ре
дактировать содержимое непосредственно в ячейке. Если же флажок Разрешить
редактирование в ячейках снят, редактирование будет осуществляться в строке
формул.
• Выделите ячейку с формулой, подлежащей редактированию, и щелкните мы
шью в строке формул. После этого приступайте к редактированию в строке формул.
В режиме редактирования формулы можно выделить несколько символов, проведя по
ним указатель мыши. То же можно сделать, нажимая клавиши стрелок при нажатой клави
ше <Shift>. Если нужно выделить фрагмент формулы от положения курсора до начала или
конца текущей строки, нажмите, соответственно, клавиши <Shift+Home> или <Shift+End>.
Совет
Предположим, в длинной формуле присутствует ошибка. Программа не по
зволит работать с данной формулой. Не сможете вы также перейти к другой
ячейке, потому что при каждой попытке выйти из ячейки будет появляться
диалоговое окно с сообщением об ошибке. В таком случае рекомендуется
преобразовать формулу в текст и вернуться к ней позже. Для того чтобы
преобразовать формулу в текст, просто удалите знак равенства (=). Когда вы
захотите разобраться с этой формулой, снова вставьте знак равенства,
и содержимое ячейки будет автоматически преобразовано в формулу.
70 Часть I. Основные сведения
Операторы ссылки
Excel поддерживает еще один класс операторов — так называемые операторы ссыл
ки. Операторы ссылки, перечисленные в табл. 2.2, используются в ссылках на ячейки.
• Последняя формула возвращает значение ИСТИНА только в том случае, если обе
ячейки — А1 и А2 — содержат значения, меньшие 100.
= И (А 1<100;А 2 < 1 0 0 )
Приоритет операторов
В формулах можно (и рекомендуется) использовать скобки, чтобы контролировать
порядок выполнения вычислений. В качестве примера рассмотрим следующую формулу,
которая содержит ссылки на именованные ячейки:
=Доход-Расход*Налог
Эта формула предназначена для того, чтобы вычесть значение расходов из значения
доходов и затем умножить результат на величину налоговой ставки. Если вы введете
формулу в том виде, в котором она приведена выше, Excel выдаст некорректный резуль
тат. Программа умножит расходы на процентную ставку, а результат вычтет из дохода.
Правильный результат вернет формула, записанная следующим образом:
= (Доход-Расход)*Налог
Для того чтобы понять принцип, в соответствии с которым следует расставлять скоб
ки, необходимо ознакомиться понятием приоритетов. Приоритет операторов — это на
бор правил, определяющих последовательность выполнения операций. Изучив табл. 2.3,
вы узнаете, какой приоритет имеет каждый из операторов Excel. Чем выше в табл. 2.3
приведен оператор, тем выше его приоритет. К примеру, умножение выполняется рань
ше вычитания.
Вложенные скобки
Скобки в формулах можно вкладывать, т.е. помещать внутрь других скобок. Если
в формуле используются вложенные скобки, Excel вычислит сначала выражение, нахо
дящееся внутри скобок с наибольшей глубиной вложения. Ниже приведен пример фор
мулы со вложенными скобками.
= ( ( В 2 * С 2 ) + ( В З * С З ) + ( В 4 * С 4 ) ) *В6
В этой формуле четыре пары скобок, три из которых вложены в четвертую. Про
грамма вычисляет значения выражений, находящихся во вложенных скобках, суммирует
эти значения, а затем умножает результат на значение ячейки Вб.
74 Часть I. Основные сведения
Скобки в формулах рекомендуется' использовать даже в том случае, когда нет необ
ходимости изменять порядок вычислений, определяемый приоритетами операторов.
Скобки разъясняют порядок выполнения операций, делая формулу более понятной. На
пример, если нужно прибавить единицу к результату умножения значений двух ячеек,
следующая формула, конечно же, справится с задачей:
=А1*А2+1
Однако порядок выполнения действий в следующем варианте записи формулы
(с лишними скобками) будет более очевиден:
= (А1*А2)+1
Совет
© Каждая открывающая (левая) скобка, естественно, должна иметь парную ей
закрывающую (правую) скобку. Если в формуле присутствует несколько
скобок разной глубины вложения, контролировать пары скобок нелегко.
К счастью, Excel поможет проследить за скобками в формулах. Соответст
вующие друг другу скобки выделяются одинаковым цветом. Правда, если
существует множество пар вложенных скобок, различие в цветах будет
сложно проследить. Кроме того, если над некоторой скобкой в формуле по
местить указатель мыши, Excel на мгновение выделяет ее и соответствую
щую ей парную скобку полужирным начертанием. Этот эффект длится
меньше секунды, так что будьте внимательны.
Если в формуле имеются непарные скобки, Excel в некоторых случаях может пред
ложить варианты исправления ошибки. На экране иногда даже появляется функция ав
томатического исправления ошибок в формулах (рис. 2.2).
Ф Предупреждение
Внимательно проверяйте предлагаемую в диалоговом окне коррекцию форму
лы. Во многих случаях предлагаемая формула, несмотря на свою синтаксиче
скую корректность, может оказаться логически некорректной. В примере, ис
пользованном для получения рис. 2.2, в формуле была пропущена закрывающая
скобка после имени диапазона квартал1. На рис. 2.2 программа предложила
следующее исправление формулы: =сумм(квартал 1 / сумм(г о д ) ). Совершен
но очевидно, что корректной формулой вычисления доли доходов в первом
квартале в доходах за год является следующая:
=СУММ(квартал!)/СУММ(год)
Глава 2. Знакомство с формулами 75
Предупреждение
Режим вычисления Excel относится не только к тому рабочему листу, при работе
с которым был применен, — изменение режима отражается на всех открытых
рабочих книгах, а не только на активной. Исходным режимом вычисления стано
вится тот режим, который сохранен в первой открытой вами рабочей книге.
Если система R1C1 окончательно вас заОутала, вы не одиноки. Тип ссылок R1C1
удобно использовать при работе с абсолютными ссылками, чего нельзя сказать об от
носительных.
Числа в скобках означают относительное расположение ссылок. К примеру,
R [ - 5 ] с [ - з ] указывает на то, что ячейка находится на пять строк выше и на три столбца
левее. Соответственно, R [ 5 ] c [ 3 ] ссылается на ячейку, расположенную на пять строк
ниже и на три столбца правее. Если опустить какую-либо из скобок, запись будет озна
чать ячейку в том же столбце или строке. Например, R [ 5 ] с указывает на ячейку, распо
ложенную на пять строк ниже в том же столбце.
Вполне возможно, что вы не будете использовать R1C1 в качестве основной системы
представления ячеек. Однако эта система имеет, по крайней мере, одно преимущество:
BR1C1 очень легко обнаружить формулу с ошибкой. При копировании формула в R1C1
остается неизменной независимо от типа ссылок (относительная, абсолютная или сме
шанная). Поэтому советуем включить режим R1C1 для проверки скопированных формул.
Если одна из формул отличается от остальных, она, возможно, содержит ошибку.
Можно воспользоваться функцией фоновой проверки формул, которая помечает по
тенциально некорректные формулы. О фоновой проверке формул речь пойдет в главе 21.
Предупреждение
© При работе с внешними ссылками могут возникнуть неожиданные трудно
сти. Например, если применить команду Файл^Сохранить как для того, что
бы создать резервную копию книги-источника, связанные формулы автома
тически изменятся, и ссылка будет указывать на новый файл (не тот, кото-
Глава 2. Знакомство с формулами 79
Этот прием особенно эффективен в тех случаях, когда формулы используются для
преобразования ячеек. Предположим, в столбце А содержитоя список имен в верхнем ре
гистре, а вы хотите, чтобы эти имена были записаны в нижнем регистре. Для этого необ
ходимо создать формулы в отдельном столбце, затем преобразовать эти формулы в зна
чения и заменить ими исходные значения столбца А. Чтобы достичь поставленной цели,
выполните следующее.
1. Вставьте новый столбец после столбца А.
2. В ячейку В1 поместите следующую формулу:
=ПРОПИСН(А 1 )
Глава 2. Знакомство с формулами 81
Сокрытие формул
В некоторых случаях может возникнуть необходимость скрыть формулы (например,
чтобы никто не увидел специально разработанную вами формулу, использование кото
рой приносит вашей компании прибыль). Скрыть формулы можно с помощью диалого
вого окна Формат ячеек.
82 Часть I. Основные сведения
Для того чтобы сделать невозможным просмотр одной или нескольких формул, сле
дуйте приведенной ниже инструкции.
1. Выделите формулу или формулы.
2. Щелкните правой кнопкой и выберите в контекстном меню команду Формат
ячеек (или нажмите <Ctrl+l>).
3. В открывшемся диалоговом окне перейдите во вкладку Защита.
4. Установите флажок Скрыть формулы (рис. 2.6).
5. Во вкладке Рецензирование ленты выберите команду Защитить лист.
Чтобы гарантировать прочность защиты, не забудьте в открывшемся диалоговом окне
установить пароль; в противном случае снять защиту сможет любой пользователь.
По умолчанию все ячейки заблокированы. Если лист защищен, никто не сможет из
менить блокировку ячейки. Следовательно, перед тем, как защитить лист, вы должны
будете разблокировать ячейки, предназначенные для ввода информации пользователями.
Предупреж дение
Вы должны знать о том, что существуют программы взлома паролей рабочих
листов Excel. Следовательно, метод сокрытия формул не может гарантиро
вать того, что защищенные формулы не увидит абсолютно никто.
Ошибки в формулах
Нередко программа обнаруживает ошибку во вводимых формулах. В табл. 2.4. пере
числены типичные ошибки, которые могут появиться в ячейке, содержащей формулу.
Формулы могут возвращать значения ошибки и в том случае, если в ячейке, ссылку
на которую содержит эта формула, присутствует значение ошибки. Это так называемый
эффект домино: одна-единственная ячейка, содержащая ошибку, может повлиять на
другие ячейки, в которых расположены зависимые от нее формулы.
Примечание
Если ячейка заполняется символами “решеток” (##########), то это, как
правило, означает, что ширина столбца не позволяет разместить значение.
В этом случае можно увеличить ширину столбца или изменить цифровой
формат ячейки. Символы “решетки” появляются в ячейке и в том случае, ко
гда формула, находящаяся в ней, возвращает ошибочное время или дату.
Иногда радом с формулой, содержащей ошибку, отображается смарт-тег. Щелкнув на
нем, можно узнать, какая ошибка была допущена, и на каком этапе вычислений она поя
вилась. Подробную информацию о смарт-тегах вы найдете в главе 21.
Циклическая ссылка появляется в случае, если формула содержит прямую или кос
венную ссылку на собственное значение. Например, если в ячейку АЗ ввести значение
84 Часть I. Основные сведения
=А1, в ячейку ВЗ значение =АЗ, а в ячейку А1 значение =ВЗ, то будет создана цикличе
ская ссылка, поскольку формулы образуют своеобразное кольцо, в котором каждая фор
мула зависит от предыдущей. Каждый раз, когда вычисляется значение для АЗ, оно
влияет на формулу для ВЗ, что, в свою очередь, влияет на формулу для А1. Значение А1
повлияет на значение АЗ, и круг замкнется. Таким образом, вычисление будет происхо
дить бесконечно долго, и формула никогда не сможет вернуть окончательный результат.
Если ввести формулу, содержащую циклическую ссылку, и нажать клавишу <Enter>,
чтобы зафиксировать формулу, Excel отобразит диалоговое окно с двумя кнопками: ОК
и Отмена (см. рис. 2.7).
Чтобы исправить циклическую ссылку, щелкните на кнопке ОК. После этого Excel
вставит на рабочий лист стрелки трассировки и откроет статью справки по циклическим
ссылкам. В строке состояния будет отображено Циклические ссылки:АЗ. Чтобы разре
шить проблему циклической ссылки, выберите команду Формулы^Зависимости фор-
мул^Проверка наличия ошибок1^ Циклические ссылки и вы увидите список ячеек,
“вовлеченных” в циклические ссылки. Щелкните на каждой из ячеек и попытайтесь най
ти ошибку. Если не можете определить, является ли данная ячейка причиной цикличе
ской ссылки, перейдите к следующей ячейке в этом подменю. Продолжайте проверку
ячеек, пока в строке состояния не исчезнет сообщение Циклические ссылки.
Перекрестная ссылка
В редких случаях циклические ссылки вводятся преднамеренно. Некоторые
примеры использования циклических ссылок приведены в главе 16.
Совет
Вместо последовательного перехода по ячейкам в подменю Циклические
ссылки, щелкайте на стрелках трассировки, чтобы быстро переходить между
ячейками.
Если не отреагировать на замечание программы о появлении циклической ссылки
и щелкнуть на кнопке Отмена, Excel позволит зафиксировать формулу. В строке со
стояния будет присутствовать сообщение, напоминающее о существовании циклической
ссылки. Если после этого начать работу в другом рабочем листе или книге, в напомина
нии будет отсутствовать ссылка на ячейку.
Предупреждение
Если во вкладке Формулы окна параметров Excel установлен флажок Вклю
чить итеративные вычисления, Excel не оповещает пользователя о появле
нии циклической ссылки. Когда этот флажок установлен, Excel выполняет
циклические вычисления столько раз, сколько задано в поле Предельное
число итераций, или же пока изменение значения поля не станет меньше,
чем о, 001 (или любого другого значения, указанного в поле Относительная
погрешность). Рекомендую не устанавливать флажок Включить итеративные
вычисления. Тогда программа будет предупреждать вас о появлении цикли
ческих ссылок. Ведь чаще всего существование циклической ссылки свиде
тельствует об ошибке, которую необходимо исправить.
Как правило, причина циклической ссылки бывает очевидна — это ссылка ячейки са
мой на себя; исправить такую ошибку достаточно легко. Для такого типа циклической
ссылки Excel не отображает стрелки трассировки. Но иногда вы будете сталкиваться
Глава 2. Знакомство с формулами 85
Excel практически мгновенно сообщит о том, что решение найдено, и откроет окно
Результат подбора параметра. В этом окне вы увидите подбираемое и текущее значе
ния. В данном примере программа нашла точное значение. Оно автоматически помеще
но в ячейку В4 (2 5 0 1 8 7 4 , 2 2 р .) . В результате получается желаемая оплата 12 ты
сяч рублей в месяц. Диалоговое окно Результат подбора параметра предоставляет
следующие варианты выбора:
• щелкните на кнопке О К, чтобы заменить исходное значение найденным;
• щелкните на кнопке Отмена, и ваша таблица вернется к своему исходному состоя
нию, в котором она находилась до использования функции подбора параметра.
Имена
В этой главе...
♦ Что такое имя
♦ Область действия имен
♦ Диспетчер имен
♦ Способы присвоения имен ячейкам и диапазонам
♦ Создание многолистовых имен
♦ Работа с именами диапазонов и ячеек
♦ Поддержка имен ячеек и диапазонов
♦ Потенциальные проблемы с именами
♦ Ключ к пониманию термина “имя”
♦ Решение сложных задач с помощью формул
Ссылки на имена
Ссылки на имена уровня книги позволяют применять их на любом листе книги.
Ссылки на имена уровня листа должны предваряться именем соответствующего листа,
если, конечно, используются на листе, отличном от того, на котором определены.
Глава 3. Имена 91
Совет
Если имя листа содержит пробел, заключите его в одинарные кавычки при об
ращении к имени, определенном на нем, например = 1мой Л и с т 1 шоеимя.
В общем случае рекомендуется задавать именам как можно более узкую область дей
ствия. Если имя используется только на одном листе, ограничьте его область действия
только этим листом. Если же имя используется на многих листах рабочей книги, более
подходящей будет область действия уровня книги.
Примечание
В поле Имя отображаются только имена уровня текущего рабочего листа. Ана
логично, только имена уровня текущего рабочего листа отображаются в спи
ске команды Формулы«=>Определенные именам Использовать в формуле.
Конфликты имен
Использование имен уровня листа может быть несколько запутанным, поскольку Ex
cel разрешает на листах создавать те же имена, которые уже определены на уровне кни
92 Часть I. Основные сведения
ги. В этом случае имена уровня листа имеют приоритет, но тодько в пределах листа, на
котором определены.
К примеру, можно определить имя И т о г уровня книги для некоторой ячейки листа
Л и с т 1 . Одновременно можно определить имя уровня листа Л и с т 2 ! И т о г . Когда акти
вен лист Л и с т 2 , идентификатор И т о г будет ссылаться на имя уровня листа. Когда же
активен какой-либо другой лист, И т о г будет ссылаться на имя уровня книги. Запутанно,
не правда ли? Для облегчения жизни рекомендуется избегать использования одних и тех
же имен на уровнях книги и листа.
Один из способов устранения такой путаницы основан на соглашениях об именова
нии. Само имя должно содержать информацию о том, на каком уровне оно определе
но. К примеру, во всех именах уровня рабочей книги можно использовать префикс рк,
а в именах уровня рабочего листа — р л . Используя это соглашение, вы никогда не
спутаете имена р л И т о г и р к И т о г .
Диспетчер имен
Теперь, когда вы поняли концепцию области действия имен, можно приступить к их
созданию и применению. Excel предлагает удобный способ управления именами — дис
петчер имен (рис. 3.1).
Создание имен
Диспетчер имен содержит кнопку Создать, при
щелчке на которой открывается диалоговое окно, по
казанное на рис. 3.2.
В диалоговом окне создания имени можно задать
имя, область действия и диапазон, на который ссыла
ется имя. При желании можно сопроводить имя ком
ментарием, который поможет впоследствии понять
назначение имени. Поле Диапазон позволяет вы
брать ячейки с помощью мыши или ввести диапазон
вручную, аналогично тому, как это выполняется в Рис. 3.2. Диалоговое окно создания
строке формул. имени
Редактирование имен
При щелчке на кнопке Изменить откроется диалоговое окно Изменение имени,
внешне идентичное окну Создание имени. В этом окне можно изменить любое свойст
во имени, за исключением области действия. При изменении имени диапазона все фор
мулы рабочей книги, на него ссылающиеся, будут автоматически обновлены.
Совет
Для изменения области действия имя нужно вначале удалить, а затем вос
создать. Если при этом точно ввести то же имя, все формулы, его исполь
зующие, останутся работоспособными.
Диалоговое окно Изменение имени является не единственным местом редактирова
ния имен. Если единственное свойство, которое нужно изменить, — диапазон, то можно
сделать это непосредственно в главном окне диспетчера имен. В нижней части диалого
вого окна находится поле Диапазон. Выберите в списке нужное имя и измените ссылку
в поле Диапазон.
Совет
При редактировании содержимого поля Диапазон вручную в строке состоя
ния отображается слово Укажите. Если попытаетесь использовать при ре
дактировании этого поля клавиши навигации, такие как стрелки, клавиши
<Н оте> или <End>, то увидите, что перемещаетесь по рабочему листу, а не
редактируете поле. Для переключения из режима указания в режим редак
тирования нужно нажать клавишу <F2>, в результате чего в строке состоя
ния будет отображаться слово Правка.
Удаление имен
Щелчок на кнопке Удалить удаляет выделенное имя из рабочей книги. Естественно,
Excel предупредит вас о том, что данную операцию нельзя будет отменить. К сожале
нию, программа недостаточно услужлива, чтобы заменить все ссылки на удаленное имя
соответствующими диапазонами ячеек. В результате все формулы, использующие уда
ленное имя, будут отображать ошибку #ИМЯ?.
94 Часть I. Основные сведения
Примечание
Количество имен ячеек и диапазонов не ограничено. Excel позволяет при
сваивать одному и тому же элементу сразу несколько имен, однако делать
этого не следует. Если выделенная ячейка или диапазон имеет несколько
имен, в поле Имя всегда будет появляться первое из них по алфавиту.
Глава 3. Имена 95
Имя можно присвоить и несмежному диапазону ячеек. Выделить все ячейки и диапа
зоны несмежного диапазона можно с помощью мыши, удерживая клавишу <Ctrl>.
jm b Предупреждение
« ы Создавая имя в поле Имя, не забудьте нажать <Enter>. Если ввести имя, а
затем щелкнуть в области рабочего листа, новое имя не будет создано.
Поле Имя выполняет еще одну функцию. С его помощью можно быстро выделить
именованную ячейку или диапазон, как показано на рис. 3.3. Для этого щелкните в поле
Имя и выберите нужное имя в списке. Будет выделена соответствующая ячейка или диа
пазон. Как ни странно, для активизации поля Имя не предусмотрена комбинация кла
виш. Иными словами, вы не получите доступ к этому полю с помощью клавиатуры; сде
лать это можно, только используя мышь. После щелчка в поле Имя для указания имени
достаточно использовать клавиши со стрелками и <Enter>.
Совет
Имена, созданные в поле Имя, по умолчанию имеют область действия уров-
ня рабочей книги. Для того чтобы создать имя уровня рабочего листа, пред
варите его именем рабочего листа и восклицательным знаком (например,
Л и с т 2 ' И т о г ) . Так как поле Имя работает только с текущим выделенным
диапазоном, ввод имени листа, отличного от текущего, приведет к ошибке.
в столбце А, можно использовать для создания имен ячеек столбца В. Решить эту задачу
в Excel достаточно просто.
Для того чтобы присвоить имена, используя текст смежных ячеек, выделите данный
текст и ячейки, которым должно быть присвоено имя (это могут быть как отдельные
ячейки, так и диапазоны ячеек). Текст имен должен находиться в смежных ячейках отно
сительно ячеек, которым вы хотите назначить имена. Можно создать несколько выделе
ний. Выберите команду Формулы ^Определенные имена^Создать из выделенного
или нажмите комбинацию клавиш <Ctrl+Shift+F3>. Откроется диалоговое окно Созда
ние имен из выделенного диапазона (рис. 3.5).
Если же вместо текста смежная ячейка содержит значение или формулу, программа не
сможет создать корректное имя. В таком случае Excel просто не создаст никакого имени.
Предупреждение
Внимательно проверяйте имена, автоматически создаваемые программой.
Иногда диалоговое окно Создание имен из выделенного диапазона работает
не совсем логично. На рис. 3.6 показана небольшая таблица с текстом и зна
чениями. Выделите всю таблицу, выберите команду Создать из выделенного
и примите вариант, предложенный программой (флажки в строке выше и в
столбце слева). В результате имя товары будет относиться не к диапазону
А2 : Аб, как вы ожидали, а к диапазону В2 : Сб. Если верхняя левая ячейка выде
ленного диапазона содержит текст и установлены флажки в строке выше и в
столбце слева, Excel использует это имя для всего набора данных, исключая
верхнюю строку и левый столбец. Поэтому, прежде чем принять предложения
программы, убедитесь, что она правильно поняла ваш замысел.
Рис. 3.6. Создание имен на основе данных такой таблицы может привести
к неожиданным результатам
Компакт-диск
Все приводимые в настоящей главе примеры содержатся в файле chap-
t e r 3 _ R U S . x s l x на прилагаемом компакт-диске.
Скрытые имена
Некоторые макросы и надстройки Excel создают скрытые имена. Эти имена присут
ствуют в рабочей книге, но не появляются в диалоговом окне диспетчера имен и в поле
Имя. Надстройка “Поиск решения” , например, создает целый ряд скрытых имен. Как
правило, скрытые имена можно игнорировать, но они могут стать причиной возникно
вения некоторых проблем. Если скопировать лист из одной рабочей книги в другую,
вместе с листом копируются и скрытые имена. При этом скрытые имена могут созда
вать ссылку, которую довольно трудно обнаружить.
К сожалению, в окне диспетчера имен скрытые имена не приводятся. Ниже приве
дена простая процедура на VBA, которая создает список всех скрытых имен активной
рабочей книги. Эта процедура добавляет в книгу новый рабочий лист и помещает в него
список скрытых имен. Не забудьте включить поддержку макросов. Кроме того, если
список не появился, попробуйте удалить инструкцию i f . Возможно, причина в том, что
скрытых имен в данной книге нет.
Sub L i s t H i d d e n N a m e s ()
Dim n As Name, r As Long
W o r k s h e e t s .A d d
r = 1
F or Each n In A c t iv e W o r k b o o k .N a m e s
I f N ot n . V i s i b l e Then
C e l l s ( r , 1) = n.Name
C e l l s ( r , 2) = & n .R e fe r sT o
r = r + 1
End I f
N ext n
End Sub
Глава 3. Имена 99
Примечание
Многолистовые имена не отображаются ни в поле Имя, ни в диалоговом ок
не Переход (это окно отображается при выборе команды Главная^Редак-
тирование^Найти и выделить^Перейти). Иными словами, Excel позволяет
назначать такие имена, но вы не сможете автоматически выделить ячейки, к
которым они относятся. Тем не менее, многолистовые имена отображаются
в списке автозавершения при вводе формул.
Если вставить новый лист в рабочую книгу, в которой используются имена, относя
щиеся к нескольким листам, имена будут распространяться на новый лист только в том
случае, если этот лист находится между первым и последним листом, заданным в опре
делении имени. В предыдущем .примере рабочий лист, вставленный между Л и ст1
и Л и с т 2 , оказывается в диапазоне К убД ан н ы х. Лист, вставленный перед Л и с т 1 или
после Л и с т З , не включается в диапазон.
Если удалить первый или последний лист, включенный в определение имени, Excel
автоматически изменит запись в поле Диапазон. В рассматриваемом нами примере уда
ление Л и с т 1 приведет к следующим изменениям в поле Диапазон имени КубДанны х:
= 1Л ист2 : Л и с т З ' !$А $1:$С $3
Областью действия имен, распространяющихся на множество листов, должна быть
рабочая книга. Если они определены на уровне рабочего листа, то будут функциониро
вать корректно, однако в диалоговом окне диспетчера имен будет отображаться ошибка.
те клавишу <F3>). Откроется диалоговое окно Вставка имени (рис. 3.9), в котором будут
перечислены все заданные имена. Для того чтобы вставить список имен, щелкните на
кнопке Все имена.
ЖЯк, Предупреждение
н В список имен не входят имена уровня рабо
чего листа (кроме имен активного листа),
а также скрытые имена.
Список имен, вставленный в рабочий лист, состоит из
двух столбцов. В первом столбце перечислены имена,
а во втором — адреса соответствующих диапазонов. Ад
реса диапазонов, расположенные во втором столбце спи
ска, представляют собой строки текста, которые напоми Рис. 3.9. Диалоговое окно Встав
ка имени
нают формулы. Преобразовать такую строку в формулу
можно, отредактировав ячейку (нажмите <F2>, а затем
<Enter>). В результате строка становится формулой. Если имя относится к отдельной
ячейке, формула отображает текущее значение этой ячейки. Если же имя относится
к диапазону, формула возвращает ошибку #ЗН А Ч !.
Перекрестная ссылка
Ошибки в формулах, такие как # з н а ч ! и # с с ы л к а ! , рассматриваются
в главе 21.
Когда имя, заданное на уровне рабочего листа, используется в формуле того листа,
в котором оно было задано, имя рабочего листа не следует указывать перед именем диа
пазона. Если такое имя используется в другом листе рабочей книги, необходимо задать
полное имя (имя рабочего листа, восклицательный знак и имя диапазона). Например, ес
ли П р о д а н о Е д и н и ц — имя, заданное на уровне рабочего листа Л и с т 1 , то формула для
вычисления суммы диапазона на любом другом рабочем листе будет выглядеть так:
= С У М М (Л и с т 1 ! П р о д а н о Е д и н и ц )
Ввод знака равенства активизирует функцию автозавершения, как при вводе от
крывающей скобки в функции рабочего листа. При этом под активной ячейкой откры
вается список определенных имен и функций рабочего листа. Для использования
функции автозаполнения вводите имя, пока оно не будет выделено в списке, а затем
нажмите <ТаЬ>, чтобы зафиксировать имя. Можно также использовать клавишу <>1>,
чтобы выбрать имя в списке.
Если в формуле используется несуществующее имя, Excel отобразит ошибку #ИМЯ?,
указывающую на то, что программа не может найти имя, которое вы пытаетесь исполь
зовать. Зачастую причиной такой ошибки является просто опечатка.
102 Часть I. Основные сведения
Используя символ пробела для разделения двух ссылок на диапазоны, вы задаете так
называемое явное пересечение. Это означает, что вы приказываете Excel явно определить
пересечение диапазонов. Программа может находить и неявные пересечения. Неявное
пересечение происходит в том случае, когда Excel выбирает значение из многоячеечного
диапазона, основываясь на строке или столбце формулы, имеющей ссылку. Для того
чтобы разобраться с пересечениями такого типа, рассмотрим конкретный пример. На
рис. 3.11 показана таблица, содержащая именованный диапазон В З : В 8 . В ячейке D5
отображается простая формула, приведенная ниже:
=МоиДанные
Обратите внимание на то, что в ячейке D5 отображено значение из диапазона
МоиДанные, соответствующее строке, в которой расположена формула. Аналогично,
если ввести ту же формулу в строки с 3 по 8, формула вернет соответствующее значение
из диапазона МоиДанные. Excel выполняет неявное пересечение, используя диапазон
МоиДанные и строку, содержащую формулу. Это действие подобно вычислению сле
дующей формулы:
=МоиДанные 5 : 5
Если ввести формулу в строку, не принадлежащую диапазону МоиДанные, то формула
вернет ошибку, поскольку неявное пересечение в таком случае произойти не может.
Глава 3. Имена 103
Совет
Для того чтобы применить новое имя ко
всем формулам рабочего листа, выделите
одну ячейку, перед тем как выполнить ко
манду Применить имена.
Флажок Игнорировать тип ссылки отвечает за то,
как Excel заменяет адрес диапазона именем. Обычно
имя ячейки или диапазона задается как абсолютная
ссылка. Если флажок Игнорировать тип ссылки ус
тановлен, Excel применит имя только в том случае, ес
ли ссылка в формуле полностью соответствует типу
диапазона. В большинстве случаев, когда вы приме
няете имена, удобнее игнорировать тип ссылки.
Если флажок Использовать имена строк и столб- Рис. 3.12. Диалоговое окно Приме-
цов установлен, то при применении имен в формулах нение имен
Excel использует оператор пересечения. Не имея воз
можности использовать точные имена ячеек, Excel для ссылок на ячейки использует
имена строк и столбцов. Для того чтобы объединить имена, Excel использует оператор
пересечения. Щелчком на кнопке Параметры можно задать несколько дополнительных
параметров, но только при условии, что флажок Использовать имена строк и столб
цов установлен.
Иногда это свойство программы очень помогает в работе. Но если вы захотите ис
пользовать адрес ячейки, а не ее имя, это свойство будет только мешать. К сожалению,
отключить данную функцию невозможно. Если вы решили использовать адрес ячейки
или диапазона, введите его вручную (не указывайте элемент таблицы мышью).
Примечание
Описанный выше прием не документирован и может работать не во всех
случаях, так что внимательно проверяйте результат.
Имена с ошибками
Если удалить строку или столбец, содержащий именованный диапазон или ячейку,
само имя как таковое удалено не будет. Вместо этого в имени будет содержаться некор
ректная ссылка. К примеру, если ячейка А1 листа Л и с т 1 имеет имя Д и с к о н т , а вы уда
лили столбец А или строку 1, имя Д и с к о н т будет содержать ссылку = Л и с т 1 ! #ССЫЛ!
(т.е. ошибочную ссылку). Если при этом имя Д и с к о н т используется в какой-либо фор
муле, результатом формулы тоже будет #ССЫЛ!.
Чтобы не было такой ошибки, нужно в диспетчере имен удалить имя. Кроме того,
можно переопределить имя так, чтобы оно указывало на корректную ячейку.
Совет
Диспетчер имен позволяет фильтровать отображаемые имена, используя
предопределенные фильтры. Один из этих фильтров специально предна
значен для отображения только тех имен, которые имеют ошибочные ссыл
ки. Это позволяет быстро локализовать проблемные имена.
Перекрестная ссылка
Дополнительная информация о диаграммах приведена в главе 17.
Если удалить строку или столбец внутри именованного диапазона, этот диапазон изме
нится соответствующим образом. Например, если удалить столбец D, имя М о й Д и а п а з о н
будет относиться к = Л и с т 1 1$С $3 : $D $5.
Если удалить все строки и ячейки, составляющие именованный диапазон, именован
ный диапазон будет продолжать существовать, однако ссылка на него будет содержать
ошибку. Например, удалите столбцы С, D, Е, и имя М о й Д и а п а з о н будет ссылаться на
= Л и с т 1 ! #ССЫЛКА! . Все формулы, в которых использовалось это имя, тоже будут воз
вращать ошибки.
Примечание
Копирование и вставка ячеек из одного рабочего листа в другой не приводит
к копированию имен даже в том случае, когда копируемый диапазон содер
жит именованные ячейки.
Какой можно сделать вывод? Копируя листы рабочей книги, содержащей имена,
будьте очень внимательны. Скопировав лист, проверьте все имена и удалите те, которые
были скопированы случайно.
Именование объектов
Когда вы добавляете на рабочий лист объект, присваиваемое ему по умолчанию имя
отражает ТИП объекта (например, Прямоугольник!.).
Чтобы изменить имя объекта, выделите нужный объект, введите новое имя в поле
Имя и нажмите <Enter>. Исключение составляют диаграммы. В этом случае необходи
мо выделить диаграмму, и в контекстной вкладке Работа с диаграммами^Макет вы
брать команду Свойства.
Поле Имя в Excel имеет некоторые особенности: с его помощью можно переимено
вать объект, однако список объектов в этом окне не отображается. Более того, Excel по
зволяет задавать диапазонам имена, уже присвоенные объектам, при этом несколько
объектов могут иметь одно и то же имя. В диалоговом окне Диспетчер имен имена объ
ектов не отображаются.
Оценивая эту формулу, Excel, прежде всего, анализирует формулу, которая носит имя
С т а в к а (оно существует только в памяти программы, а не в ячейке). Затем Excel умно
жает результат именованной формулы на 1 , 0 5 и возвращает результат. Разумеется,
приведенная выше формула равноценна формуле, в которой вместо имени используется
ссылка на ячейку:
= Л и с т 1 ! $ В $ 1 * 1 , 05
Возникает вопрос: можно ли создать такую именованную формулу, которая бы не со
держала ссылок на ячейки? Ответ на него вы найдете в следующем разделе.
Рис. 3.16. Формально имя Ставка Рис. 3.17. Присвоение имени константе
представляет собой именованную
формулу, а не именованную ячейку
Примечание
Имена, не относящиеся к диапазонам, не отображаются в поле Имя и в диа
логовом окне Переход (которое можно вызвать нажатием клавиши <F5>).
И это логично, поскольку константы отсутствуют в ячейках рабочего листа.
Константы отображаются в диалоговом окне Вставка имени, и это тоже ло
гично, поскольку имена констант используются в формулах.
Как вы, вероятно, догадываетесь, значение константы может быть изменено в любой
момент в диалоговом окне Изменение имени. Все, что нужно сделать, — это изменить
значение в поле Диапазон. После того как диалоговое окно будет закрыто, Excel пересчи
тает все формулы, в которых фигурирует данная константа, на основе нового значения.
Описанный выше прием очень эффективен во многих ситуациях, однако изменение
значения занимает некоторое время. Если константу разместить в ячейке, изменить ее
значение будет значительно легче. Если значение действительно является константой,
изменять его вам не придется.
Перекрестная ссылка
Детально функция т е к с т () рассматривается в главе 5.
Теперь эту формулу можно ввести в ячейку, и она будет возвращать название текуще
го месяца в текстовой форме. В апреле формула будет возвращать текст А п р е л ь .
= И м я М е с я ц а
Рис. 3.20. Создание именованной Рис. 3.21. Формула под именем Ячей-
формулы, в которой используется каСправа изменяется в зависимо
ссылка на диапазон сти от того, какая ячейка активна в
данный момент
Примечание
Именованная формула ЯчейкаСправа не будет работать, если она исполь
зуется в формуле, расположенной в столбце x f d , поскольку в этом случае
формула ссылается на несуществующую ячейку (справа от столбца xfd
столбцов больше нет).
Создав именованную формулу, можно ввести следующую формулу в любую ячейку лю
бого листа, и эта формула будет возвращать сумму десяти ячеек, расположенных справа:
=Сумма1ОЯчеек
Например, если ввести такую формулу в ячейку D12, она будет возвращать сумму
значений диапазона Е12 : N12, состоящего из десяти ячеек.
Глава 3. Имена 115
Примечание
Именованная формула СуммаЮЯчеек не будет работать, если ввести ее
в ячейку, которая располагается в столбце, следующем за столбцом х е т .
В таком случае формула становится ошибочной, поскольку в ней появляется
ссылка на несуществующую ячейку, расположенную за пределами столбца x f d .
Примечание
© Формулу ПерваяВСтроке нельзя использовать в столбце а , поскольку будет
создана циклическая ссылка. Формула в данном случае будет ссылаться са
ма на себя.
Совет
Команду Данные1^Работа с данными^Проверка данных можно использовать
для вставки раскрывающегося списка в ячейку А1б. В поле Тип данных от
крывшегося окна выберите пункт Список, а в поле Источник введите диапа
зон А2 : А 13 . Теперь пользователь сможет выбрать название месяца из спи
ска, а итоговое значение для месяца будет отображаться в ячейке В16.
Используя функцию ДВССЫЛ, можно ссылаться и на имена уровня рабочего листа.
Предположим, что вы работаете с рабочими листами О б л а с т ь 1, О б л а с т ь 2 и т.д. Каж
дый лист содержит имя И т о г и П р о д а ж , заданное на уровне рабочего листа. Следующая
формула извлекает значение из соответствующего рабочего листа, используя имя листа,
заданное в ячейке А1:
=ДВССЫЛ (А1&" !ИтогиПродаж")
Перекрестная ссылка
В части IV подробно описаны массивы и формулы массивов. Однако эта те
ма имеет отношение и к именам.
Задать массив можно с помощью фигурных скобок. Каждый элемент массива отделя
ется запятой или точкой с запятой. Запятая используется для разделения элементов, рас
положенных вертикально, а точка с запятой — для разделения элементов, находящихся
горизонтально.
В диалоговом окне Создание имени можно создать формулу И м е н а М е с я ц е в , ко
торая имеет такое определение:
= { "Я н в 11; " Ф е в " ; "Мар" ; " А п р " ; "М ай" ; "Июн" ; "Июл" ; " А в г " ;
"Сен"; "Окт"; "Ноя"; "Дек"}
Эта формула определяет массив, который состоит из 12 текстовых строк, располо
женных горизонтально.
Примечание
Вводя такую формулу, не забудьте о фигурных скобках. В диалоговое окно
Создание имени формула массива вводится не так, как в ячейку.
Определив формулу И м е н а М е с я ц е в , ее можно использовать в других формулах.
Однако в конечной формуле необходимо обозначить, какой из элементов массива ис
пользуется. Для этого рекомендуется применить функцию ИНДЕКС. К примеру, следую
щая формула возвращает текст " А в г 11:
= И НДЕКС(Им енаМ есяцев; 8 )
Примечание
В формуле предполагается, что диапазон не содержит пустых ячеек. Напри
мер, если ячейка В2 пустая, функция с ч ё т з пропустит ее и в результате
функция счёт вернет неправильный диапазон.
Глава 3. Имена 119
Для того чтобы проверить, как работает эта формула, введите следующую формулу
в любую ячейку, которая не расположена в столбце В:
=СУММ(ОбъемПродаж)
Эта формула вернет сумму значений столбца В. Обратите внимание на то, что О бъем-
Продаж не отображается ни в поле Имя, ни в диалоговом окне Переход. Для того чтобы
выбрать диапазон, откройте диалоговое окно Переход и введите ОбъемПродаж вручную.
Напрашивается вопрос: зачем все эти трудности? Ведь и простая формула, приведен
ная ниже, сделает все, что необходимо:
=СУММ( В : В)
Эффективность работы именованных формул с динамическим размером становится
очевидной при создании диаграмм. С помощью таких формул можно создать диаграмму
с наборами данных, которые автоматически изменяются при вводе новых сведений.
Перекрестная ссылка
Использование таблиц для хранения данных часто устраняет необходимость
создания динамических диапазонов. Таблицы рассматриваются в главе 9.
Часть
Использование функций
в формулах
В этой части...
Глава 4
Знакомство с функциями рабочего листа
Глава 5
Работа с текстом
Глава 6
Дата и время
Глава 7
Способы суммирования и подсчета данных
Глава 8
Поиск данных
Глава 9
Базы данных и таблицы листа
Глава 10
Дополнительные виды вычислений
Глава
Знакомство с функциями
рабочего листа
Вэтой главе...
♦ Что такое функция
♦ Типы аргументов функций
♦ Способы ввода функций в формулу
♦ Категории функций
Упрощение формулы
Иногда использование встроенных функций позволяет существенно упростить формулу.
Предположим, нужно вычислить среднее арифметическое значений десяти ячеек ( А 1 : А10).
Без использования функций вам пришлось бы создать примерно следующую формулу:
= (А1+А2+АЗ+А4+А5+А6+А7+А8+А9+А10) / 1 0
Громоздко, не правда ли? Более того, если впоследствии диапазон суммируемых зна
чений будет увеличен, вам придется редактировать эту формулу. Однако ее можно заме
нить более простой, в которой будет использована одна из встроенных функций рабочего
листа Excel. В приведенной ниже формуле используется функция СРЗНАЧ:
=СРЗНАЧ(А1:А 1 0 )
1. Введите эту формулу в ячейку В1, а затем скопируйте ее в следующие 999 строк.
2. Выделите диапазон В 1 : В 1 0 0 0 и скопируйте его в буфер обмена с помощью ко
манды Копировать вкладки Главная или нажав клавиши <Ctrl+C>.
3. Активизируйте ячейку А1 и преобразуйте формулы в значения, выбрав команду
Главная^ Буфер обмена^Вставить^Вставить значения.
4. Удалите столбец В.
Таким образом, в приведенном примере использование встроенной функции Excel
позволило сэкономить несколько часов драгоценного времени.
Принятие решений
Функции предоставляют формулам возможность принятия решений. Предположим, у
вас есть таблица, предназначенная для вычисления комиссионных с продажи. Если ме
неджер продает товар на сумму, превышающую 100 тысяч долларов, ставка комиссион
Глава 4. Знакомство с функциями рабочего листа 125
Перекрестная ссылка
Создание пользовательских функций на VBA рассматривается в части VI.
Перекрестная ссылка
В приложении А содержится полный список функций Excel с кратким описа
нием каждой из них.
Если функция имеет больше одного аргумента, то все они отделяются друг от друга
точкой с запятой. В функции НАИБОЛЬШИЙ, которая возвращает и-ое по величине значе
ние из множества данных, используются два аргумента. Первый из них задает диапазон
значений, а второй — значение п. Приведенная ниже формула возвращает третье по ве
личине значение ячеек диапазона А 1 : А100:
=НАИБОЛЬШИЙ(А 1 :А10 0 ; 3 )
Примечание
Символы разделителей определяются в окне региональных стандартов Win
dows. Если в этом окне установлен русский формат, разделителем списка
служит точка с запятой, а десятичным разделителем — запятая. Если же ус
тановлен формат США, разделителем списка будет запятая, а десятичным
разделителем — точка. Переключите формат в Windows, и вы увидите, что
символы разделителей в формулах автоматически изменятся. Обязательно
переключите формат обратно, потому что в данной книге предполагается,
что установлен русский формат. Кроме разделителей, установленный фор
мат влияет на отображение дат, времени, денежных значений и т.д.
Если диапазон А 1 : А2 0 имеет имя (например, Продажи), то оно может быть исполь
зовано вместо ссылки на диапазон:
=СУММ(Продажи)
Перекрестная ссылка
За подробной информацией о том, как определять и применять имена, об
ратитесь к главе 3.
выражение, Excel сначала вычисляет значение этого выражения, а затем использует его
в качестве аргумента. Рассмотрим следующий пример:
=КОРЕНЬ( (А1 а 2 ) + ( А2 а 2 ) )
В этой формуле используется функция КОРЕНЬ, единственным аргументом которой
выступает следующее математическое выражение:
(А1Ж2 ) + ( А2 а 2)
Вычисляя значение формулы, Excel сначала вычисляет значение выражения в аргу
менте функции, а затем извлекает квадратный корень из результата вычислений.
Перекрестная ссылка
Подробнее работа с массивами будет описана в части IV.
Рис. 4.1. Когда вы начинаете вводить функцию, Excel отображает список функ
ций, начинающихся с уже введенных символов
Примечание
Вместе с именами функций список автозавершения содержит имена диапа
зонов и ссылки на таблицы (о таблицах см. главу 9).
После нажатия клавиши <Tab> Excel отображает еще одну экранную подсказку
(рис. 4.2), в которой перечисляются аргументы функции. Полужирным шрифтом выде
лен вводимый в настоящее время аргумент. Аргументы, показанные в квадратных скоб
ках, являются необязательными. Обратите внимание, что текст в экранной подсказке со
держит гиперссылки. Гиперссылки отображаются, когда указатель мыши наведен на имя
функции или ее аргументы. Щелчок на гиперссылке приводит к выбору аргумента. Если
окно подсказки мешает вам, можете перетащить его в другое место.
Если при вводе функции пропустить закрывающую скобку, Excel вставит ее автома
тически. Например, если ввести =СУММ (А 1: С12 и нажать <Enter>, программа исправит
ошибку, вставив закрывающую скобку.
130 Часть II. Использование функций в формулах
Совет
После ввода функции Excel преобразует введенные символы в верхний регистр.
Поэтому разумно вводить все функции с помощью символов нижнего регистра.
Если после нажатия клавиши <Enter> программа не преобразует текст в верхний
регистр, это значит, что программа не распознала введенную вами запись как
функцию. Так происходит в том случае, если при вводе функции была допущена
ошибка или данная функция просто недоступна (например, функция определена
только в надстройке, которая в данный момент не установлена). Это может слу
жить одним из способов избежать ошибок при вводе функций.
С то и м о с ть
Д а т а .п р и о б р
Первы й_период
| О с та то ч н а яс то и м о с ть
Период
Значение:
Категории функций
Далее будет представлен список категорий функций с кратким описанием каждой из них.
Перекрестная ссылка
В последующих главах приведены конкретные примеры использования
функций.
Финансовые функции
Финансовые функции позволяют выполнять экономические вычисления, связанные
с расчетом денежных средств. Функция ПЛТ, например, используется для вычисления
величины ежемесячной выплаты по займу. Для вычисления необходимо задать еле-
134 Часть II. Использование функций в формулах
Примечание
Во всех тригонометрических функциях углы измеряются в радианах (а не в
градусах). Для того чтобы преобразовать градусы в радианы, используйте
ФУНКЦИЮ РАДИАНЫ.
Статистические функции
Функции этой категории предназначены для проведения статистического анализа
диапазонов значений. С помощью статистических функций можно вычислить наимень
шее значение набора значений, значение моды множества данных, стандартное отклоне
ние выборки, дисперсию и т.д.
Текстовые функции
Текстовые функции позволяют манипулировать текстовыми строками в формулах.
Функция ПСТР, например, возвращает заданное количество символов из строки текста, на
чиная с указанной позиции. Другие функции позволяют изменить регистр символов текста
(например, преобразовать символы нижнего регистра в символы верхнего регистра).
Глава 4. Знакомство с функциями рабочего листа 135
Логические функции
Данная категория состоит всего из семи функций. Эти функции позволяют проверить
заданное условие и вернуть логическое значение ИСТИНА или ЛОЖЬ. Функция ЕСЛИ
также может оказаться полезной, поскольку она предоставляет формулам возможность
принятия решений.
Информационные функции
Функции этой категории помогают определить тип данных, хранящихся в ячейке.
Например, функция ЕТЕКСТ возвращает ИСТИНА, если значение является текстом.
С помощью функции ЕПУСТО можно узнать, пуста ли ячейка. Функция ЯЧЕЙКА возвра
щает полезную информацию о конкретной ячейке.
Пользовательские функции
К этой категории относятся функции рабочего листа, созданные пользователем с по
мощью VBA. Пользовательские функции выполняются так же, как и встроенные функ
ции Excel. Единственное отличие состоит в том, что описание аргументов этих функций
не отображается в диалоговом окне Мастер функций.
Инженерные функции
Функции этой категории помогут вам при решении инженерных прикладных задач.
Эти функции позволяют работать с компдексными числами, а также выполнять преобра
зование единиц одной системы исчисления или измерения в единицы исчисления или
измерения другой системы.
Аналитические функции
Предназначены для манипулирования значениями, размещенными в кубе данных OLAP.
Функции совместимости
Это устаревшие статистические функции, помещенные в отдельную категорию для
обеспечения совместимости с предыдущими версиями Excel. Полезны в ситуациях, когда
нужно совместно работать с пользователями, на компьютерах которых установлены пре
дыдущие версии.
Перекрестная ссылка
Информацию о том, как записать пользовательскую функцию в одну из кате
горий, можно найти в главе 23.
136 Часть II. Использование функций в формулах
Непостоянные функции
Некоторые функции Excel принадлежат особому классу так называемых непостоян
ных функций. Программа автоматически пересчитывает непостоянную функцию при
пересчете рабочей книги даже в том случае, если формула, в которой эта функция ис
пользуется, не задействована в пересчете.
Одной из непостоянных функций является функция слчис, которая возвращает но
вое случайное число при каждом пересчете рабочего листа. Кроме того, в Excel присут
ствуют следующие непостоянные функции:
двссыл
ИНДЕКС
СМЕЩ
ЯЧЕЙКА
ОБЛАСТИ
СТРОКА
СТОЛБЕЦ
СЕЙЧАС
СЕГОДНЯ
Использование непостоянных функций имеет один побочный эффект: Excel будет
всегда напоминать вам о сохранении рабочей книги перед ее закрытием (даже в том
случае, если вы не вносили никаких изменений). Например, вы открыли рабочую книгу,
в которой используются непостоянные функции, просмотрели ее (ничего при этом не
меняя) и хотите закрыть файл. При этом Excel обязательно спросит, хотите ли вы со
хранить рабочую книгу.
Чтобы отменить появление окна с этим вопросом, используйте режим вычислений
вручную. Для этого откройте вкладку Формулы диалогового окна параметров програм
мы и в разделе Параметры вычислений установите переключатель вручную и снимите
флажок Пересчитывать книгу перед сохранением.
Глава
Работа с текстом
В этой главе...
♦ Несколько слов о самом тексте
♦ Текстовые функции
♦ Расширенные текстовые формулы
Примечание
Возможно, читателю уже приходилось сталкиваться с термином строка, ис
пользующимся в смысле “текст” . В данном контексте эти термины взаимо
заменяемы. Иногда они даже могут встречаться вместе, например в выра
жении текстовая строка. Оба они означают одно и то же — произвольную
последовательность символов.
Примечание
Если включена фоновая проверка ошибок, Excel помечает числа с апостро
фом (и числа, отформатированные как текст) смарт-тегом. Этот смарт-тег
можно использовать для преобразования “текста” в фактическое значение.
Для этого щелкните на смарт-теге и выберите в открывшемся меню пункт
Преобразовать в число. Фоновая проверка включается и отключается в раз
деле Контроль ошибок вкладки Формулы диалогового окна Параметры Excel.
Текстовые функции
Приложение Excel предлагает довольно широкий выбор функций, с помощью кото
рых обрабатывается текст. Большинство из них можно найти в библиотеке функций или
диалоговом окне Мастер функций (чтобы открыть его, выберите команду Формулы1^
Библиотека функцийоТекстовые^Вставить функцию). В категории Текстовые со
Глава 5. Работа с текстом 139
держится большая часть текстовых функций. Некоторые другие функции, которые тоже
могут использоваться при работе с текстом, встречаются в других категориях. Например,
функция е т е к с т находится в категории Проверка свойств и значений.
Перекрестная Ссылка
В приложении А приведен перечень функций, относящихся к категории
тестовых.
Область применения большинства текстовых функций не ограничивается только тек
стом. Другими словами, эти функции могут использоваться и в ячейках, содержащих чи
словые значения. Excel предоставляет прекрасную возможность обрабатывать числа как
текст и, наоборот, текст — как числа.
В этой главе приводятся примеры некоторых широко распространенных операций,
которые можно выполнять с текстом. Возможно, вы захотите взять себе на вооружение
некоторые из приведенных ниже примеров.
Примечание
Ф ункция кодсимв
Функция КОДСИМВ, которая используется в приложении Excel, возвращает код сим
вола, введенного в качестве аргумента функции. Например, формула, приведенная ниже,
возвращает значение 192 — код русского символа А, введенного в верхнем регистре.
=КОДСИМВ( " А " )
В том случае, если аргумент функции КОДСИМВ содержит несколько символов, функ
ция использует только первый символ. Например, следующая формула возвращает зна
чение 196 — код символа Д: 7
=КОДСИМВ("Дорога к Р и м у " )
Функция символ
По своей сути функция СИМВОЛ полностью противоположна функции КОДСИМВ.
Ее аргументом является числовое значение в интервале от 1 до 255, а сама функция воз
вращает символ, соответствующий этому значению. Например, приведенная ниже фор
мула возвращает русский символ А:
=СИМВОЛ( 1 9 2 )
Чтобы продемонстрировать разницу между функциями КОДСИМВ и СИМВОЛ, введите
в ячейку следующую формулу:
=СИМВОЛ(КОДСИМВ( " А " ))
Формула вернет символ А. Этот пример лишь иллюстрирует действие функций, вряд
ли он будет полезен на практике. Сначала введенный символ преобразуется в соответст
Глава 5. Работа с текстом 141
вующее значение кода (192), после чего функция СИМВОЛ возвращает символ А, кото
рый соответствует данному значению.
Теперь предположим, что ячейка А1 содержит символ А (в верхнем регистре). Тогда
следующая формула вернет символ а (в нижнем регистре):
=СИМВОЛ (КОДСИМВ (А1) +32)
В этой формуле используется тот факт, что в кодовой таблице символы расположены
последовательно, в алфавитном порядке, при этом символы нижнего регистра располо
жены после символов верхнего (между прописными и строчными буквами находится не
сколько других символов). Каждая строчная буква русского (равно как и английского)
алфавита размещена ровно на 32 позиции выше своего прописного собрата.
СОВПАД. Приведенная ниже формула возвращает значение ИСТИНА только в том случае,
если ячейки А1 и А2 содержат абсолютно идентичные записи.
=СОВПАД(А1;А2)
Следующая формула возвращает значение ЛОЖЬ, поскольку первая строка содержит
в конце пробел:
=СОВПАД("нуль " ; " н у л ь ")
Примечание
Имейте в виду, что в Excel есть также функция сцепить , которая поддержи
вает до 255 аргументов. Эта функция объединяет свои аргументы в единую
строку. Многие пользователи предпочитают применять именно ее, однако
использование оператора конкатенации (&) значительно проще.
Глава 5. Работа с текстом 143
Примечание
Имейте в виду, что, вопреки ожиданиям, применение числового формата ко
всей ячейке, содержащей формулу, не даст никакого эффекта. Все дело в
том, что используемая формула возвращает строку, а не числовое значение.
Применить формат к содержимому ячейки ВЗ в ячейке А5 можно с помощью функ
ции ТЕКСТ. Для этого нужно ввести в А5 такую формулу:
="Чистая прибыль: "&ТЕКСТ(ВЗ; " # # # # ## # # # , 0 0 " )
Эта формула будет отображать и текст, и само отформатированное числовое значение
следующим образом:
Чистая прибыль: 104 6 1 6 , 5 2 р .
Второй аргумент функции ТЕКСТ содержит стандартное определение числового
формата, используемого в приложении Excel. В качестве этого аргумента можно ввести
любое другое допустимое определение числового формата.
В предыдущем примере мы использовали простую ссылку на ячейку ВЗ. Но это не
единственная возможность. Вместо ссылки на ячейку можно использовать любое выра
жение. Ниже приведен пример, в котором текст объединяется с числом, полученным пу
тем вызова функции СРЗНАЧ.
="Средний р а с х о д : "&ТЕКСТ(СРЗНАЧ(А:А) ; " # , # # 0 , 0 0 р . " )
Эта формула возвращает такую строку:
Средний р а с х о д : 7 794,57р.
144 Часть II. Использование функций в формулах
Перекрестная ссылка
Для получения подробной информации о числовых форматах в Excel обра
титесь к приложению Б.
Перекрестная ссылка
Далее рассматривается еще несколько примеров, в которых продемонст
рирован подсчет числа определенных символов в пределах одной строки.
Кроме того, информацию по этому вопросу можно найти в главе 7, в которой
обсуждаются методы вычисления значений в Excel, и в главе 15, где речь
пойдет о необыкновенных возможностях формул массивов.
Рис. 5.3. Чтобы быстро создать гистограмму на рабочем листе, воспользуйтесь функцией п о в т о р
146 Часть II. Использование функций в формулах
Совет
Средства условного форматирования позволяют создавать простые гисто
граммы непосредственно в ячейках (см. главу 19).
Формулы, содержащиеся в ячейках столбцов Е и G, графически отображают ежеме
сячное изменение бюджета, выводя на экран ряд символов шрифта Wingdings. В этом
примере мы использовали символ п, который в выбранном шрифте отображается как
маленький квадрат. Формула, использующая функцию ПОВТОР, определяет количество
символов, которое должно быть отображено на экране. Формулы для ячеек, формирую
щих диаграмму, имеют следующий вид.
ЕЗ =ЕСЛИ(D3 < 0 ; ПОВТОР("П" ; - ОКРУГЛ(D3 *10 0 ; 0 ) ) ;"")
F3 =АЗ
G3 =ЕСЛИ( D3 >0 ; ПОВТОР( "п"; ОКРУГЛ( D 3 * 1 0 0 ; 0 ) ) ; " " )
Установите для ячеек ЕЗ и G3 шрифт Wingdings, а затем скопируйте формулы, со
держащиеся в этих ячейках, вниз в ячейки столбцов, чтобы распределить данные. Вы
ровняйте текст в столбце Е по правому краю, после чего примените любое другое фор
матирование ячеек. Имейте в виду, что в зависимости от величины числового диапазона
данных может возникнуть необходимость изменить масштаб значений. Поэксперимен
тируйте с перемещением 100 значений в формулах. Выбранный ранее для диаграммы на
рис. 5.3 символ п можно заменить на любой другой.
Компакт-диск
Рабочая книга, представленная на рис. 5.3, содержится на прилагаемом
компакт-диске в файле t e x t h i s t o g r a m . x l s x ( C h a p t e r 0 5 _R US . x l s x ) .
Перекрестная ссылка
Для получения дополнительной информации о создании пользовательских
форматов обратитесь к приложению Б. В нем вы также найдете дополни
тельные примеры использования символа звездочки в отдельных форматах.
Предупреждение
Функция пропнач не всегда приводит к нужному результату, поскольку она
может неправильно трактовать некоторые слова. К примеру, фамилию
Mc Ca rt ne y она изменит на M c c a r t n ey .
прописн для преобразования текстовой строки в верхний регистр. Чаще всего исход
ные данные требуется заменить преобразованными данными. Для этого вставьте пре
образованное значение поверх исходного текста.
1. Создайте формулы, преобразующие исходные данные.
2. Выделите ячейку с формулой.
3. Выберите команду Главная^Буфер обмена^Копировать.
4. Выделите исходную ячейку с формулой.
5. Выберите команду Главная^Буфер обмена^Вставить^Вставить значения.
После выполнения приведенных выше действий формула удаляется, а на ее место
вставляются преобразованные данные.
ние Excel данные содержат знаки звездочки, которые необходимо преобразовать в дру
гие символы. Безусловно, для этого можно воспользоваться диалоговым окном Найти и
заменить (команда Главная^Редактирование^Найти и выделить1^Заменить). Ес
ли же вы хотите решить эту проблему с помощью формул, воспользуйтесь преимущест
вами любой из следующих двух функций.
1. Функция ПОДСТАВИТЬ заменяет в строке определенный текст или символ. Эту
функцию лучше всего использовать, когда известен символ, который необходимо
заменить, а не его расположение.
2. Функция ЗАМЕНИТЬ заменяет символ, расположенный в определенном месте в
пределах строки. Данная функция используется при замене любого текста, если
известно его местоположение. Содержимое самого текста или символа в данном
случае не учитывается.
Ниже приведена формула, в которой используется функция ПОДСТАВИТЬ для замены
значения года 2001 на 2002 в строке Бюджет 2 001. Эта формула возвращает значение
Бюджет 2 0 0 2 .
=ПОДСТАВИТЬ("Бюджет 2 0 0 1 " ; " 2 0 0 1 " ; " 2 0 02 " )
Следующая формула использует функцию ПОДСТАВИТЬ для удаления из строки всех
пробелов. Другими словами, она заменяет все пробелы пустой строкой и возвращает
строку Б е л ы й ш о к о л а д с и з ю м о м .
= ПОДСТАВИТЬ( "Белый шоколад с изюмом";" ";"")
Приведенная далее формула использует функцию ЗАМЕНИТЬ для замены всего одно
го символа, расположенного в пятой позиции, ничего не вставляя вместо него. Иными
словами, она просто удаляет шестой символ (дефис) и возвращает текст Ч а с т ь 5 4 4 .
=ЗАМЕНИТЬ( "Часть - 5 4 4 " ; б ; 1 ; " " )
Безусловно, можно вкладывать эти функции друг в друга, чтобы с помощью одной
формулы выполнить множество замен. Обратите внимание, насколько может быть эф
фективной следующая формула, использующая несколько вложенных функций
ПОДСТАВИТЬ. По большому счету, эта формула заменяет в ячейке А1 каждый из семи
символов, следующих друг за другом: пробел, дефис, двоеточие, звездочку, символ под
черкивания, открывающую круглую скобку и закрывающую круглую скобку.
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(
ПОДСТАВИТЬ(ПОДСТАВИТЬ(А1;" " ; " " ) ; " - " ; " " ) ; " : " ; " " ) ; "* " ; " " ) ;
к п . м к ^ . п ^ п . п и ^ . п ) и . и п j
Поиск в строке
Найти местонахождение определенного текста или символа в пределах одной строки
в приложении Excel можно с помощью функций НАЙТИ и ПОИСК.
• Функция НАЙТИ обеспечивает поиск текста (подстроки) в пределах текстовой
строки и возвращает исходную позицию этой подстроки. Можно определить по
зицию, с которой следует начать поиск текста. Эту функцию удобно использовать
для сравнения текста с учетом регистра, но она не поддерживает сравнение груп
повых символов.
150 Часть II. Использование функций в формулах
Совет
Чтобы найти символы вопросительного знака или звездочки, введите в
формуле перед этими символами тильду (~).
Компакт-диск
Все примеры, приведенные в этом разделе, можно найти в файле t e x t
e x a m p l e s . x l s x ( C h a p t e r 0 5 _ R U S . x l s x ) на прилагаемом компакт-диске.
Перекрестная ссылка
Обратите внимание, что в данной формуле используются два массива, ука
занные в фигурных скобках. Дополнительную информацию об использова
нии в формулах массивов можно найти в главе 14.
На рис. 5.5 показано, как работает эта формула.
Примечание
Задача становится более сложной, если имена в списке содержат титулы и
звания (например, г - н , проф. ) или сопровождаются некоторыми дополни
тельными подробностями (например, мл. или ш ) . Приведенные ниже
формулы не помогут в таких сложных случаях. Тем не менее они позволяют
существенно продвинуться в решении этой задачи. Вам остается внести
лишь несколько корректировок, чтобы вручную обработать частные случаи.
В приведенных ниже формулах предполагается, что имя и фамилия человека нахо
дятся в ячейке А1. Формула, возвращающая имя человека, выглядит весьма просто:
=ЛЕВСИМВ(А 1 ; НАЙТИ(" " ; А 1 ) - 1 )
Глава 5. Работа с текстом 155
Сложнее ситуация обстоит со списками отчеств людей, так как эта информация мо
жет быть введена не во все ячейки. Данная формула возвращает отчество человека (если
таковое имеется), в противном случае формула не вернет ничего.
=ЕСЛИ(ДЛСТР(А1) -ДЛСТР(ПОДСТАВИТЬ(А1;" " ; " " ) ) >1;
П С Т Р (А 1 ; И С К А Т Ь ( " " ; А 1 ) + 1 ; И С К А ТЬ ( " " ; А 1 ; И С К АТЬ (" ";
А1) + 1 ) - (ИСКАТЬ(" " ; А 1 ) + 1 ) ) ; " " )
И наконец, следующая формула возвращает фамилию:
=ЕСЛИОШИБКА(ПРАВСИМВ ( A I ; LEN (А1) -ИСКАТЬ ( "* " ; ПОДСТАВИТЬ (А1 ;
.. .. . .. *.. . ПРАВСИМВ (А1) -ДЛСТР (ПОДСТАВИТЬ ( А1; " " ; " " ) ) ) ) ) ; " " )
Однако существует формула, которая позволяет более простым способом извлечь из
списка отчества людей. Следующая формула может быть весьма полезна, если изначаль
но использовать две другие формулы для получения имени и фамилии. Необходимо по
местить имя человека в ячейку В1, а фамилию — в ячейку D1.
=ЕСЛИ(ДЛСТР(B1&D1)+ 2 >=ДЛСТР(А1) ;" " ;ПСТР(А1; ДЛСТР(В1)+2;
ДЛСТР(А1)-ДЛСТР(B1&D1)- 2 ) )
Как видно на рис. 5.6, эти формулы работают достаточно хорошо. Тем не менее неко
торые проблемы все же существуют, особенно с именами, которые содержат четыре
слова. Но, как отмечается ниже, такую ситуацию можно исправить вручную.
Перекрестная ссылка
© Для получения более подробной информации о создании приведенных
в этом разделе формул обратитесь к главе 20, в которой рассматриваются
мегаформулы.
Рис. 5.6. На этом рабочем листе используются формулы извлечения имен, отчеств и фа
милий людей, содержащиеся в списке столбца А
зования одного столбца данных в несколько. В общем случае в первом окне мастера
нужно установить переключатель С разделителями и в качестве разделителя во втором
окне выбрать символ пробела.
Перекрестная ссылка
Excel предлагает достаточное количество функций, предназначенных для
работы с текстом. Однако вы можете столкнуться с такой задачей, при ре
шении которой невозможно будет использовать ни одну из существующих
функций. В таком случае вам предоставляется прекрасная возможность
создать собственную функцию для заданного рабочего листа с использова
нием встроенного языка программирования VBA, как описано в главе 25.
Глава
Дата и время
В этой главе...
♦ Принципы управления датами и временем в Excel
♦ Функции управления датами
♦ Функции управления временем
Примечание
Примеры, которые будут использоваться в этой главе, соответствуют фор
мату даты, принятому в русифицированном приложении Excel: д д . м м . г г г г
или д д / м м / г г г г . Например, дата 1.03.1952 или 01/03/1952 означает 1 мар
та 1952 года. Имейте в виду, что это не 3 января 1952 года, как принято в ре
гиональном формате США.
Перекрестная ссылка
Информация, связанная с датами, представлена и в других главах книги.
К примеру, в главе 7 описаны примеры расчета значений ячеек, которым на
значен формат даты, а в главе 25 — некоторые полезные функции управле
ния датами, написанные на VBA.
158 Часть II. Использование функций в формулах
Примечание
Excel 2000 и более поздние версии этого приложения поддерживают даты в
диапазоне от 1 января 1900 года до 31 декабря 9999 года (порядковое число
этой даты 2958465). Диапазон дат, доступный в более ранних версиях при
ложения, значительно меньше. Здесь используются даты с 1 января 1900
года и до 31 декабря 2078 года (порядковое число 65380).
Ввод даты
Конечно, можно вводить дату как порядковое число, но, как правило, дата вводится
с использованием одного из нескольких поддерживаемых в Excel форматов даты. После
ввода даты Excel автоматически преобразует ее в соответствующее порядковое число,
которое в дальнейшем будет использоваться для вычислений. Затем к ячейке применяет
ся заданный по умолчанию формат даты, и на экране отображается более привычный
формат даты, нежели загадочное порядковое число.
Например, если необходимо ввести дату 3 июня 2010 года, то это можно сделать
весьма просто— 3 Июнь, 2 0 1 0 , используя данный формат или любой другой из
имеющихся форматов даты. Excel преобразует введенную информацию и сохранит ее
как числовое значение 3 9 2 5 1 — порядковое число, соответствующее этой дате. После
этого Excel применит формат даты, заданный по умолчанию, поэтому содержимое ячей
ки может быть отображено в представлении, несколько отличном от введенного.
Примечание
В зависимости от установленных региональных параметров операционной
системы, дата, введенная в формате з и ю н ь , 2 0 1 0 , может интерпретиро
ваться как текстовая строка. В таком случае нужно ввести дату, как опреде
лено в окне региональных параметров Windows.
Обратите внимание, что при активизации ячейки, содержащей дату, в строке формул
отображается ее содержимое. Оно будет представлено в заданном по умолчанию форма
те, который соответствует сокращенному виду даты, принятому в системе. Имейте в ви
ду, что строка формул не отображает порядковое число даты. Чтобы отобразить поряд
ковое число даты, примените к ячейке числовой формат.
Совет
Чтобы изменить заданный по умолчанию формат даты, необходимо изме
нить региональные параметры операционной системы. Для этого в систем
ном меню Пуск операционной системы Windows 7 выберите команду Панель
управления^Язык и региональные стандарты и выберите в соответствующих
раскрывающихся списках краткий и полный форматы дат. В Excel по умол
чанию применяется краткий формат даты.
В табл. 6.1 приведены образцы форматов даты, которые поддерживает Excel (исполь
зуемые в региональных параметрах для России и Украины). Однако они могут отличаться,
если в компьютере были установлены параметры другого региона.
160 Часть II. Использование функций в формулах
Рассматривая примеры, приведенные в этой таблице, можно сделать вывод, что Excel
обладает достаточно широкими возможностями преобразования введенных дат, однако
они не вполне совершенны. Например, программа не признает в качестве даты следую
щую введенную информацию:
• 1 июня 2010;
• Июн-1 2010;
• Июн-1/2010.
Эту информацию Excel воспримет как текст. Поэтому прежде чем использовать даты
в формулах, убедитесь, что Excel поддерживает тот формат даты, который собираетесь
ввести. В противном случае формулы, которые обращаются к этим датам, будут работать
некорректно.
Существует еще один недостаток. Если введенная дата находится вне поддерживаемого
диапазона дат, Excel также интерпретирует ее как текст. Если порядковое число, находя
щееся за пределами доступных для даты числовых значений, попытаться привести к фор
мату даты, вместо значения будет отображаться ряд знаков “решетки” (#########).
Поиск даты
В рабочем листе, в котором используется довольно м ного дат, мож ет возникнуть
необходим ость найти определенную дату. Для это го воспользуйтесь д иалоговы м окном
Найти и заменить Excel, которое м ожно открыть, выбрав ком анду Главная^Р ед актиро-
ва н и е ^Н а й ти и вы делить1^ Найти или нажав ком бинацию клавиш <C trl+F>. И мейте в в и
ду, что Excel достаточно требовательна к точности ввода иском ой инф орм ации. Вам
придется ввести полны й четы рехразрядны й го д даты в поле Найти д и а л о го в о го окна
поиска данных. Ф орм ат даты долж ен соответствовать кратком у представлению даты,
принятом у в систем е. Это представление можно увидеть в строке ф ормул.
Ввод времени
Как и в случае с датами, нет необходимости вводить порядковое число времени. Доста
точно ввести в ячейку время в любом из форматов, поддерживаемых в Excel. В табл. 6.3
приведены некоторые примеры записей времени, поддерживаемых в Excel.
Примечание
При использовании системы дат, начинающейся с 1904 года, временные
значения без значения даты отсчитываются от первого января 1904 года.
Все приведенные ниже примеры основываются на системе дат, начинаю
щейся с 1900 года.
Чтобы объединить дату и время, используйте совместный формат даты и времени,
который состоит из формата даты, пробела и формата времени. Например, если в ячейку
ввести текст 18 ию нь, 2010 1 1 :3 0 , приложение Excel вычислит порядковое число
3 9 2 5 1 , 4 7 9 1 6 6 6 6 6 7 и отобразит его в доступном формате даты и времени.
18.06.2010 11:30:00
В некоторых случаях, когда вводится время, превышающее 24 часа, связанная с ним
дата соответственно увеличивается. Например, если ввести в ячейку время 25:00:00, Ex
cel увеличит ту часть, которая относится ко дню (поскольку время превышает 24 часа),
и отобразит введенное значение следующим образом:
0 1 . 01.2000 1 : 00:00
То же самое происходит, если ввести одновременно и дату, и время, превышающее
24 часа. Введенная дата при отображении будет откорректирована. Например, при вводе
в ячейку 0 1 . 0 9 . 2 0 1 0 2 5 : 0 0 : 0 0 на экране отображается следующая информация:
02.09.2010 1:00:00
При вводе только времени без соответствующей даты максимальное время, которое
можно ввести в ячейку равно 9 9 9 9 : 5 9 : 5 9 , т.е. менее 10000 часов. В этом случае Excel
добавляет соответствующее количество дней, и на экране отображается полученная дата.
Если же ввести время, превышающее предел 10000 часов, то оно будет представлено как
простая текстовая строка.
® ^°,вт
При создании формул со ссылками на ячейку, содержимое которой пред
ставляет дату или время, Excel автоматически преобразует результат вы
полнения формул в формат даты или времени. В некоторых случаях это мо
жет быть весьма кстати, в других же создает определенные неудобства
и даже раздражает. К сожалению, Excel не позволяет отключить автомати
ческое форматирование ячейки. Тем не менее в подобных случаях можно
воспользоваться специальной комбинацией клавиш, чтобы отменить фор
матирование всех чисел ячейки и вернуться к формату Общий, заданному по
умолчанию. Для этого достаточно выделить ячейку и нажать комбинацию
клавиш <Ctrl+Shift+~>.
Глава 6. Дата и время 163
Рис. 6.1. Раскрывающийся список числовых форматов используется для задания способа
отображения даты и времени
Совет
Следующий пользовательский формат данных особенно полезен для ото
бражения времени:
[ ч ] :м м :сс
Совет
Если планируете сортировать старые даты, введенные как текст, или хотите
избавиться от проблем с форматами, применяйте даты в формате UTC
(Universal Time Coordinated — универсальное скоординированное время по
Гринвичу). В формате UTC (стандарт ISO 8601) дата записывается так:
г г г г - м м - д д , например, 1 7 7 6 - 0 7 - 2 4 . Это стандартный международный
формат даты и времени, используемый в авиационной и морской навига
ции. Его основное преимущество состоит в том, что он правильно считыва
ется, обрабатывается и сортируется практически в любой системе (в том
числе, в Excel) и при любых параметрах региональных форматов по той при
чине, что в нем все разряды по старшинству расположены слева направо.
Для сравнения: в русском формате даты (например, 2 4 . 7 . 1 7 7 6 ) год (старший
разряд) расположен правее дня (младшего разряда). К сожалению, среди
пользователей формат UTC мало популярен (как в США, так и в России), по
тому что для них он непривычный и по этой причине плохо воспринимается
визуально.
Однако датами, принимаемыми в виде текста, уже нельзя манипулировать как номи
нальными, измеряемыми в единицах времени. Эти даты нельзя сортировать, фильтровать
и форматировать, изменяя числовой формат, как это принято в Excel. Нельзя определить
день недели, на который приходится заданная дата, а также вычислить дату, которая сле
дует семью днями позже.
Перекрестная ссылка
В главе 25 вашему вниманию будет представлено несколько пользовательских
функций VBA, позволяющих работать с датами от 100-го до 9999-го года.
Совет
Чтобы избежать всякого рода неожиданностей при работе с датами, просто
введите год полностью, используя все четыре цифры.
Совет
Чтобы ввести в ячейку штамп даты (значение даты, которое не будет изме
няться каждый последующий день), нажмите клавиши <Ctrl+Shift+; (точка
с запятой)>. Текущая дата будет введена в ячейку в текстовом формате без
использования формулы, поэтому она останется неизменной.
Отображение произвольных да т
Как уже отмечалось, дату можно добавить в ячейку, непосредственно введя ее в лю
бом формате, поддерживаемом в приложении Excel. Дату также можно создать; для это
го воспользуйтесь функцией ДАТА. Эта функция использует три аргумента: год, месяц
и день. Например, приведенная ниже формула возвращает дату, состоящую из года, взя
того из ячейки А1, месяца, взятого из ячейки В1, и дня — из ячейки С1.
=ДАТА(А1;В1;С1)
Примечание
Обратите внимание, что функция дата принимает также недопустимые ар
гументы и приводит результат в соответствие ожидаемому. Например, сле
дующая формула использует число 13 как аргумент месяца и возвращает 1
Январь, 2011. Аргумент месяца автоматически преобразуется в первый
месяц следующего года.
=ДАТА( 2 0 1 0 ; 1 3 ;1)
Предупреждение
Будьте особо внимательны при использовании функции д а т а з н а ч . Тексто
вая строка, которая может быть использована как дата в одной стране, со
вершенно не подходит для ввода даты в другой стране. Предыдущий пример
работает прекрасно в том случае, если система настроена для форматов да
ты России или Украины. Однако при использовании других региональных
форматов даты (в частности, форматов США) формула может возвращать
ошибку, поскольку приложение Excel будет искать восьмой день двадцать
второго месяца.
Создание последовательности да т
В отдельных случаях может возникнуть необходимость вставить в рабочий лист це
лый ряд последовательных дат. Например, при еженедельном отслеживании продаж тре
168 Часть II. Использование функций в формулах
буется ввести несколько последовательных дат с интервалом в семь дней. Эти даты бу
дут служить основой для систематизации коммерческой информации.
Самый эффективный способ ввода ряда последовательных дат не требует никаких
формул. Просто воспользуйтесь инструментом, встроенным в Excel, — автозаполнени
ем. Для этого введите в ячейку первую дату, а затем, удерживая нажатой правую кнопку
мыши, перетащите в необходимом направлении маркер автозаполнения (маленький чер
ный квадрат в правом нижнем углу контура выделения). Отпустите правую кнопку мыши
и выберите в контекстном меню команду Заполнить по дням (рис. 6.2).
Ф
Перекрестная ссылка
Для получения дополнительной информации об использовании формул
управления текстом обратитесь к главе 5.
Примечание
Если приведенная выше формула отображает некорректное значение, убе
дитесь, что ячейки a i и В1 действительно содержат даты, а не текстовую
информацию, похожую на даты.
В некоторых случаях вычисление разницы между двумя датами может потребовать зна
чительных усилий. Чтобы продемонстрировать это, проведем аналогию с “телеграфными
столбами”. Например, если требуется определить количество телеграфных столбов, то за
дачу их подсчета можно решить двумя способами: непосредственно сосчитав количество
столбов или определив количество пролетов между ними. При этом имейте в виду, что ко
личество столбов всегда на один больше, чем пролетов.
Чтобы рассмотреть эту ситуацию применительно к некоторому диапазону дат, в каче
стве примера приведем кампанию по продвижению на рынок некоторого товара. Пред
положим, что начальная дата кампании по продвижению товара — 1 февраля, а завер
шающая дата — 9 февраля. Просто вычитая одну цифру из другой, мы получим ответ:
восемь дней. Но в действительности срок продвижения товара — девять дней. В этом
случае, чтобы получить правильный ответ, необходимо сосчитать дни “включительно”,
а не определять количество дней между датами. Ниже приведена формула, позволяющая
вычислить длительность кампании по продвижению товара (предположим, что у нас есть
ячейки, соответствующие этим названиям).
=ПоследнийДень-НачальныйДень+1
Примечание
Название функции чистрабдни часто вводит в заблуждение. Она не имеет
никакого отношения к чистоте или рабству, а, вместо этого, возвращает ко
личество рабочих дней между двумя заданными датами.
Итак, функция ЧИСТРАБДНИ вычисляет разницу между двумя датами, исключая вы
ходные дни (субботы и воскресенья). Кроме того, как дополнительное условие можно,
определить диапазон ячеек, содержащий даты, на которые приходятся праздничные дни.
Эти даты также могут быть исключены при расчете. Естественно, Excel не имеет ника
кой возможности самостоятельно определять праздничные дни, поэтому вы должны
обеспечить программу этой информацией, указав соответствующий диапазон ячеек.
На рис. 6.3 показан рабочий лист, на котором вычисляется количество рабочих дней
между определенными датами. В диапазоне А2 : А8 содержится перечень дат, приходя
щихся на праздничные дни. Формулы, которые введены в столбце С, вычисляют количе
ство рабочих дней, расположенных между датами в столбцах А и В. Например, формула
в ячейке С И будет иметь такой вид:
=ЧИСТ РАБДНИ( A l l ; В 1 1 ;А 2 :А 8 )
Глава 6. Дата и время 171
Новинка
В Excel 2010 добавлена усовершенствованная версия функции чист р аб дни ,
которая называется ч и с т р а б д н и . межд. Она полезна, когда нужно считать
выходными днями не субботу и воскресенье, а другие дни недели.
Компакт-диск
Файл этого примера на компакт-диске называется work d a y s . x l s x (Chapter06_
RUS. x l s x ) .
Предупреждение
Имейте в виду, что результат, возвращаемый данной формулой, полностью
зависит от региональных форматов даты. В других странах приведенная
выше жестко закодированная дата может интерпретироваться как 1 августа
2010 года. Чтобы избежать этого, используйте следующую формулу:
=РАБДЕНЬ(ДАТА( 2 0 1 0 ; 1 ; 8 ) ; 10 )
Интересно, что второй аргумент функции РАБДЕНЬ может быть отрицательным. Как
и в случае с функцией ЧИСТРАБДНИ, функция РАБДЕНЬ может использовать третий не
172 Часть II. Использование функций в формулах
Имейте в виду, что аргумент начальная_дата должен находиться левее, чем аргумент
конечная_дата, в противном случае функция возвращает ошибку. Кроме того, в русифи
цированной Excel коды единиц измерения должны вводиться английскими буквами.
нья, как это принято в англоязычных программных продуктах. Например, следующая фор
мула возвращает значение 5, поскольку первый день 2010 года выпадает на пятницу:
=ДЕНЬНЕД(ДАТА( 2 0 1 0 ; 1 ; 1 ) )
Функция ДЕНЬНЕД может принимать и второй, необязательный аргумент, который
определяет систему нумерации дней недели для вывода результата. Если в качестве вто
рого аргумента введено значение 2, то функция возвращает значение 1 для понедельни
ка, 2 — для вторника и т.д. Если же в качестве второго аргумента ввести значение 3, то
функция вернет 0 для понедельника, 1 — для вторника и т.д.
Совет
Для того чтобы вычислить день недели даты в ячейке, можете использовать
собственный числовой формат. Выберите команду Главная^Число^Число-
вой формат^Другие числовые форматы. В поле Тип диалогового окна Фор
мат ячеек введите д д д д и щелкните на кнопке ОК. Введите в ячейку дату
(например, 2 2 . 0 7 . 2 0 1 0 ) . В результате в ячейке будет отображено ч е т
в е р г — день недели введенной даты.
Примечание
Если значение, содержащееся в ячейке А4, не принадлежит к диапазону
дней указанного месяца, то формула вернет дату, относящуюся к следую
щему месяцу. Например, если задать определение даты шестой пятницы
июня 2010 года (а такой даты не существует), то формула вернет дату пер
вой пятницы июля.
©
Перекрестная ссылка
Детально формулы массивов рассмотрены в главах 14 и 15.
На рис. 6.4 показан результат использования этой формулы на рабочем листе. В этом
случае используются и абсолютные, и смешанные ссылки на ячейки, поэтому можно ско
пировать эту формулу. К примеру, формула в ячейке СЗ выглядит следующим образом:
{=СУММ( (ДЕНЬНЕД(ДАТА( $ В $ 2 ; $АЗ; СТРОКА(ДВССЫЛ(
"1 : " &ДЕНЬ(ДАТА( $ В $ 2 ; $АЗ + 1 ;0) )) ) ) ) = С $ 1 ) *1) }
176 Часть II. Использование функций в формулах
Итоговые формулы на этом листе используют функцию СУММ. Они вычисляют общее
количество дней в месяце (столбец J) и количество каждого дня недели в году (строка 15).
К ом пакт-диск
Рис. 6.4. На этом рабочем листе вычисляется количество дней недели в месяцах года
Примечание
Результат этой формулы имеет текстовый формат, а не формат даты.
Компакт-диск
Файл этого примера на прилагаемом компакт-диске в авторском варианте
называется o r d i n a l d a y s . x l s x . В нем внимание сосредоточено на ото
бражении суффиксов s t , n d и др., которые используются с числительными
на английском языке.
Вычисление праздничных да т
Вычисление дат, выпадающих на специфические праздничные дни, требует исполь
зования специальных методов. Безусловно, это не касается таких дат, как Новый год или
День Независимости США, поскольку они определены издавна. Для них можно просто
использовать функцию ДАТА, о которой речь шла ранее. Следующая формула отобража
Глава 6. Дата и время 177
ет дату Нового года. Новый год всегда приходится на 1 января; нужный год введите
в кчейку А 1 .
= Д А Т А (А 1 ; 1 ; 1)
Рис. 6.5. Для того чтобы определить дату праздничного дня, воспользуйтесь специаль
ными формулами
Компакт-диск
Файл этого примера на прилагаемом компакт-диске называется h o l i
d a y s . x l s x ( Chapter06_RUS . x l s x ) .
Новый год
Новый год отмечается первого января.
=ДАТА (А 1 ; 1; 1)
День президентов
День президентов празднуется в третий понедельник февраля. Следующая формула
вычисляет дату этого дня в указанном году (ячейка А1):
=ДАТА(А1; 2 ; 1 ) +ЕСЛИ(2<ДЕНЬНЕД(ДАТА(А1; 2 ; 1 ) ) ;7-ДЕНЬНЕД(
ДАТА(А1; 2 ; 1 ) ) + 2 ; 2 - ДЕНЬНЕД(ДАТА(А1; 2 ; 1 ) )) + ( ( 3 - 1 ) * 7 )
178 Часть II. Использование функций в формулах
День труда
День труда — это первый понедельник сентября. Формула, приведенная ниже, опре
деляет его дату в указанном году (ячейка А1).
=ДАТА(А1; 9 ; 1 ) +ЕСЛИ(2<ДЕНЬНЕД(ДАТА(А1; 9 ; 1 ) ) ;7-ДЕНЬНЕД(
ДАТА(А1; 9 ; 1 ) ) + 2 ; 2 -ДЕНЬНЕД(ДАТА(А1; 9 ; 1 ) ) ) + ( ( 1 - 1 ) * 7 )
День ветеранов
Этот праздник выпадает на 11 ноября.
=ДАТА(A I ; 1 1 ; 1 1 )
День Колумба
Этот праздник выпадает на второй понедельник октября. Для вычисления его даты в
указанном году (ячейка А1) используется следующая формула:
=ДАТА(А1; 1 0 ; 1 ) +ЕСЛИ(2<ДЕНЬНЕД(ДАТА(А1; 1 0 ; 1 ) ) ; 7 -ДЕНЬНЕД(
ДАТА(А1; 1 0 ; 1 ) ) + 2 ; 2 -ДЕНЬНЕД(ДАТА(А1; 1 0 ; 1 ) ) ) + ( ( 2 - 1 ) * 7 )
День Благодарения
День Благодарения празднуется в четвертый четверг ноября. Следующая формула
вычисляет дату этого дня в указанном году (ячейка А1):
=ДАТА(А1; 1 1 ; 1 ) +ЕСЛИ( 5<ДЕНЬНЕД(ДАТА(А1; 1 1 ; 1 ) ) ; 7-ДЕНЬНЕД(
ДАТА(А1; 1 1 ; 1 ) ) + 5 ; 5 -ДЕНЬНЕД(ДАТА(А1; 1 1 ; 1 ) ) ) + ( ( 4 - 1 ) * 7 )
Рождество
Католическое Рождество празднуется 25 декабря.
=ДАТА(A I ; 1 2 ; 2 5)
Предупреждение
Помните, что для 1900 года результат истина , возвращаемый данной функ
цией, будет неправильным. Об этой ошибке речь шла ранее.
Примечание
Имейте в виду, что эти формулы обновляются при пересчете рабочего листа.
Совет
Для того чтобы ввести в заданную ячейку штамп времени (значение, которое
не будет изменяться при пересчете рабочей книги), нажмите комбинацию
клавиш <Ctrl+Shift+: (двоеточие)Х
формулу заведомо неправильный аргумент 80. В этом случае формула возвратит значе
ние 10 : 2 0 : 1 5 AM. “Неправильные” 80 минут будут просто добавлены к заданному часу,
а оставшаяся их часть — отображена как 20 минут.
=ВРЕМЯ ( 9 ; 80 ; 15 )
Предупреждение
Если ввести в качестве первого аргумента функции время значение, превы
шающее 24 часа, то результат будет не совсем ожидаемый. Следуя логике,
можно предположить, что такая формула должна определить числовое зна
чение даты и времени, равное 1, 0 4 1 6 6 7 (т.е. один день и один час), но в
действительности она возвращает 0 , 0 4 1 6 6 7 .
=ВРЕМЯ(2 5 ; 0 ; 0 )
Данная формула возвращает то же значение, что и предыдущая:
=ВРЕМЯ( 1 ; 0 ; 0 )
Функция ДАТА может быть использована вместе с функцией ВРЕМЯ в одной ячейке.
Например, следующая формула вычисляет числовое значение 3 9 4 2 0 , 7 7 0 8 3 3 3 3 3 3 , ко
торое соответствует времени 18:30 4 декабря 2010 года.
=ДАТА( 2 0 1 0 ; 1 2 ; 4 ) +ВРЕМЯ( 1 8 ; 3 0 ; 0 )
П реду п режден ие
При вводе описанной выше формулы Excel автоматически форматирует
ячейку для отображения только даты. Чтобы увидеть время, нужно вручную
установить соответствующий числовой формат.
Совет
Для ввода в ячейку текущей даты и времени, которые не будут изменяться
при пересчете листа, нажмите <Ctrl+Shift+; (точка с запятой)>, пробел,
<Ctrl+Shift+: (двоеточие)>, а затем <Enter>.
Функция ВРЕМЗНАЧ преобразует текстовую строку, подобную временному значе
нию, в числовое представление заданного времени. Приведенная ниже формула возвра
щает числовое значение 0 , 2 3 9 5 8 3 3 3 3 3 для времени 5:45:
=ВРЕМЗНАЧ( " 5 : 4 5 " )
Чтобы результат этой формулы отображался как время, необходимо применить к ячейке
формат времени. Имейте в виду, что функция ВРЕМЗНАЧ принимает только форматы вре
мени, поддерживаемые в приложении Excel. Например, следующая формула вернет значе
ние ошибки, поскольку Excel не воспринимает запись “a.m.” как параметр времени:
=ВРЕМЗНАЧ ( " 5 : 4 5 a . m . " )
Весьма очевидно, что формула возвращает неправильное значение (18 часов 30 ми
нут). Ведь простой расчет показывает, что общее количество часов должно быть равным
42 часам 30 минутам. Проблема состоит в том, что на самом деле формула возвращает
числовое значение даты и времени 1 , 7 7 0 8 3 3 , но формат ячейки не позволяет отобра
жать часть значения, относящегося к дате.
Для того чтобы полученный результат отображался как время, превышающее 24 часа,
необходимо изменить формат результирующей ячейки, а часть времени, представляю
щую собой часы, заключить в квадратные скобки. Применение следующего формата
к ячейке В9 позволит правильно отобразить сумму значений времени:
[ч]:мм
Рассмотрим еще один пример расчета времени. На следующем рабочем листе (рис. 6.7)
отслеживаются нормативные и сверхурочные часы, отработанные в течение недели.
Рис. 6.7. Пример рабочей книги для расчета времени, отработанного служащими
Дата начала работы введена в ячейку В4. Столбец В содержит формулы, которые вы
числяют дни недели, соответствующие каждой дате. Таким образом определяются рабо
чие дни недели. Отработанное время вводится в диапазон ячеек С7 : F13. Столбец G со
Глава 6. Дата и время 183
Компакт-диск
Файл примера, показанного на рис. 6.7, на компакт-диске называется t i m e
sheet.xlsm (Chapter06_RUS.xlsx).
В том случае, если направление вычитания времени не столь важно, можно использо
вать функцию ABS, которая возвращает абсолютное значение.
=ABS (В2-А2)
Проблема “отрицательного времени” часто возникает при вычислении разницы между
более ранним и более поздним временем. Вернемся к задаче вычисления количества отра
ботанных часов. Чтобы определить его, достаточно просто вычесть начальное время рабо
ты из конечного времени. Это не представляет никакой проблемы, если два указанных зна
чения приходятся на один и тот же день. Но как быть, если рабочее время начинается неза
долго до конца текущих суток, а заканчивается на следующие сутки? Например, если
служащий начинает работать в 22:00, а заканчивает в 6:00, то в этом случае результатом
вычитания будет отрицательное время. Таким образом, определить отработанные часы
для смены, начинающейся в одних сутках, а заканчивающейся в других, становится про
блемой (рис. 6.8).
Какой может быть выход из такой ситуации? Использование функции ABS и вычис
ление абсолютного значения в этом случае не подходит, поскольку формула возвращает
неправильный результат— 16 часов. Тем не менее приведенная ниже формула может
сработать:
=ЕСЛИ(В2<А2;В2+1;В2)-А2
Существует и более простая формула для решения задачи:
=ОСТАТ(В2-А2;1)
Совет
Как уже отмечалось, работа с отрицательным временем возможна, если ра
бочая книга использует систему дат 1904. Чтобы перейти к этой системе
дат, откройте диалоговое окно параметров Excel, перейдите во вкладку До
полнительно и в разделе При пересчете этой книги установите флажок Ис
пользовать систему дат 1904. Будьте бдительны! При изменении системы
исчисления все даты, имеющиеся в рабочей книге, будут увеличены на че
тыре года.
Если ячейка А1 содержит больше или меньше четырех чисел, то результат, который
возвратит данная формула, будет неверным. Следующая формула корректирует эту
ошибку и возвращает допустимое значение времени для любого времени в “военном
формате” от 0 до 2359:
=ВРЕМЗНАЧ (ЛЕВСИМВ (ТЕКСТ ( А1; "0 000 " ) ; 2 ) &" : "&ПРАВСИМВ (А1; 2) )
В более простой формуле задействована функция ТЕКСТ, которая форматирует стро
ку как текст, а затем использует функцию ВРЕМЗНАЧ, чтобы отобразить результат
в формате времени.
=ВРЕМЗНАЧ(ТЕКСТ(А 1 ;"0 0 \ :0 0") )
Совет
Для заполнения значениями времени диапазона ячеек можно также исполь
зовать функцию автозаполнения. К примеру, чтобы создать последователь
ность значений времени с приращением в 10 минут, введите в ячейку А1
значение 8 : 00, а в ячейку А2 — 8 : 1 0 . Выделите обе ячейки и перетащите
правой кнопкой мыши маркер автозаполнения (в нижнем правом углу ячей
ки А2) ВНИЗ ПО СТОЛбцу.
Рис. 6.9. Для заполнения ячеек не- Рис. 6.10. На этом рабочем листе дата и время переводятся
сколькими временными значения- из одного часового пояса в другой
ми, последовательно возрастаю
щими на 10 минут, использовалась
всего одна формула
Компакт-диск
Файл этого примера на компакт-диске называется gmt c o n v e r s i o n . x l s x
( C h a pt e r 0 6_ R US . x l s x ) .
Компакт-диск
Файл этого примера на компакт-диске называется j o g g i n g lo g .x lsx
( Chapter06_RUS . x l s x ) .
Глава
Способы суммирования
и подсчета данных
В этой главе...
♦ Подсчет и суммирование ячеек электронной таблицы
♦ Подсчет и суммирование записей в базах данных и сводных таблицах
♦ Основные формулы подсчета
♦ Расширенные формулы подсчета ячеек
♦ Формулы суммирования
♦ Условное суммирование по одному критерию
♦ Условные суммы на основе нескольких критериев
©
Перекрестная ссылка
Более подробно о формулах массива, используемых для подсчета и сумми
рования ячеек, рассказано в части IV. Операции подсчета и суммирования
данных в списках описаны в главе 9.
Примечание
Если данные представлены в виде таблицы, многие операции подсчета
и суммирования можно выполнять с помощью функции автофильтрации. По
сле установки критерия автофильтрации таблица отображает только строки,
удовлетворяющие критерию. Остальные строки не удаляются, а скрываются.
Несложно создать формулу, выводящую результаты подсчета в итоговой
строке таблицы. Использование таблиц рассматривается в главе 9.
Перекрестная ссылка
Информация о функциях базы данных, а также об использовании формул
подсчета и суммирования базы данных электронной таблицы приведена
в главе 9.
Создание сводных таблиц— великолепный способ получения количества и суммы
элементов без использования формул. Как и функция базы данных, сводная таблица ис
пользуется в том случае, если данные представлены в форме базы данных.
Перекрестная ссылка
Для получения дополнительной информации о сводных таблицах обрати
тесь к главе 18.
Компакт-диск
Рабочую книгу, показанную на рис. 7.1, в авторском варианте можно найти на
прилагаемом компакт-диске в файле b a s i c c o u n t i n g . x l s x ( C h a p t e r 0 7 _
RUS . x l s x ) .
Примечание
Имейте в виду, что функция с ч и т а т ь п у с т о т ы не учитывает ячейки, содер
жащие нулевое значение, даже если снять флажок Показывать нули в ячей
ках, которые содержат нулевые значения вкладки Дополнительно диалогово
го окна параметров программы.
Функция СЧИТАТЬПУСТОТЫ может использовать в качестве аргумента целую строку
или столбец. Например, приведенная ниже формула возвращает количество пустых яче
ек в столбце А.
= С Ч И ТА ТЬ П УС ТО ТЫ (А : А )
Следующая формула возвращает количество пустых ячеек в пределах всего рабочего
листа Л и с т 1 . Данная формула должна быть введена в другой лист, в противном случае
будет создана циклическая ссылка.
^ С Ч И ТА ТЬ П У С ТО ТЫ (Л и с т!!1 :1 0 4 8 5 7 6 )
194 Часть II. Использование функций в формулах
Примечание
Если ячейка содержит формулу, возвращающую пустую строку, она включа
ется в итог, возвращенный функцией с ч ё т з , даже несмотря на то, что внеш
не выглядит пустой.
Функция ЕОШ возвращает значение ИСТИНА, если ячейка содержит любое значе
ние ошибки, за исключением # Н /Д .
Функция ЕНД возвращает значение ИСТИНА, если значение равно # Н /Д .
Примечание
Обратите внимание: ошибка #н/д (нет данных) обрабатывается не так, как
другие. В большинстве случаев это вообще не ошибка. Часто сообщение
#н/д используется в качестве правильного заполнителя ячейки при отсутст
вии данных. Значение #н/д можно ввести непосредственно или с помощью
функции нд.
Все примеры этого раздела приведены для простого рабочего листа, показанного на
рис. 7.2, в котором в столбцах Месяц, Представитель и Тип содержатся данные о про
дажах товара фирмой. Диапазоны ячеек данного рабочего листа имеют имена, соответ
ствующие значениям, введенным в строку 1.
Компакт-диск
Рабочую книгу, показанную на рис. 7.2, можно найти на прилагаемом компакт-
диске в файле m u l t i p l e c r i t e r i a c o u n t i n g . x l s x ( C h a p t e r 0 7 _ R U S . x l s x ) .
Глава 7. Способы суммирования и подсчета данных 197
t
Новинка
Некоторые примеры этого раздела используют функцию с ч ё т е с л и м н , вве
денную в версии Excel 2007. В разделе также будут представлены альтерна
тивные версии формул, которые нужно использовать, если создаваемую
рабочую книгу требуется совместно использовать с теми, у кого установле
ны предыдущие версии Excel.
Рис. 7.2. На этом рабочем листе приведены различные варианты подсчета, использующие
целый ряд условий
Использование условия и
Функция СЧЁТЕСЛИМН принимает пары аргументов. В пару входят диапазон условия
и условие. Количество пар не ограничено. Логическая операция И реализуется благодаря
тому, что функция учитывает ячейку, только если истинны все пары. Используя условие
И, можно подсчитать все ячейки диапазона, соответствующие определенным условиям.
Типичным примером использования этого условия можно считать формулу, с помощью
которой подсчитывается количество значений, содержащихся в пределах определенного
числового диапазона. Предположим, что необходимо подсчитать ячейки, которые ото
бражают значения большие 1 0 0 и меньшие или равные 2 0 0 . Функция СЧЁТЕСЛИМН
принимает следующий вид:
=СЧЁТЕСЛИМН (О б ъ е м ; " > 1 0 0 " ; О б ъ е м ; "< = 2 0 0 " )
В данном примере функция СЧЁТЕСЛИМН принимает две пары аргументов. Первым
элементом каждой пары является диапазон значений (в нашем примере это Объем), вто
рым — критерий. Формула возвращает количество всех ячеек диапазона Объем, в кото
рых значение больше 100 и меньше 200.
До выхода в свет Excel 2007 вам пришлось бы использовать формулу следующего вида:
СЧЁТЕСЛИ(О бъем;" > 1 0 0 " ) - С Ч Ё Т Е С Л И ( О б ъ е м ;" > 2 0 0 " )
198 Часть II. Использование функций в формулах
Примечание
При вводе ф ормулы м ассива не забы вайте нажимать <Ctrl+Shift+Enter>
вм есто <Enter>; также не вводите вручную ф игурны е скобки — они будут
вставлены автом атически.
Условия подсчета можно задать не только для суммируемых, но и для других ячеек.
Например, можно подсчитать количество продаж в ячейках, соответствующих следую
щим условиям:
• месяц — январь
и
• представитель — Данилкин
и
• сумма больше 1000.
Следующая формула возвращает количество ячеек массива, соответствующих всем
трем условиям:
=СЧЁТЕСЛИМН(Месяц;"Январь"; П р е д с т а в и т е л ь ; "Данилкин";
О б ъ ем ;">1000")
В качестве альтернативы можно использовать следующую формулу массива:
{=СУММ( (Месяц="Январь" ) * (П редстави тель="Д ан илк и н")*
(С ум м а> 100 0)) }
Так как в данном случае в аргументах функции приходится повторять операцию “И”,
использование СЧЁТЕСЛИМН может привести к созданию длинных формул с множест
вом критериев. Когда список критериев велик, удобнее использовать формулы массивов.
К примеру, следующая формула массива вернет тот же результат, что и предыдущая:
{= С У М М ( ( М е с я ц = " Я н в а р ь " ) * Е С Л И ( ( П р е д с т а в и т е л ь = " Д а н и л к и н " ) +
( П р е д с т а в и т е л ь = "К у к и н а " ) ; 1 ) ) }
Предупреждение
Если существует несколько значений, встречающихся с одинаковой макси
мальной частотой, данная формула вернет первое из них.
Компакт-диск
Рабочую книгу, показанную на рис. 7.4, можно найти на прилагаемом компакт-
диске в файле c o u n t i n g t e x t i n a r a n g e . x l s x ( C h a p t e r 0 7 _ R U S . x l s x ) .
Глава 7. Способы суммирования и подсчета данных 201
Компакт-диск
Рабочую книгу, показанную на рис. 7.5, можно найти на прилагаемом ком
пакт-диске в файле c o u n t u n i q u e . x l s x ( C h a p te r0 7 _ R U S . x l s x ) .
Массив в диапазоне C l : C l 2 содержит итоги, подсчитанные для каждого значения
в массиве И н т е р в а л . Например, число 100 появляется в массиве И н т е р в а л три раза.
Таким образом, каждый элемент массива С 1:С 12, соответствующий значению 100
в диапазоне Д ан н ы е, будет содержать значение 3.
Диапазон D1 :D12 отображает результаты следующей формулы массива:
{= 1/C l : С12}
Данный массив состоит из значений, полученных путем деления 1 на значения мас
сива в диапазоне ячеек C l : С12. Например, если какая-либо ячейка исходного диапазона
И н т е р в а л содержит значение 2 00, то соответствующая ей ячейка в диапазоне D l : D12
будет иметь значение 0 ,0 5 .
Глава 7. Способы суммирования и подсчета данных 203
Ф
Перекрестная ссылка
Создание формулы массива, возвращающей список одинаковых значений
в заданном диапазоне ячеек, описано в главе 15.
Распределение частот
Главным компонентом процедуры распределения частот является итоговая таблица,
которая отображает частоту повторения значений в заданных интервалах. Например,
преподаватель школы или ВУЗа может создать распределение частот экзаменационных
оценок, т.е. таблицу, в которой отображается количество значений 1, 2, 3 и т.д. Чтобы
создать распределение частот, воспользуйтесь одним из следующих инструментов, кото
рые Excel предоставляет в ваше распоряжение:
• функция ЧАСТОТА;
• собственная формула;
• надстройка “Пакет анализа”;
• сводная таблица.
Компакт-диск
Рабочую книгу, демонстрирующую использование всех четырех методов
создания распределения частот, можно найти на прилагаемом компакт-
диске в файле f r e q u e n c y d i s t r i b u t i o n . x l s x ( C h a p t e r 0 7 _ R U S . x l s x ) .
Примечание ч
Если данные представлены в форме базы данных, для создания распреде
ления частот можно также использовать сводную таблицу.
Функция ЧАСТОТА
Самый простой способ создания таблицы распределения частот в приложении
Excel— использование функции ЧАСТОТА. Эта функция возвращает массив, поэтому
она всегда должна применяться в формуле массива, введенной в диапазон ячеек.
На рис. 7.6 в диапазон ячеек A i : Е 2 0 ( Д и а п а з о н З ) введены значения от 1 до 5 0 0 .
Диапазон G2 :G 11 задает уровни дискретизации (интервалы), используемые в распреде
лении частот. Каждая ячейка этого диапазона представляет собой верхний предел интер
вала. В данном случае используются интервалы 1-50, 51-100, 101-150 и т.д. Более про
стой способ создания интервалов рассматривается далее.
204 Часть II. Использование функций в формулах
Формула в ячейке G2, приведенная ниже, представляет собой формулу массива, кото
рая подсчитывает количество баллов, относящихся к оценке А.
{=СУММ((Оценки>=Б2)* (Оценки<=Е2) ) }
Эта формула уже использовалась в предыдущем разделе настоящей главы. В данном
примере формула скопирована в четыре ячейки ниже ячейки G2.
Формулы в столбце Н вычисляют процентное соотношение оценок. Формула, содер
жащаяся в ячейке Н2, скопирована в четыре ячейки, находящиеся ниже Н2.
=G2/CYMM($G$2:$G$6)
Предупреждение
П К» Учтите, что в данном случае распределение частот состоит из значений, а не
формул. Поэтому при внесении изменений во входные данные нужно по
вторно открыть диалоговое окно Гистограмма, чтобы обновить отображае
мые графические результаты.
Перекрестная ссылка
Сводные таблицы рассматриваются в главе 18, а создание полос гисто
граммы с помощью условного форматирования — в главе 19.
Компакт-диск
Рабочий лист, показанный на рис. 7.12, можно найти на прилагаемом ком
пакт-диске в файле a d j u s t a b l e b i n s . x l s x (Chapter07_RUS . x l s x ) .
Данная диаграмма использует в формуле РЯД два динамических имени. Имя
К а т е г о р и и определяется с помощью следующей формулы:
=СМЕЩ( 7 _ 1 2 ! $ Е $ 4 ; 0 ; 0 ; ОКРУГЛВВЕРХ( 1 0 0 /Р а зм е р ы И н т е р в а л о в ; 0 ) )
Имя Ч а с т о т а определяется следующей формулой:
=СМЕЩ( 7 _ 1 2 ! $ F $ 4 ; 0 ; 0 ; ОКРУГЛВВЕРХ( 1 0 0 /Р а зм е р ы И н т е р в а л о в ; 0 ) )
В результате при изменении содержимого ячейки Р а з м е р ы И н т е р в а л о в диаграмма
автоматически корректируется.
Перекрестная ссылка
Дополнительная информация о создании диаграмм, использующих динами
ческие имена в формуле р я д , приведена в главе 17.
Глава 7. Способы суммирования и подсчета данных 209
Формулы суммирования
В этом разделе представлены основные принципы суммирования содержимого ячеек, а
также рассмотрены примеры суммирования: как простейшие формулы суммирования, так
и сложные формулы массивов, которые вычисляют значения на основе ряда критериев.
Предупреждение
Несмотря на всю универсальность, функция сумм в отношении логических
значений (истин а и л и ложь) ведет себя достаточно противоречиво. Напри
мер, логические значения, сохраненные в ячейках, всегда трактуются как
нуль, однако при использовании логического значения и ст и н а в качестве
аргумента функции сумм о н о трактуется как единица.
210 Часть II. Использование функций в формулах
Накопительная сумма
При необходимости можно вычислить общую сумму значений заданного диапазона,
которая в этом случае называется накопительной. На рис. 7.13 приведен пример такого
вычисления. В столбце В представлены суммы по месяцам, а в столбце С отображается
накопительная сумма за все прошедшие месяцы.
В ячейку С2 введена следующая формула:
=СУММ(В$2:В 2 )
Обратите внимание, что данная формула использует смешанную ссылку. Первая
ячейка диапазона, на которую ссылается формула, всегда располагается в строке 2. При
копировании этой формулы вниз по столбцу данный диапазон изменится, но таким обра
зом, что суммирование ячеек всегда будет начинаться со строки 2 и заканчиваться теку
щей строкой. Если скопировать эту формулу вниз по столбцу С, ячейка С8 отобразит
следующую формулу:
=СУММ(В$2:В8)
Чтобы скрыть общие суммы для строк, данные в которые еще не введены, используй
те функцию ЕСЛИ (например, как в формуле, введенной в ячейку С2 и скопированной
вниз по столбцу).
=ЕСЛИ(ЕПУСТО(В2) ; " " ; СУММ(В$2:В 2 ))
На рис. 7.14 показано, как работает эта формула.
Рис. 7.13. С помощью простой формулы, Рис. 7.14. Чтобы скрыть текущие суммы
введенной в столбец с, можно представить для строк с отсутствующими данными,
текущую сумму значений из столбца в используйте функцию е с л и
Компакт-диск
Рабочий лист, показанный на рис. 7.14, можно найти на прилагаемом ком
пакт-диске в файле c u m u l a t i v e s u m . x l s x (C h a p t e r 0 7 _ R U S . x ls x ) .
Перекрестная ссылка
О массивах речь пойдет в главе 14.
Компакт-диск
Примеры, приведенные в этом разделе, можно найти на прилагаемом ком
пакт-диске в файле c o n d i t i o n a l s u m m i n g . x l s x ( C h a p t e r 0 7 _ R U S . x l s x ) .
212 Часть II. Использование функций в формулах
Примечание
Для того чтобы просуммировать отрицательные значения диапазона
Разница, можно также использовать следующую формулу массива:
{=СУММ(ЕСЛИ(РазницасО;Разница)) }
Вовсе не обязательно в функции СУММЕ СЛИ жестко программировать критерий. На
пример, следующая формула использует ссылку на содержимое ячейки G2, в которую
введен критерий:
=СУММ( Р а з н и ц а ; G2)
Когда критерий в ячейке G2 изменяется, формула возвращает новый результат.
Примечание
Чтобы вычислить сумму значений диапазона Сумма, для которых соответст
вующие значения диапазона Разница являются отрицательными, можно
также воспользоваться следующей формулой массива:
{ =СУММ(ЕСЛИ(Разница<0 ; Сумма)) }
Глава 7. Способы суммирования и подсчета данных 213
Применение оператора и
Предположим, необходимо подсчитать общую сумму по счетам, оплата которых про
срочена И которые, в то же время, выписаны филиалом в Калуге. Иными словами, значе
214 Часть II. Использование функций в формулах
ния, содержащиеся в диапазоне Сумма, будут суммироваться только в том случае, если
одновременно выполняются следующие условия:
• в диапазоне Р а з н и ц а им соответствуют отрицательные значения;
• соответствующий им текст в диапазоне О т д е л е н и е — это К а л у г а .
Примечание
Предыдущую формулу массива можно переписать с помощью функции
выполняющей умножение и сложение элементов массивов.
суммпроизв ,
=СУММПР0ИЗВ( ( Р а з н и ц а с О ) ; ( Филиал= "К а луга" ) /Сумма)
Однако в силу непонятных причин функция суммпроизв обрабатывает буле
вы значения некорректно, поэтому данная формула нежизнеспособна. Тем
не менее можно использовать другую формулу, которая умножает булевы
значения на 1, — она корректно справится со своей задачей.
=СУММПР0ИЗВ( 1 * ( Р а з н и ц а с О ) / 1 * ( Филиал="К а л у г а " ) /Сумма)
Поиск данных
В этой главе...
♦ Знакомство с формулами поиска данных
♦ Функции, применяемые для поиска данных
♦ Базовые формулы поиска
♦ Специальные формулы поиска
В настоящей главе будут описаны методы поиска значений в таблицах. Для выполне
ния этой задачи в Excel предоставляется три функции: ПРОСМОТР, ВПР и ГПР. Несмотря
на то что именно эти функции рассматриваются как основные функции поиска информа
ции, они не являются универсальными. В этой главе также приведены примеры поиска
информации, поддерживаемые как обычными средствами Excel, так и другими, более
специализированными инструментами поиска данных.
Примечание
В этой главе термин таблица означает прямоугольный диапазон данных, а не
табличный объект, созданный с помощью команды Вставка^Таблицы^Таблица.
На рис. 8.1 показан простейший рабочий лист, который содержит несколько формул
поиска и таблицу с данными о служащем (диапазон Д а н н ы е С л у ж а щ е г о , начиная с 9-й
строки). Если в ячейку В2 ввести интересующую вас фамилию, формулы поиска, вве
денные в диапазон ячеек С2 : F2, найдут в таблице необходимую информацию. В приве
денных ниже формулах используется функция поиска ВПР.
218 Часть II. Использование функций в формулах
Ячейка Ф ормула
С2 = В П Р ( В 2 ; ДанныеСлужащего; 2 ; ЛОЖЬ)
D2 = В П Р ( В 2 ; ДанныеСлужащего; 3 ; ЛОЖЬ)
Е2 = В П Р ( В 2 ; ДанныеСлужащего; 4 ; ЛОЖЬ)
F2 = В П Р ( D 2 /ДанныеСлужащего; 5 ; ЛОЖЬ)
В этом примере для извлечения информации из диапазона Д анны еС луж ащ его ис
пользуется четыре формулы. Однако, как правило, требуется вернуть только одно значе
ние таблицы, в таких случаях используется только одна формула.
Компакт-диск
\S ^ Примеры этого раздела доступны на прилагаемом компакт-диске в файле
b a s i c lo o k u p e x a m p l e s . x l s x ( C h a p t e r 0 8 _ R U S . x l s x ) .
Функция ВПР
Функция ВПР выполняет поиск значения в первом столбце просматриваемой таблицы
и возвращает значение из ячейки, расположенной на пересечении найденной строки
и указанного столбца таблицы. Данная функция выполняет вертикальный поиск по таб
лице. Синтаксис функции ВПР следующий:
ВПР ( искомое_значение; массив_табл; номер_индекса_столбца ;
интерв аль ный_про смо тр)
Функция ВПР использует следующие аргументы.
• и с к о м о е _ з н а ч е н и е — значение, которое необходимо найти в первом столбце
таблицы (значение, ссылка или строка).
• м а с с и в _ т а б л — диапазон, содержащий таблицу, в которой выполняется поиск
данных.
• н о м е р _ и н д е к с а _ с т о л б ц а — номер столбца в таблице, из которого необходи
мо возвратить соответствующее значение.
• и нт е р ва ль н ы й _ п р о см о т р — необязательный аргумент. Если данный аргумент
содержит значение ИСТИНА или опущен, функция возвращает значение, найден
ное путем приближенного сопоставления искомого значения. Если не определено
точное значение, функция возвращает ближайшее значение, меньшее, чем задан
ный аргумент и с к о м о е _ з н а ч е н и е . В случае, если аргумент содержит логиче
ское значение ЛОЖЬ, функция ищет точное соответствие. Если точное соответст
вие не найдено, функция возвращает ошибку #Н/Д.
Примечание
Если аргумент интервальный_просмотр содержит значение и сти н а и л и опу
щен, таблица должна быть отсортирована в порядке возрастания. В случае,
если аргумент искомое_значение меньше самого меньшего значения, со
держащегося в первом столбце диапазона массив_табл, функция впр вернет
ошибку #н/д. Если аргумент интервальный_просмотр содержит значение
ложь, первый столбец таблицы поиска не требует сортировки по возрастанию.
Если точное соответствие не найдено, функция возвращает ошибку #н/д.
220 Часть II. Использование функций в формулах'
©
Совет
Если аргумент искомое_значение содержит текст и аргумент интерваль-
ный_просмотр равен ложь, искомое значение может содержать групповые
символы * и ?. Звездочка означает любое количество произвольных симво
лов, а знак вопроса — один произвольный символ.
Классическим примером использования формулы поиска может служить таблица с
процентными ставками налога (рис. 8.2). В эту таблицу внесены ставки налога, каждая из
которых соответствует определенному уровню дохода служащего. Следующая формула,
введенная в ячейку В2, возвращает ставку налога для заданного уровня дохода в ячейке В1:
=ВПР(В2; D 2 : F 7 ;3)
Функция Г П Р
Функция ГПР работает аналогично ВПР, за исключением того, что таблица просмат
ривается не по вертикали, а по горизонтали. Функция просматривает верхнюю строку
таблицы и возвращает значение из указанной строки.
Функция ГПР имеет следующий синтаксис:
ГПР {искомое_значение; таблица; номер_строки; интервальный_просмотр)
В функции ГПР используются следующие аргументы.
• искомое_значение — значение, которое требуется найти в первой строке таблицы.
• таблица — таблица, в которой выполняется поиск данных.
• номер_строки — номер строки в таблице, из которой возвращается сопостав
ляемое значение.
• интервальный_просмотр — необязательный аргумент. Если значение этого
аргумента ИСТИНА или опущено, функция возвращает значение, найденное путем
приближенного сопоставления искомого значения (если точное соответствие не
Глава 8. Поиск данных 221
Совет
Если аргумент искомое_значение содержит текстовое значение и аргумент
интервальный_просмотр равен ложь, в искомом значении можно исполь
зовать групповые символы * и ?. Звездочка соответствует любому количе
ству символов, а знак вопроса — одному символу.
На рис. 8.3 показана таблица со ставками подоходного налога, но уже в горизонталь
ной форме ( E l : J3 ). Формула в ячейке ВЗ выглядит следующим образом:
=ГПР (В2 ; E l : J3 ; 3 )
в С О Е F G Н I J к
U I i 1_________________________
Рис. 8.3. В этом случае для поиска ставки подоходного налога можно воспользоваться функцией гпр
Функция ПРОСМОТР
Функция ПРОСМОТР имеет следующий синтаксис:
ПРОСМОТР (искомое_значение; вектор_просмотра; вектор_результата)
Данная функция использует следующие аргументы.
• искомое_зна чение — значение, которое функция ищет в векторе просмотра.
• вектор_просмотра — диапазон, состоящий только из одной строки или одного
столбца и содержащий значения, среди которых необходимо найти нужное. Зна
чения должны располагаться в порядке возрастания.
• вектор_результата — диапазон, состоящий только из одной строки или одно
го столбца и содержащий значения, которые будут возвращены. Размер этого диа
пазона должен быть равен размеру диапазона вектор_просмотра.
Функция ПРОСМОТР просматривает диапазон, состоящий из одной строки или одного
столбца ( вектор_просмотра ), находит необходимое значение (искомое_значение )
и возвращает значение, содержащееся в соответствующей ячейке второго диапазона, ко
торый также состоит из одной строки или одного столбца ( вектор_результата ).
Предупреждение
Имейте в виду, что значения диапазона вектор_просмотра должны распола
гаться в порядке возрастания. В том случае, когда искомое_значение меньше
наименьшего значения, содержащегося в диапазоне вектор_просмотра,
функция возвращает ошибку # н / д .
222 Часть II. Использование функций в формулах
Примечание
Справочная система Excel указывает, что функция просм отр имеет два ва
рианта синтаксиса, один из которых включает аргумент массив. Это обеспе
чивает совместимость Excel с другими программами управления электрон
ными таблицами. Однако на практике вместо второго варианта синтаксиса
предпочтительнее использовать функции впр и гпр.
На рис. 8.4 показана все та же таблица ставок налога, только на этот раз формула, ко
торая введена в ячейку ВЗ, содержит функцию ПРОСМОТР, возвращающую соответст
вующую ставку. Обратите внимание на то, что возвращаемые значения содержатся в
другой таблице.
=ПРОСМОТР(В2; D 2 : D 7 ; G 2 :G9)
Предупреждение
Если значения в первом столбце не расположены в порядке возрастания, зна
чение, которое возвращает функция просмотр , может быть неправильным.
Примечание
В том случае, если аргумент тип_сопоставления равен единице, функция
поискпоз ищет самое большое значение, которое меньше либо равно аргу
менту искомое_значение (значения диапазона массив_поиска должны
располагаться в порядке возрастания, т.е. диапазон должен быть отсорти
рован). Если аргумент тип_сопоставления равен нулю, функция ищет пер
вое значение, в точности соответствующее аргументу искомое_значение.
Если же аргумент тип_сопоставления равен -1, функция ищет наименьшее
значение, которое больше или равно аргументу искомое_значение (в этом
случае значения диапазона массив_поиска должны располагаться в поряд
ке убывания). Если аргумент тип_сопоставления опущен, то по умолчанию
он принимается равным единице.
Функция ИНДЕКС возвращает ячейку диапазона. Синтаксис функции следующий:
ИНДЕКС (массив ; номер_строки; номер_столбца)
Функция ИНДЕКС принимает три аргумента.
• м а с с и в — диапазон, являющийся массивом.
• ном ер_ст роки — строка в массиве ма с сив, из которого возвращается значение.
• ном ер_ст олбца — столбец в массиве ма с сив, из которого возвращается значение.
Примечание
Если массив содержит всего одну строку или столбец, соответствующий ар
гумент номер_строки\лп\л номер_столбца использовать не обязательно.
На рис. 8.5 показан рабочий лист, в котором в столбцах D, Е и F содержатся значения
дат, дней недели и сумм. При вводе даты в ячейку В1 формула, приведенная ниже
(ячейка В2), просматривает значения в столбце D (так выполняется поиск необходимой
даты), а затем возвращает из столбца F соответствующую этой дате сумму.
=ИНДЕКС(F 2 : F 21 ; ПОИСКПОЗ(В 1 ; D 2 :D21 ; 0 ) )
Чтобы понять, как работает эта формула, начните с функции ПОИСКПОЗ. Данная
функция ищет в диапазоне D2 :D 2 1 дату, содержащуюся в ячейке В1, и относительный
номер строки, в которой эта дата найдена. Полученное значение используется в качестве
второго аргумента функции ИНДЕКС. В результате формула возвращает соответствую
щее значение, содержащееся в диапазоне F2 : F 2 1 .
Если нужно, чтобы нулевые значения отличались от пустых ячеек, измените формулу
просмотра, добавив в нее функцию если , — так вы определите длину возвращаемого
значения. В том случае, если возвращаемая ячейка пустая, длина значения восприни
мается равной нулю, во всех других случаях — как ненулевое значение. Следующая
формула возвращает пустую строку всякий раз, когда длина возвращаемого значения
нулевая; фактическое значение будет отображено в том случае, когда длина значения
не равна нулю.
=ЕСЛИ(ДЛСТР(ВПР(В1; D 2 : Е 8 ;2) ) = 0 ; " " ; (ВПР(В1; D 2 : Е 8 ;2) ) )
Компакт-диск
Примеры ЭТОГО раздела находятся в файле s p e c i a l i z e d lo o k u p exam
p l e s . x l s x (Chapter08_RUS . x l s x ) на прилагаемом компакт-диске.
Глава 8. Поиск данных 225
Поскольку последний аргумент функции ВПР имеет значение ЛОЖЬ, функция возвращает
значение только в том случае, если найдено точное соответствие. В противном случае, если
значение не найдено, формула возвращает ошибку #Н/Д. Безусловно, поиск приближенного
соответствия значения табельного номера служащего не имеет в данном случае никакого
смысла. Обратите внимание также на то, что табельные номера служащих в столбце С распо
ложены не в порядке возрастания, поскольку при использовании в качестве четвертого аргу
мента логического значения ЛОЖЬ упорядочения по возрастанию не требуется.
Совет
Если нужно, чтобы вместо ошибки # н /д на экране отображалась другая ин
формация (в случае, если табельный номер служащего не найден), исполь
зуйте функцию еслиошибка. Ее синтаксис следующий:
ЕСЛИОШИБКА( значение ; значение_ если_ ошибка)
где:
♦ значение — это произвольное выражение; обычно это формула, по
тенциально способная вернуть ошибку;
♦ зна чение_если_ошибка — это любое выражение, содержащее чис
ла, строки, ссылки на ячейки или формулы.
Следующая формула вместо ошибки # н /д отображает текст не найдено:
=ЕСЛИОШИБКА(ВПР(В 1 ; СписокСлужащих; 2 ; ЛОЖЬ) ) ; " Не н а й д е н о ")
226 Часть II. Использование функций в формулах
Рабочий лист, показанный на рис. 8.8, содержит два диапазона: первый включает
ячейки D2 :D7 (с именем Д иап азон01), второй— ячейки Е 2:Е 7 (с именем Д иапа
зоне^). Текст, который необходимо найти, содержится в ячейке В1 (с именем Слово).
Примечание
Не забывайте, что при вводе формулы массива необходимо использовать
клавиши <Ctrl+Shift+Enter>.
Рис. 8.9. Данный рабочий лист содержит много таблиц поиска данных
228 Часть II. Использование функций в формулах
Совет
Существует еще один способ быстрого создания формулы для поиска зна
чения на пересечении строк и столбцов. Он предусматривает присвоение
имен каждой строке и каждому столбцу таблицы. Для этого выделите табли
цу с данными и выберите команду Формулы*=>Определенные именаоСоздать
из выделенного. После создания имен приведенные формулы будут выгля
деть гораздо проще.
=3ажигалки Июль
Данная формула использует пересечение двух диапазонов и возвращает
данные о продажах зажигалок в июле. Для обращения к ячейкам, в которые
введены месяц и товар, используйте следующую формулу:
=ДВССЫЛ(Месяцы) ДВССЫЛ(Товар)
Эта формула преобразует значения ячеек с именами месяцы и товар в ссылки
на диапазоны и находит пересечение. (Оператор пересечения подробно опи
сан в главе 3.)
Таблица поиска содержит список автомобилей, для каждого из которых указаны про
изводитель, модель и код. Диапазоны рабочего листа названы следующим образом.
F2:F12 Код
В1 Производитель
В2 Модель
D2:D12 Диапазон4
Е2:Е12 ДиапазонБ
Рис. 8.14.хФормула в ячейке В2 воз- Рис. 8.15. Данная рабочая книга демонстрирует процесс
вращает адрес ячейки в диапазоне поиска значения, ближайшего к заданному
Данные, в которой содержится зна
чение, введенное в ячейку В1
Формула, приведенная ниже (в ячейке В2), для принятия решения использует функ
цию ЕСЛИ. Если в диапазоне х найдено значение, в точности соответствующее искомо
му, формула возвращает соответствующее значение из диапазона у (используется функ
ция ПРОСМОТР). Если же точное соответствие не найдено, формула использует функцию
ТЕНДЕНЦИЯ и возвращает значение у, рассчитанное методом поиска максимально близ
кой величины (не прибегая к линейной интерполяции).
=ЕСЛИ(В1=ПРОСМОТР(В1 ; х ; х ) ; ПРОСМОТР(ИНДЕСК(х; ПОИСКПОЗ(
ПРОСМОТР( В 1 ; х ; х ) ; х ; 0 ) ) ; х ; у ) ; ТЕНДЕНЦИЯ( у ; х ; В 1 ) )
Глава
Базы данных
и таблицы листа
В этой главе...
♦ Таблицы и терминология
♦ Работа с таблицами
♦ Расширенная фильтрация
♦ Определение условий расширенного фильтра
♦ Функции баз данных
♦ Вычисление промежуточных итогов
Таблицы и терминология
Похоже, компания Microsoft следует традиции в присвоении имен создаваемым сред
ствам и технологиям. В версии Excel 2003 были введены списки, обеспечивающие работу
баз данных рабочего листа. В версии Excel 2007 списки эволюционировали в таблицы.
Дополнительную путаницу вносят и так называемые таблицы данных, которые вообще
не имеют ничего общего с полноценными таблицами Excel. В этом разделе представле
ны термины, используемые на протяжении всей главы.
• База данных листа. Это определенным образом организованная совокупность
информации. Она состоит из необязательной строки заголовков (описательного
238 Часть II. Использование функций в формулах
текста) и находящихся под ней строк, содержащих числовые или текстовые значе
ния. В этой книге под базой данных листа понимается прямоугольный диапазон,
в котором каждая строка содержит информацию о конкретном элементе данных
(аналогично таблицам реляционных баз данных). В общем случае термин база
данных используется в довольно широком смысле, означая многие понятия, такие
как реляционные базы данных (SQL Server, Oracle и т.д.), файлы CSV, инициали-
зационные файлы и т.д. База данных рабочего листа Excel больше похожа на
обычную таблицу в стандартной базе данных. В отличие от реляционных баз дан
ных, Excel не позволяет устанавливать отношения между таблицами.
• Таблица листа. Это база данных рабочего листа, преобразованная в специальный
диапазон с помощью команды Вставка^Таблицы^Таблица. Преобразование
базы данных рабочего листа в таблицу предоставляет пользователю существенные
преимущества, однако в то же время имеет некоторые недостатки. Все они будут
описаны в настоящей главе.
В терминологии баз данных столбец такой таблицы называется полем, а строка — за
писью. Используя эту терминологию, можно сказать, что диапазон, показанный на
рис. 9.1, имеет пять полей (Имя, Г о д о в а я з а р п л а т а , М е с я ч н а я з а р п л а т а ,
Филиал, Д а т а п р и е м а н а р а б о т у ) и двадцать записей. Учитывайте, что поля часто
называют просто столбцами, а отдельные ячейки — полями.
Глава 9. Базы данных и таблицы листа 239
Размер базы данных, которую можно создать в Excel, ограничен только областью ра
бочего листа. Теоретически база данных рабочего листа может иметь более 16 тысяч
столбцов и состоять из более миллиона записей. Такая база данных способна заставить
даже самый современный компьютер работать со скоростью черепахи.
Пример таблицы
На рис. 9.2 показана база данных рабочего листа (см. рис. 9.1), преобразованная
в таблицу с помощью команды Вставка^Таблицы«^Таблица.
Работа с таблицами
Осваивая работу с таблицами, вы вскоре обнаружите, что они предлагают ряд преиму
ществ по сравнению со стандартными базами данных рабочего листа. Главное преимущество
использования таблиц — это упрощение форматирования. Об этом речь пойдет далее.
Если в формулах используется множество именованных диапазонов, синтаксис таб
лицы является прекрасной альтернативой для создания имен столбцов и всей таблицы
в целом. К тому же при внесении изменений в таблицу именованные диапазоны автома
тически корректируются соответствующим образом.
Еще одно преимущество относится к работе с диаграммами. Если диаграмма создает
ся на основе таблицы, ряды диаграммы автоматически расширяются при добавлении
в таблицу новых данных.
Если ваша компания использует службу SharePoint, вы получите в руки дополнитель
ное преимущество — сможете публиковать таблицу на сервере SharePoint. Для этого вы
берите в контекстной вкладке команду Работа с таблицами^Конструктор^Данные
из внешней таблицы^Экспорт^Экспорт таблицы в список SharePoint. Эта коман
да открывает диалоговое окно, в котором можно ввести адрес сервера, а также предоста
вить дополнительную информацию, необходимую для публикации таблицы.
В то же время таблицы, по сравнению с базами данных рабочего листа, имеют ряд
ограничений.
Ограничения таблиц
Таблицы Excel имеют ряд преимуществ по сравнению с обычными базами данных
рабочего листа. Однако по определенным причинам создатели инструментария таблиц
наложили на таблицы некоторые ограничения.
• Если рабочий лист содержит таблицу, невозможно создать и применять пользова
тельские представления.
• Таблица не может содержать формулы массивов, распространяющиеся на не
сколько ячеек.
• Нельзя автоматически вставлять промежуточные итоги.
• Нет возможности совместно использовать рабочую книгу, содержащую таблицу.
• Нельзя отслеживать изменения в рабочей книге, содержащей таблицу.
• Нельзя также использовать команду Главная^Выравнивание^Объединить и помес
тить в центре, так как она искажает разделение на строки и столбцы.
Если одно из этих ограничений нарушает ваши планы, преобразуйте таблицу в
обычную базу данных рабочего листа с помощью команды Конструктор^Сервис^Прео
бразовать в диапазон.
Создание таблиц
Excel позволяет создавать таблицы из пустого диапазона ячеек, однако чаще пользо
ватели преобразуют в таблицы уже существующие диапазоны данных (базы данных ра
бочего листа). Следующие инструкции предполагают, что уже существует диапазон дан
ных, подходящий для создания таблицы.
1. Убедитесь, что диапазон не содержит пустых строк и столбцов.
2. Активизируйте любую ячейку в диапазоне.
242 Часть II. Использование функций в формулах
Рис. 9.3. При выборе ячейки таблицы отображается контекстная вкладка Работа с таблицами,
Конструктор
Совет
Существует еще один метод преобразования диапазона в таблицу — выбе
рите команду Главная^Стили^Форматировать как таблицу.
В диалоговом окне создания таблицы Excel может принять некорректное решение от
носительно адреса диапазона, если таблица не отделена от остальной информации рабо
чего листа хотя бы одной пустой строкой или столбцом. В этом случае скорректируйте
поле адреса диапазона или щелкните на кнопке Отмена и реорганизуйте рабочий лист
так, чтобы отделить таблицу от остальной информации пустой строкой и столбцом.
О
Совет
Если применение стиля не срабатывает или работает некорректно, скорее
всего, к диапазону до преобразования в таблицу уже был применен какой-
либо стиль (табличное форматирование не замещает собой обычное). Для
очистки текущего форматирования цвета фона выделите всю таблицу и вы
берите команду Главная^Шрифт^Цвет заливки^Нет заливки. Для очистки
текущего цвета шрифта выберите команду Главная^Шрифт^Цвет текста. По
сле выполнения этих команд стили таблицы будут применяться корректно.
Совет
При щелчке правой кнопкой мыши на ячейке таблицы открывается контекст
ное меню, содержащее связанные с таблицей команды.