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

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

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

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

После того как надстройка установлена, инициируйте любую ячейку списка, а затем выберите команду меню flaHHbie^JWalk Enhanced Data Form. Данные, содержащиеся в текущих записях, будут отображены в диалоговом окне. Для просмотра базы данных используйтегоризонтальную полосу прокрутки (или кнопки Previous (Ha3afl)/Next (Далее)). Все выполненные в этой форме измененияданных будут внесены в базу данных, также, как и ихотмена. Данная форма позволяет обработать неограниченноеколичество полей, а поддерживающее групповые символы окно поиска дает возможность осуществить быстрый поиск необходимых записей, на основе данных любого поля.

Определение условий расширенного фильтра

Все старания компании Microsoft, связанные с возможностями управления списками в Excel, сфокусированы исключительно на автофильтрации. Принцип использования отдельного диапазона условий для расширенного фильтра возник вместе с появлением первой версии Lotus 1-2-3. Позднее этот метод был адаптирован к приложению Excel. Но он никогда не изменялся, даже несмотря на тот факт, что определение условий расширенного фильтра — один из самых щекотливых при работе с приложением Excel моментов. В этом разделе приведено множество примеров, которые помогут вам понять принципы создания диапазона условий, предназначенного для получения интересующей пользователя информации.

Все примеры в этом разделе используют список, показанный на рис. 9.7. Данный список содержит 125 записей и восемь полей и имеет достаточно разнообразный набор типов данных: значения, текстовые строки, логические значения и даты. Сам список размещен в диапазоне ячеек А8 :Н133 (строки, расположенные выше списка, используются для размещения диапазона условий).

230

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

 

 

 

шшшт

 

 

 

 

 

 

 

 

A

. *,8

|

 

 

 

 

 

 

 

 

 

"

 

 

 

 

 

 

 

 

 

 

 

ListPrlce

Date Listed

Area

Bedrooms!

Baths

SqFt

Type

Pool J

,

9 i

$350 000

0311

2000

N County

3

2.5

1991

Condo

ЛОЖЬ

, - ,

10

$215 000

05112000

Central

3

1.75

2157

Single Family

ИСТИНА

