Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Уокенбах Формулы в Excel

.pdf
Скачиваний:
190
Добавлен:
26.03.2016
Размер:
35.82 Mб
Скачать

4.Удалите содержимое поля Формула и введите следующую формулу:

= !В1

5.Щелкнитена кнопкеОКдля того, чтобы закрыть диалоговое окно Присвоениеимени.

6.Изменив ссылку таким образом, вы убедитесь, что теперь формула под именем CellToRightкорректно работает в любом листе рабочей книги.

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

Использованиеотносительной ссылки надиапазон

Следующий пример основан на предыдущем. Я покажу вам, как создать именованную формулу, которая возвращает сумму 10 ячеек, расположенных справа от определенной ячейки. Для того чтобы создать такую именованную формулу, следуйте инструкциям:

1.Активизируйте ячейку А1.

2.Выберите Вставка^Имя«=> Присвоить. Появитсядиалоговое окно Присвоениеимени.

3.В поле Имя введите SumlOCells.

4.Введите следующую формулу в поле Формула:

=СУММ(!В1:!К1)

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

=SumlOCells

Например, если вы введете такую формулу в ячейку D12, она будет возвращать сумму значений диапазона Е12 :N12, состоящего из 10 ячеек.

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

Если вы активизируете ячейку D12, а затем откроете диалоговое окно Присвоение имени в поле Формула для формулы под именем SumlOCells вы увидите следующуюзапись:

=СУММ(!Е12:IN12)

Именованная формула SumlOCells не будет работать, если вы введете ее в ячейку, расположенную в столбце, следующем за столбцом I L . В таком случае формула становится ошибочной, поскольку в ней появляется ссылка на несуществующую ячейку, расположенную за пределами столбца IV.

Использование смешанных ссылок на диапазоны

Как я уже упоминал в главе 2, ссылка может быть абсолютной, относительной или смешанной. Смешанная ссылка на ячейку может состоять из:

Абсолютной ссылки на столбец и относительной ссылки на строку (например, $А1)

Относительной ссылки на столбец и абсолютной ссылки на строку (например, А$1)

100

Часть I. Основные све

Как вы, вероятно, догадываетесь, смешанные ссылки могут быть использованы в именованных формулах. Давайте попробуем использовать такую ссылку на практике. Активизируйте ячейку В1. В диалоговом окне Присвоение имени создайте формулу под именем

FirstlnRbw. Определение формулы должно выглядеть так:

| (

-:-'--'

= ! $ А 1

• - . ; . • •

- -

• ' • - - :

:

: - .

: •• ',• -,

- ; • : . ) • - . ' ' .

В этой формуле использована абсолютная ссылка на столбец и оросительная ссылка на строку. Следовательно, формула всегда возвращает значение, заданное в столбце А. А строка зависит от того, в какой строке вы введете формулу. Например, е^щи вы введете следующую формулу в ячейку F12, эта формула возвратит значение ячейки А1 ?;...

=FirstInRow

Формулу FirstlnRow нельзя использовать в столбце А, поскольку будет создана циклическая ссылка. Формула вэтом случае ссылается на сэмусебя.

Решение сложных задач

спомощью формул

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

Функция ДВССЫЛ иименованный диапазон

Функция ДВССЫЛ позволяет определять адрес ячейки косвенно. Например, если ячейка А1 содержит текст С45, формула будет возвращать содержимое ячейки С45:

=ДВССЫЛ(А1)

,

. •- ...;

.

, .. • г

Функция ДВССЬШ может применятся и в работе с именованными диапазонами. На рис. 3.20 представлена таблица с 12 именами диапазонов, соответствующими названиям Месяцев года.Например, имя January относится к диапазону В2 : Е2.Ячейка В1б содержиттакую формулу:

=СУММ(ДВССЫЛ (А1 б) )

Воок4

 

 

 

 

 

 

 

 

North

South

West

East

T

JjMJanuary

48

313

 

353

251

 

Д ^

February

354

151

 

47

190

 

т4

March

138

257

 

254

97

 

"&Ц April

244

110

 

308*

378*

 

TJjune

103

407

 

475

253

 

24

222

 

45

256'

 

-N&viJuly

85

196

 

24

497

 

j C A u 9 u s t

286

121

 

431

125

 

Iff* September

333

455'

 

*20Г .,. з э 5 «

 

'11 -October

81

89

 

450

322

!

12 > November

260

329'

 

475 *

358'

 

Ml

December

 

„> JO5 .,. "i

^

, ^ b 3 5 6 ^

, ,

IBJMarcr.

Ж '

Рис. 3.20. Использование функции ДВССЫЛ при работе с именованным диапазоном

{лава 3. Работаемс именами

$01

На практике эта формула возвращает сумму именованного диапазона, который в текстовой форме задан в ячейке А16.

В Excel 97 и последующих версиях программы вы можете использовать команду Данные^Проверка. С помощью этой команды ячейку А16 можно преобразовать в раскрывающийся список. Используйте опцию Тип данных диалогового окна Проверка вводимых значений для того, чтобы задать диапазон А2: А13 в качестве источника данных. Это позволит пользователю выбирать название месяца из списка. Сумма для выбранного месяца появляется в ячейке В1б.

Используя функцию ДВССЫЛ, вы можете ссылаться и на имена уровня рабочего листа. Предположим, что вы работаете с рабочими листами Region I, Region 2 и т.д. Каждый лист содержит имя TotalSales, заданное на уровне рабочего листа. Следующая формула находит значение в соответствующем рабочем листе при использовании имени, заданного в ячейке А1:

=ДВССЫЛ(А1&"!TotalSales")

Использование функции ДВССЫЛ для создания именованного диапазона

сфиксированным адресом

ВExcel можно создать имя, которое бы всегда относилось к одной и той же ячейке или диапазону даже в том случае, если вы вставите новые строки или столбцы. Предпо-

ложим, вы хотите создать диапазон под именем UpperLeft, который бы всегда относился к ячейке А1. Если вы создадите имя обычным способом, вставка новой строки 1 приведет к тому, что диапазон UpperLeft будет относиться к ячейке А2. Вставка нового столбца приведет к тому, что диапазон UpperLeft будет относиться к ячейке В2. Для создания именованного диапазона, который имеет фиксированный адрес, необходимо задать именованную формулу, в поле Формула которой будет следующее выражение:

=ДВССЫЛ("$А$1")

Если вы создадите такую формулу, диапазон UpperLeftбудет относиться к ячейке А1 даже в том случае, если вы вставите новые строки или столбцы. В предыдущей формуле функция ДВССЫЛ позволяет задавать адрес ячейки косвенно с помощью текстового аргумента. Поскольку аргумент заключен в кавычки, он никогда не меняется.

В этой именованной формуле используется функция, и потому формула не появляется ни в диалоговом окне Переход, ни в поле Имя.

Использование массивов в именованных формулах

Массив — это набор элементов. Массив может быть вертикальным и состоять из одного столбца, или горизонтальным и состоять из одной строки. Массивом может быть и совокупность нескольких столбцов и строк.

102

Часть I.Основные све

В части IV данной книги подробно описаны массивы и формулымассивов. Однако эта тема имеет отношение и к именам.

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

В диалоговом окне Присвоение имени можно создать формулу под именем MonthNames, которая имеет такое определение: ={"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"Sep";"Oct";"Nov";"Dec"}

Эта формула определяет массив, состоящий из 12 текстовых строк, расположенных горизонтально.

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

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

=ИНДЕКС(MonthNames;8)

Вы можете отобразить и весь массив, состоящий из 12 элементов, но для этого необходимы 12 смежных ячеек. Для того чтобы ввести 12 элементов массива в диапазон Al: L1, следуйте приведенным ниже инструкциям:

1.В диалоговом окне Присвоение имени создайте формулу под именем MonthNames.

2.Выделите диапазон Al :L1.

3.В строку формул введите =MonthNames.

4.Нажмите комбинацию клавиш <Ctrl+Shift+Enter>.

Получив команду <Ctrl+Shift+Enter>, Excel вставляет формулу массива в выделенный диапазон. В данном случае формула введена в 12 смежных ячеек (рис. 3.21). Программа заключает формулу массива в скобки, напоминая вам, что это — специфическая формула. Рассмотрев любую из 12 ячеек диапазона Al: L1, вы увидите, что формула выглядит так:

{=MonthNames}

h^jULj^mxh

$ Uan

Feb Mar Apr

May Jun Jul

Aug Sep Oct Nov Dec

41.

Рис. 3.21. Именованнуюформулу,которая содержит массив из 12 элементов, молено разместить в 12 смежных ячейках

Глава3. Работаемс именами

103

May
June
July
September
October
November
December
1.233,
March
April
1,123
1 3 2 1,
2,244 .
January -ebruary
1,043
шшшт

Создание формулы сдинамическим именем

Динамически именованная формула — это формула, относящаяся к диапазону, размер которого не фиксирован. Вероятно, осмыслить норое понятие непросто. Поэтому мы рассмотрим пример.

Обратите внимание на таблицу, представленную на рис. 3.22. Эта таблица содержит сведения об объеме про* даж за период с января по май.

Предположим, вы хотите присвоить имя SalesData данным, расположенным в столбце В. При этом вы не хотите, чтобы имя относилось к пустым ячейкам. Иными словами, ссылка на диапазон SalesData будет меняться

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

Рис.3.22. Динамически именованная мощью диалогового окна Присвоение имени. Но гораз- формула может бытьиспользована ДО эффективнее применить динамически именованную

для ввода данных в столбец В

формулу, которая будет автоматически меняться с каж-

 

дым последующим вводом данных.

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

1.Вызовите диалоговое окно Присвоение имени.

2.В поле Имя введите SalesData.

3.В поле Формула введите следующую формулу:

=СМЕЩ(Лист!!$В$1;0;0;СЧЕТЗ(Лист!!$В:$В);1)

4.Щелкните на кнопкеОКдля того, чтобы закрыть диалоговое окно Присвоение имени.

В результате выполнения инструкции была создана формула, в которой используются функции СМЕЩ и СЧЕТЗ.Для того чтобы проверить, как функционирует эта формула, введите следующую формулу в любую ячейку, которая не расположена в столбце В:

=СУММ(SalesData)

Эта формула возвратит сумму значений столбца В. Обратите внимание на то, чтоSalesData не отображается ни в поле Имя, ни в диалоговом окне Переход. Для того чтобы выбрать диапазон, вы можете открыть диалоговое окно Переход и ввести SalesData вручную.

Сейчас вы, наверное, думаете, зачем морочить себе голову. Ведь и простая формула, приведенная ниже, сделает все, что нужно:

=SUM(B:B)

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

В главе 17вы найдете пример создания динамической диаграммы.

Часть I. Основные сведения

Резюме

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

Глава 4 служит введением к теме функций рабочего листа Excel и содержит обзор основных функций.

Глава3. Работаем сименами

W

О-;::?..-*;» V". ¥:,i V*

%

"£;''.%$

Использование функций в формулах

ГЛАВА4

"Введение в функции Excel"

ГЛАВА 5

"Работа с текстом"

ГЛАВА6

'Работа с данными даты и времени"

ГЛАВА7

"Способы суммирования и подсчета данных"

ГЛАВА8

"Поиск данных"

ГЛАВА9

"Базы данных и списки"

ГЛАВА 10

"Дополнительные вычисления"

Глава4

Введение в функции Excel

Вэтой главе...

Что такое функция?

Типы аргументов функций

Способы введения функции в формулу

Категории функций

Резюме

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

Что такое функция?

Функция— встроенный инструмент, используемый в формуле. В обычной функции (например, СУММ) присутствует один и более аргументов. Функция возвращает результат. Функция СУММ, например, принимает аргумент диапазона, а затем возвращает сумму значений этого диапазона.

Функции вам пригодятся, поскольку они:

Упрощают формулы

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

Ускоряют выполнение некоторых задач редактирования

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

Примеры, приведенные в следующих разделах, иллюстрируют эти положения.

Упрощение формулы

Использование встроенных функций позволяет существенно упростить формулу. Например, вам нужно вычислить среднее арифметическое значений десяти ячеек (А1:А10). Без применения функций вам придется создать примерно следующую формулу.

= (А1 +А2 +A3+А4 +А5 +А6 +А7 +А8 +А9 +А10) /10

Громоздко, не так ли? Более того, если в последствии диапазон суммируемых значений будет увеличен, вам придется редактировать эту формулу. Такую формулу можно заменить более простой, в которой будет использована одна из встроенных функций рабочего листа Excel. В приведенной ниже формуле используется функция СРЗНАЧ:

=СРЗНАЧ(А1:А10)

Глава4. Введение вфункции Excel

109