{*,

tt

$315 000

07112000

S County

2

2

1552

Condo

ЛОЖЬ

l

'

12

$379 000

11 112000

N County

4

3

3000

Single Family

ложь >г:

13

$248 500

21 112000

?

4

2.5

2101

Single Family

ИСТИНА

\

14

$297 500

23112000

S County

4

3.5

2170

Single Family

ЛОЖЬ

{

 

15

$259 900

27 112000

N County

4

3

1734

Condo

ложь

 

 

Ж

$325 000

01 12 2000

S County

4

3

2800

Condo

ИСТИНА

 

\

17

$208 750

0312

2000

S County

4

3

2 207

Single Family

ИСТИНА

 

-

18

$227 500

0312

2000

 

4

3

1905

Condo

ЛОЖЬ

!

 

19 *

$259 900

0312

2000

N County

3(

2,5

2122

Condo

ЛОЖЬ

<

~

20

$405 000

0612

2000

N County

2

3

2 444

Single Family

ИСТИНА

 

 

2t

$236 900

07 12 2000

S County

2

2

1483

Condo

ложь

 

 

22

$240 000

07 12 2000

S County

3

2.5

1595

Condo

ложь

*

23

$304 900

09 122000

S County

4

3

2 350

Single Family

ложь

 

 

24

$349 900

13 122000

N County

4

3

2 290

Single Family

ИСТИНА

< *

25

$249 000

21 12 2000

Central

4

3

1940

Single Family

ИСТИНА '

 

И «

г д г л .«дою.

 

 

 

ТГМ1

j£2£3r

П П Ж ± 1 О

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

Определение одного условия

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

Чтобы выбрать только те записи, которые в определенных полях содержатся определенные значения, введите имяполя в первую строку диапазона условий, а соответствующее значение во вторую строку. К примеру, диапазон условий (А1: А2), показанный на рис. 9.8,позволяет выбрать только те записи, которые в поле Bedrooms содержат значение 4.

... L

 

 

 

Area

I Bedrooms I

Baths I

SqFt

Type

Pool

 

$350 000

03112000

N County

 

3

2.5

1991

Condo

ЛОЖЬ .

$215 000

05 112000

Central

 

3

1.75*

2157

Single Family

ИСТИНА,

$315 000

07112000

S County

'

2

2J

1552

Condo

ЛОЖЬ

!

$379 000

11112000

N County

 

4

3;

3 000

Single Family

ЛОЖЬ

i

$248 500

21112000

?

 

4

2,5;

2101

Single Family

ИСТИНА*

 

$297 500

23112000

S County

'

4*

3.5

2170

Single Family '

ЛОЖЬ

 

$259 900

27112000

N County

 

4

3*

1 734

Condo

ЛОЖЬ

 

$325 000

0112

2000

S County

'

4

3J

2 800

*Condo

ИСТИНА]

$208 750

0312

2000

S County

 

4

3;

2 207

Single Family

ИСТИНА

 

$227 500

03 12 2000

 

 

4

3;

1905

Condo

ЛОЖЬ

 

$259 900

0312

2000

N County

 

3

2.5'

2122

Condo

ЛОЖЬ

 

$405 000

0612

2000

N County

 

2

3'

2 444

Single Family

ИСТИНА.

Рис. 9.8.Диапазонусловий А1 :А2 позволяет выбрать записи, которые содержат характеристики домов, имеющих четыре спальни

Чтобы выполнить подобнуюфильтрацию, можно использовать автофильтр.

Глава 9. Базыданных исписки

231

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

Использованиеоператоровсравнения

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

Дома, которые имеют не менее четырех спален

Дома, имеющие площадь менее 2 000 квадратных футов

Дома по цене не более $200 000 долларов

Чтобы выбрать записи, относящиеся к домам, имеющим четыре спальни, в диапазон условий введите следующие записи:

Al: Bedrooms А2: >=4

Обратите внимание, в табл. 9.1 перечислены операторы сравнения, которые используются для сравнения текстовых или числовых значений. В том случае, если ни один из этих операторов сравнения не используется, по умолчанию в качестве оператора сравнения Excel использует знак равенства(=).

{Таблица 9*1 /Операторы сравнения

Оператор

 

Типсравнения

 

 

Равно

>

 

Больше,чем

>=

 

Больше, чемилиравно

<

 

Меньше,чем

<=

.

Меньше, чемилиравно

<>

 

Не равно

В табл. 9.2 приведены примеры использования некоторых операторов сравнения.

Таблица9.2.Примеры использованияоператоровсравнения

Условие

Выбор значений

> ю о

Записи, содержащие значениябольше,чем юо

<>о

Записи, содержащие значения, не равные о

=500

Записи, содержащие значения 500 (отсутствие знака

 

венства приводит каналогичному результату)

< 5ооо

Записи, содержащие значения меньшие, чем 5000

>=5 ооо

Записи, содержащие значения меньшие илиравные 5о

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

Условия, представленные в виде текста, могут также использовать два групповых символа: звездочка (*) соответствует любому количеству символов; вопросительный знак (?) соот-

232

Часть //.Использование функций в формул

ветствует любому, но только одному, символу. В табл. 9.3 приведены примеры условий, содержащих текстовые значения. Конечно, некоторые из них редко встречаются в реальных условиях. Например, чтобы выбрать записи, содержащие один единственный символ, в качестве условия необходимо ввести формулу (см. последнюю запись в табл. 9.3).

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

Условие

Выбор значения

=" =январь"

Записи, содержащие только текст Январь. Условие должно быть введено точно так же,как

 

показано в этом примере:формула с предшествующим ей знакомравенства.

Январь

Записи, содержащие текст, начинающийся со словаЯнварь.

с

Записи, содержащие текст, начинающийся с символа С.

<>с

Записи, содержащие текст, начинающийся с любого символа, за исключением символа С.

жЗаписи, содержащие текст, начинающийся с символов от Л до Я.

Округ

Записи, содержащие текст, который включает слово Округ.

См*

Записи, содержащие текст, начинающийся с символов См.

с * с

Записи, содержащие текст, начинающийся с символа С и далее содержащий символ С.

с?с

Записи, содержащие текст, начинающийся с символа С, третий символ которого

 

также является символом С. Обратите внимание, что это не означает выбор слов,

 

содержащих только три символа.

=" =с * с"

Записи, содержащие текст, начинающийся и заканчивающийся символом С. Условие

 

должно быть введено точно так же, как показано в этом примере: формула с пред-

 

шествующим ей знаком равенства.

< > * с

Записи, содержащие текст, который не заканчивается символом с.

<>?? ???

Все записи, содержащие более или менее пяти символов, но не в точности пять.

< > * с *

Записи, не содержащие символ с.

~?

Записи, содержащие единственный символ вопроса.

 

Пустые записи.

<>

Непустые записи.

=" =с"

Записи, содержащие единственный символ С. Условие должно быть введено точно так

 

же, как показано в этом примере:формула с предшествующим ей знакомравенства.

 

Имейте в виду, что при сравнении текстовых значений регистр символов не

 

учитывается. Например, символы с е * могут соответствовать как слову Селиг-

 

ман, так и слову СЕКР.

Определение множества условий

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

Цена дома ниже, чем $ 250 000, минимальная площадь 2 000 квадратных футов.

Глава 9. Базы данных исписки

233

Дом с бассейном только для одной семьи.

Дом имеет не менее четырех спален, не менее трех ванн, площадь дома менее 3 000 квадратных футов.

Дом, находящийся в списке не более одного месяца, с ценой выше $300 000.

Совладение, имеющее площадь между 1 000 и 1 500 квадратных футов.

Дом для одной семьи, находящийся в списке в марте.

Чтобы объединить условия с помощью оператора И, в диапазоне условий должно использоваться множество столбцов. На рис. 9.9 показан диапазон условий, с помощью которого отбираются записи, содержащие характеристики домов по цене менее, чем $250 000, и площадью не менее 2 000 квадратных футов.

,

А

!

В

 

С

b I'

 

F

{ ^

G

1 LtetPrice

ISqFt

 

 

 

 

 

 

 

 

2

<25000

> =2000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

"4

 

 

 

 

 

 

 

 

 

 

 

 

5"

 

 

 

 

 

 

 

 

 

 

 

 

6'

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

8

ListPrice I

Date Listed

 

Area

I Bedrooms

Baths

SqFt

I

Type

Pool I

$

$350000

 

03112000

N

County

3

2.5

1991

 

Condo

 

ЛОЖЬ

10

$215 000

 

05112000

 

Central

3

1.75

2 157

 

Single Family

ИСТИНА

11

$315 000

 

07 11 2000

S

County

2

2

1552

 

Condo

 

ЛОЖЬ

12

$379000

 

11 112000

N

County

1

3

3 000

 

Single Family

ЛОЖЬ

13

$248500

 

21 11 2000

 

?

\

2.5

2101

 

Single Family

ИСТИНА

14

$297 500

 

2311 2000

S

County

I

3.5

2170

 

Single Family

ЛОЖЬ

Ц$

$259900

 

27 11 2000

N

County

 

3

1734

 

Condo

 

ложь

16

$325000

 

01 122000

S

County

 

3

2 800

 

Condo

 

ИСТИНА

17

$208750

 

03 122000

S

County

 

3

2 207

 

Single Family

ИСТИНА

Ж

$227 500

 

03 122000

 

 

 

3

1905

 

Condo

 

ЛОЖЬ

$259900

 

03 122000

N

County

3

2.5

2 122

 

Condo

 

ложь

19

$405000

 

06 122000

N

County

2

3

2444

 

Single Family

ИСТИНА

20

 

 

М 4 » «\sheetl/

 

 

 

" 'J«C

 

 

2Г"™

t

 

 

 

 

n

 

 

 

 

 

Рис. 9.9. Данный диапазон условий для отбора записей использует множество столбцови логический оператор И

На рис.9.10 отображен другой пример диапазона условий, в соответствии с которым изсписка выбираются все записи, внесенные в список в марте месяце. Обратите внимание,что одно изимен полей Date Listed (Дата занесенияв список) появляется в диапазоне дважды, поскольку, в данном случае, используется следующее условие: Дата занесения в список должна быть больше, либо равна 1 марта, И дата занесенияв списокдолжна быть меньше,либо равна 31 марта.

Примите к сведению, что условия, показанные на рис.9.9, с американскимиформатами даты могут работать неправильно. Чтобы гарантировать совместимость заданных условий с различными системами дат, используйте функцию ДАТА, как, например, в следующих формулах:

=">="&ДАТА(2001;3;1)

="<="&ДАТА(2001;3;31)

234

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

El

А

*

i

ячмчиииии

 

 

; ... f

тткт

 

 

 

1

Date Listed |Da

 

 

I

G

i

и.. m

 

 

 

 

 

ш>=3 1 2001

 

<=3 31 2001

 

 

 

 

 

 

 

 

 

 

"V

 

 

 

 

 

 

 

 

 

 

 

 

 

 

У

 

 

 

 

 

 

 

 

 

 

 

 

 

 

а

ListPrice

|

Date Listed I

 

Area

I Bedrooms

Baths

SqFt

I

Type

I

Pool

 

9

$350 000

03 112000

N County

3

2.5

1991

 

Condo

 

ЛОЖЬ

 

10

$215

000

0511 2000

 

Central

3

1.75

2 157

 

Single Family

 

ИСТИНА

'

и

$315

000

07 11 2000

S

County

2

2

1552

 

Condo

 

ЛОЖЬ

 

12

$379 000

11 11 2000

N

County

I

3

3 000

 

Single Family

 

ложь

 

13

$248 500

21 11 2000

 

?

»

2.5

2101

 

Single Family

 

ИСТИНА

 

 

$297 500

23 112000

S

County

I

3.5

2170

 

Single Family

 

ложь <

 

*

$259 900

27 11 2000

N

County

 

3

1734

Condo

 

ложь

 

16

$325 000

01 12 2000

S

County

 

3

2 800

Condo

 

ИСТИНА

 

1?

$208 750

03 12 2000

S

County

 

3

2 207

 

Single Family

 

ИСТИНА

 

18

$227 500

03 12 2000

 

 

 

3

1905

Condo

 

ЛОЖЬ

 

19

$259 900

03 12 2000

N County

3

2.5

2122

Condo

'

ЛОЖЬ

 

20

$405 000

06 12 2000

N

County

2

3

2444

Single Family

 

ИСТИНА

i

н <

 

 

 

 

 

 

 

 

1 A9O

 

 

 

•""•"аи

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 9.10. Данный диапазон условий позволяет выбрать из списка записи, содержащие характеристики домов, внесенных в список вмарте месяце

Чтобы объединить условия с помощью оператора ИЛИ, диапазон условий должен содержать более, чемодну строку с условием, что каждая из нихобъединяется с другой посредством оператора ИЛИ. Количество строк в диапазоне условий не ограничено. Обратите внимание, нарис. 9.11 показан диапазон условий (А1: СЗ), содержащий две строки.

J

A

J

в

 

С

D

 

 

 

 

1

Type

|SqFt

bstPnce

 

 

 

 

 

2

Condo

>

=1800

<210000

 

 

 

 

 

Л jSmgle Family

 

 

 

 

 

 

8

ListPrice

Date Listed

 

Area

Bedrooms

Baths 1

SqFt

Type

Pool

9

$350 000

03 11 2000

N County

3

2.5

1991

Condo

ЛОЖЬ

10

$215

000

05112000

 

Central

3

1.75

2 157

Single Family

ИСТИНА

IL

$315

000

07 11 2000

S

County

2

2

1552

Condo

ЛОЖЬ

42,

$379 000

11 11.2000

N

County

4

3

3000

Single Family

ложь

ш

$248 500

21 11 2000

 

7

4

2.5

2 101

Single Family

ИСТИНА

$297 500

23 112000

S

County

4

3.5

2170

Single Family

ложь

 

$259 900

27 11 2000

N

County

4

3

1 734

Condo

ложь

 

$325 000

01 12 2000

S

County

4

3

2 800

Condo

ИСТИНА (

W

$208 750

03 12 2000

S

County

4

3

2 207

Single Family

ИСТИНА *

$227 500

03 12 2000

 

 

4

3

1905

Condo

ЛОЖЬ

19

$259 900

03 12 2000

N

County

3

2.5

2 122

Condo

ложь

20

$405 000

06 122000

N

County

2

3

2444

Single Family

ИСТИНА ,

» 4 V «\Sheetl/

 

 

 

 

hi..L

 

 

 

Рис. 9.11. Данный диапазон содержит два набора условий, каждый

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

 

В этом примере после фильтрации

списка на экран выводятся строки, отвечающие любо-

му изследующих условий:

Совладение площадью неменее 1 800 квадратных футовИЛИ

Дом дляодной семьи поцене ниже $ 210 000

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

Глава9.Базыданных ИСПИСКИ

235

Определение вычисляемых условий

Использование вычисляемых условий представляет собой довольно мощный инструмент при фильтрации списка. Благодаря вычисляемым условиям вы можете фильтровать список на основании одного или большего количества вычислений. На рис. 9.12 показан диапазон условий, на основании которого Excel отбирает записи, содержащие характеристики домов, цена которых ниже средней по всему прайс-листу. Ячейка В 2 содержит следующую формулу:

=ListPrice>CP3HA4(A:A)

Имейте в виду, что вы должны подключить опцию Допускать названия диапазонов. В противном случае,данная формула будет возвращать ошибку #имя?. Чтобы установить эту опцию, выберите команду меню Сервис^Параметры и перейдите на вкладку Вычисления. После подключения опции ошибка #имя? перестанет создавать проблемы.

t

~ A

С _ ;._. 0

-J

 

 

 

1 .

 

Above Avq

 

2ИСТИНА

3,

7

8

'

ListPrice

Date Listed

 

Area

I Bedrooms

Baths

SqFt

Type

Pool

9

,

$350 000

03

112000

N

County

 

3

2,5

1991

Condo

ЛОЖЬ

10

 

$215 000

0511 2000

 

Central

 

3

1.75

2 157

Single Family

ИСТИНА

11

 

$315 000

07

11 2000

S

County

 

2

2

1552

Condo

ЛОЖЬ

12;

 

$379 000

11 11 2000

N

County

 

4

3

3 000

Single Family

ЛОЖЬ

13

 

$248 500

21

11 2000

 

?

 

4

2,5

2 101

Single Family

ИСТИНА

14

 

$297 500

23

11 2000

S

County

 

4

3,5

2 170

Single Family

ЛОЖЬ

15

 

$259 900

27

11 2000

N

County

 

4

3

1734

Condo

ложь

i l l

 

$325 000

01

12 2000

S

County

 

4

3

2 800

Condo

ИСТИНА

17

 

$208 750

03

12 2000

S

County

 

4

3

2 207

Single Family

ИСТИНА

18,

 

$227 500

03

12 2000

 

 

 

4

3

1905

Condo

ЛОЖЬ

П

 

$259 900

03

12 2000

N

County

 

3

2,5

2 122

Condo

ложь

20

 

$405 000

06

122000

N

County

 

2

3

2 444

Single Family

ИСТИНА

*3t

 

стаеarm/

- 07 0ТППП

, Я

Гл1 ц ) »«

, ,

1

 

1 ЛЯ1

?":"" . J

"""-МП

 

 

 

 

 

 

 

 

 

 

 

Рис. 9.12. Данный диапазонусловий используетвычисляемое условие отбора

Запомните следующие правила использования вычисляемых условий:

Формула, вычисляющая условия, — это всегда логическая формула, возвращающая значения ИСТИНАилиЛОЖЬ.

Используйте в формулах подписи полей. Например, в предыдущем примере имя List Prise — это не имя диапазона, а подпись одного из полей базы данных. В качестве

альтернативы можно использовать ссылку на ячейку первой строки с данными, расположенную в представляющем интерес поле (это не ссылка на ячейку, содержащую имяполя). В данном примере ячейка в первой строке данных поля List P r i s e — это А9. Следующая формула возвращает тот же самый результат, что и в предыдущем примере:

=А9>СРЗНАЧ(А:А)

• Игнорируйте значения, возвращаемые формулами в диапазоне условий, которые ссылаются на первую строку списка. Иногда использование в формуле подписей полей приводит к ошибке, такой как, например, #ИМЯ? или #ЗНАЧ !. Эту ошибку можно игнорировать, поскольку она не влияет на фильтрацию списка.

236

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

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

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

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

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

Примеры вычисляемыхусловий

Обратите внимание, на рис. 9.13 показан пример вычисляемого условия, в соответствии с которым из списка отбираются записи, содержащие характеристики домов, для которых сумма спален и ванных комнат превышает значение 8. Имя столбца в ячейке А1 носит только описательный характер и никоим образом не отражается на фильтрации.

Формула, вычисляющая условия, возвращает значение ошибки, поскольку формула обращается к именам полей. Однако, несмотря на ошибку, при фильтрации списка формула работает правильно.

=Bedrooms+Baths>8

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

кпервой строке списка, содержащей данные:

=D9+E9>8

Данная формула не возвращает значение ошибки, и понять ее не так просто.

 

1

А,,,,

1

8

j

 

С„„.

 

L._J?_ t

J i

f

 

Ш

1

8* Rooms

I

 

 

 

 

 

 

 

 

 

2':

#3HA4i

 

 

 

 

 

 

 

 

 

 

 

3j

 

 

 

 

 

 

 

 

 

 

 

 

5"!

 

 

 

 

 

 

 

 

 

 

 

 

"Si

 

 

 

 

 

 

 

 

 

 

 

 

8

!

ListPrice

 

Date Listed

 

Area

 

Bedrooms

Baths

SqFt

Type

I Pool

9 j

$350 000

03.112000

N

County

 

3:

2,5

1991

Condo

ЛОЖЬ

10 ••

$215 000

 

05 112000

 

Central

 

3:

1.75

2 157

Single Family

ИСТИНА

111

$315 000

 

07 112000

 

S

County

 

I;

2

1552

Condo

ЛОЖЬ

12'

$379 000

11112000

N. County

 

1\

3

3 000

Stngle Family

ЛОЖЬ

Тз1

$248 500

 

21112000

 

?

 

\t

2.5

2101

Single Family

ИСТИНА

Ш

 

$297 500

23 11 2000

S

County

 

i

3.5

2170

Single Family

ЛОЖЬ

"IS1

$259 900

2711 2000

N County

 

*•

3

1 734

Condo

ЛОЖЬ

"ml

$325 000

0112 2000

S

County

 

i

3

2 800

Condo

ИСТИНА

17!

$208 750

 

03 12 2000

 

S

County

 

1

3

2 207

Single Family

ИСТИНА

18'

$227 500

03 12 2000

 

 

 

i

3'

1 905

Condo

ЛОЖЬ

Ш1

$259 900

 

03 12 2000

N County

'

С

2.5

2122

Condo

ЛОЖЬ

20;

$405 000

06 12 2000

N County

 

:

3

2 444

Single Family

ИСТИНА

bi

'

f->^>C Qfin

 

П 7 П ТППП

, <? ,Гок»»м

 

"

 

 

 

 

H

1 > H|\Sheetl/

 

 

 

 

 

 

 

 

 

 

Рис. 9.13. Данный диапазон условий использует вычисляемые выражения

Глава 9.Базыданных иСПИСКИ

237

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

=В9>СЕГОДНЯ()-60

=Date Listed>CErOflHH()-60

Использование массивов свычисляемыми условиями

Приложение Excel не просто позволяет использовать вычисляемые условия, наравне с этим Excel поддерживает использование массивов с вычисляемыми условиями. Чтобы показать на примере, насколько это полезно, давайте представим, что нам необходимо идентифицировать в списке дом, который имеет "половину ванной комнаты". Для этого необходимо отфильтровать все записи, содержащие нецелые числа: 3,5, 4,5 или любое другое значение нецелого числа в поле Baths. Обратите внимание, на рис. 9.14 отображен один из таких примеров, где диапазон условий А1: А5, чтобы сделать отбор необходимых данных, использует четыре оператора ИЛИ.

р

 

A

 

 

 

 

 

 

 

 

 

 

т

 

2

 

 

 

 

I

 

 

 

 

 

 

Baths

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

I

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

*

i

 

 

 

 

 

18 ListPrice

 

 

 

 

 

 

 

 

Date Listed

 

Area

Bedroom I

Baths |

SqFt

Type

Pool

 

fi~

$350 000

0311 2000

N

County

3

2,5

1991

Condo

 

ЛОЖЬ

 

10

 

$215 000

05112000

 

Central

з'

1,75,

2157

Single

Family

ИСТИНА

 

11

 

$315 000

07 112000

S

County

2

2

1 552

Condo

 

ЛОЖЬ

12

 

$379 000

11 11 2000

N

County

4

3

3 000

Single

Family

ЛОЖЬ

,

«[

 

$248 500

21 11 2000

 

?

4

2,5,

2101

Single Family

ИСТИНА

 

14

 

$297 500

23 11 2000

S

County

4

3.5!

2170

Single Family

ЛОЖЬ

 

si

 

$259 900

27 112000

N

County

4

3^

1 734

Condo

 

ЛОЖЬ

*

16

 

$325 000

01 122000

S

County

4

3*

2 800

Condo

 

ИСТИНА

 

17

 

$208 750

03 122000

S

County

4

3

2 207

Single Family

ИСТИНА

 

18

 

$227500

0312 2000

 

 

4

3

1905

Condo

 

ЛОЖЬ

'>

19

 

$259 900

03 122000

N

County

3

2,5

2122

Condo

 

ЛОЖЬ

 

Жu,

$405 000

06 122000

N

County

2

3

2 444

Single

Family

ИСТИНА

 

f">'ac o n n

 

 

 

1

1 • *>

1 л «re

Гпг"*п

, .

n n w j j n

 

 

 

 

 

 

 

 

 

 

 

Рис. 9.14. Чтобы выбрать записи, содержащие характеристики домов с нецелым количеством ванных комнат, здесь использовано четыре условия ИЛИ

Другая возможная операция вычисления условий задействует только одну формулу: =ИЛИ(Baths{2;3;4;5;б;7})

Данная формула возвращает значение ИСТИНА,если значение в поле Baths равно любому из значений массива.

Использование функций базы данных

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

238

Часть //. Использование функций в формула

Функция

Описание функции

 

 

Д С Р З Н А Ч

Возвращает среднее значение выбранных фрагментов базыданных.

Б С Ч Е Т

 

Подсчитывает количество числовых ячеек ввыборке из заданной базыданных

 

 

по заданному критерию.

 

 

БСЧЕТА

Подсчитывает количество непустых ячеек в выборке

из заданной

 

 

базы данных позаданному критерию.

 

 

БИЗВЛЕЧЬ

Извлекает из базы данных одну запись, удовлетворяющую заданно-

 

 

му критерию.

 

 

ДМАКС

 

Возвращает максимальное значение среди выделенных

фрагментов

 

 

базы данных или записей базы данных.

 

 

ДМИН

 

Возвращает минимальное значение среди выделенных

фрагментов

 

 

базы данных или записей базы данных.

 

 

БДПРОИЗВЕД

Перемножает значения определенных полей записей базы данных,

 

 

удовлетворяющих критерию.

 

 

ДСТАНДОТКЛ

Оценивает стандартное отклонение по выборке (характеризующей

 

 

генеральную совокупность) из выделенной части базы данных.

ДСТАНДОТКЛП

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

 

 

выделенной части базы данных.

 

 

БДСУММ

Суммирует числа в поле столбца записей базы данных,

удовлетво-

 

 

ряющих условию.

 

 

БДДИСП

Оценивает дисперсию по выборке из выделенной части базы данных

 

 

(характеризующей генеральную совокупность).

 

 

БДДИСПП

Вычисляет дисперсию по генеральной совокупности из выделенной

 

 

части базы данных.

 

 

Все функции базы данных требуют отдельного диапазона условий, который указывается в

качестве

последнего

аргумента функции. Диапазон условий, используемый функциями базы

данных,

полностью

аналогичен диапазону, который рассмотрен ранее в разделе

"Определение условий расширенного фильтра".

 

 

Давайте рассмотрим рис. 9.15. Приведенная ниже формула, которая содержится в ячейке

С2, предназначена длявычисления суммы значений списка, удовлетворяющих

определенным

условиям, использует

функцию БДСУММ. В частности, формула возвращает

сумму записей

столбца

S a l e s , которые в столбце M o n t h содержат значение F e b ,а в столбце

R e g i o n —

значения North или South. =БДСУММ(БазаДанных;3;Условия)

В данном случае, БазаДанных — это название списка, 3 — номер поля или столбца, который будет суммироваться, и Условия — имя диапазона условий (А1: ВЗ).

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

=БДСУММ(База данных;"Продажи";Условия)

Глава ft Базыданных исписки

239