/
Автор: Гриффитс Д.
Теги: система управления базами данных (субд) компьютерные технологии программное обеспечение анализ данных обработка информации excel
ISBN: 978-601-12-4128-1
Год: 2025
Текст
Excel Cookbook
Recipes for Mastering Microsoft Excel
Dawn Griffiths
Beijing • Boston • Farnham • Sebastopol • Tokyo
o·REILLY'
Дон Гриффитс
Excel
Сборник рецептов
Астана
«АЛИСТ»
2025
УДК
ББК
004.65
32.973.26-018.1
Г85
ГриффитсД.
Г85
Excel. Сборник рецептов: пер. с англ. -
Астана: АЛИСТ,
2025. -
592 с.:
ил.
ISBN 978-601-12-4128-1
Книга посвящена практическому использованию
Microsoft Excel
дпя решения
широкого спектра задач. Показано создание информативных диаграмм и rрафиков
спарклайнов, работа с 3D-картами, использование сводных таблиц дпя сегмента
ции, фрагментации и обобщения данных, проведение статистического и финансо
вого анализа с помощью формул, листов прогноза и пакета анализа. Рассмотрены
функции динамических массивов, демонстрируются методы импорта и обработки
данных с помощью
Power Query,
а также создание пользовательских функций с ис
пользованием лямбда-формул и возможностей
Книга содержит более
ционные
350
и современные
VBA
дпя автоматизации работы.
готовых решений по различным темам, сочетает тради
подходы,
тивность и эффективно применять
помогая
Excel
Для пользователей
экономить
время,
повышать продук
в профессиональной деятельности.
Excel любого уровня
ББК
УДК 004.65
32.973.26-018.1
© 2025 ALIST LLP
Authorized Russian translation ofthe English edition of Ехсе/ Cookbook ISBN 9781098143329 © 2024 Dawn Griffiths.
This translation is puЫished and sold Ьу pennission of O'Reilly Media, Inc., which owns or controls all rights to puЫish
and sell the same.
Авторизованный перевод с английского языка на русский издания Ехсе/
Cookbook ISBN 9781098143329
© 2024 Dawn Griffiths.
Перевод опубликован и продается с разр~:шения компании-правообладателя
ISBN 978-1-098-14332-9
ISBN 978-601-12-4128-1
(англ.)
(каз.)
O'Reilly Media, lnc.
© Dawn Griffiths, 2024
© Издание на русском
я1ыке. ТОО "АЛ ИСТ",
2025
Оглавление
Предисловие
................................................................................................................... 15
Условные обозначения .................................................................................................................. 15
..................................................................................................... 16
O'Reilly ......................................................................................... 17
Как с нами связаться? .................................................................................................................... 17
Благодарности ................................................................................................................................ 18
Использование примеров кода
Платформа онлайн-обучения
Глава
1.
Рабочие книги, рабочие листы и ячейки .................................................. 19
1.1. Применяем темы ..................................................................................................................... 19
1.2. Применяем стили ячеек .......................................................................................................... 20
1.3. Форматируем ячейки .............................................................................................................. 21
1.4. Форматируем значение ячейки .............................................................................................. 22
1.5. Задаем пользовательский числовой формат ......................................................................... 24
1.6. Объединяем ячейки ................................................................................................................ 28
1.7. Создаем шаблоны ................................................................................................................... 29
1.8. Защищаем файлы, рабочие книги, рабочие листы и ячейки Excel ..................................... 31
1.9. Используем условное форматирование ................................................................................ 32
1.1 О. Применяем формат по образцу ........................................................................................... 34
1.11. Используем специальную вставку ...................................................................................... 35
1.12. Используем автозаполнение ................................................................................................ 36
1.13. Используем пользовательские списки ................................................................................ 3 8
1.14. Используем мгновенное заполнение ................................................................................. .40
1.15. Настраиваем автозамену ..................................................................................................... .42
1.16. Используем заметки и примечания .................................................................................... .43
1.17. Находим и выделяем ячейки и перемещаемся по ним ..................................................... .45
1.18. Создаем представление ....................................................................................................... .4 7
1.19. Настраиваем ленту и ее вкладки ........................................................................................ .48
1.20. Используем панель быстрого доступа ............................................................................... .49
1.21. Проверяем читаемость ......................................................................................................... 50
Глава
2.
Ссылки и структурированные данные ..................................................... 53
2.1. Используем относительные и абсолютные ссылки ............................................................. 53
2.2. Используем относительные и абсолютные ссылки в условном форматировании ........... 55
2.3. Используем стиль ссылок RICI ............................................................................................ 56
2.4. Ссылаемся на другой рабочий лист или книгу .................................................................... 58
2.5. Используем 3D-ссылки .......................................................................................................... 59
2.6. Именуем ячейки, диапазоны, константы и формулы .......................................................... 60
2.7. Создаем динамические именованные диапазоны ................................................................ 63
2.8. Проверяем данные .................................................................................................................. 64
2.9. Создаем правило пользовательской проверки данных ....................................................... 67
6
2.1 О.
2.11.
2.12.
2.13.
2.14.
2.15.
2.16.
2.17.
2.18.
2.19.
Оглавление
Вводим данные с помощью раскрывающегося списка ..................................................... 67
................................. 69
....................................................................................... 70
Сортируем данные по значению, формату или пользовательскому списку ................... 72
Фильтруем данные ................................................................................................................ 73
Закрепляем области .............................................................................................................. 75
Используем автосумму ......................................................................................................... 76
Используем структуру для добавления промежуточных итогов и групп ....................... 77
Используем таблицы ............................................................................................................ 78
Используем структурированные ссылки ............................................................................ 81
Определяем зависимые, или каскадные, раскрывающиеся списки
Используем форму ввода данных
Глава
3. Используем формулы ................................................................................... 85
3.1. Используем операторы и порядок очередности .................................................................. 85
3.2. Используем Excel в различных регионах и на разных языках ........................................... 88
3.3. Используем константы массивов .......................................................................................... 89
3.4. Используем динамические и устаревшие формулы массивов ........................................... 90
3.5. Используем ссылки на диапазон разлива ............................................................................. 92
3.6. Предотвращаем поведение динамического массива ........................................................... 93
3.7. Используем Вставку функции или инструмент Построитель формул ............................ 94
3.8. Добавляем заметки в числовые формулы ............................................................................ 95
3.9. Отображаем формулы ............................................................................................................ 96
3.1 О. Используем Окно контрольного значения ......................................................................... 96
3.11. Отображаем взаимозависимости ячеек .............................................................................. 97
3.12. Выполняем фоновую проверку ошибок ............................................................................. 99
3.13. Проверяем ошибки в таблице ............................................................................................ (00
3.14. Ищем источники ошибок ................................................................................................... 1О 1
3.15. Исправляем ошибки в значениях ...................................................................................... 102
3.16. Вычисляем формулы .......................................................................................................... 104
3.17. Меняем режим вычисления ............................................................................................... 106
3.18. Настраиваем точность округления .................................................................................... 108
3.19. Работаем с циклическими ссылками ................................................................................ 109
Глава 4. Математические операции ........................................................................ 111
4.1. Генерируем числа ................................................................................................................. 111
4.2. Преобразуем текст или булево выражение в число ........................................................... ] 12
4.3. Узнаем знак и абсолютное значение числа ........................................................................ 113
4.4. Подсчитываем, суммируем и усредняем значения ячеек ................................................. 113
4.5. Используем критерии для подсчета, суммирования и среднего значения ...................... 115
4.6. Складываем и вычитаем значения в квадрате .................................................................... 116
4. 7. Используем умножение и кратные значения ..................................................................... 118
4.8. Находим частные, остатки и делители ............................................................................... 119
4.9. Округляем до десятичных разрядов и целых чисел .......................................................... 120
4.1 О. Округляем до значащих цифр и кратных значений ........................................................ 121
4.11. Используем степени, экспоненты, квадратные корни и логарифмы ............................. 123
4.12. Суммируем степенной ряд ................................................................................................. 124
4.13. Используем факториалы, перестановки и комбинации .................................................. 124
4.14. Используем тригонометрию .............................................................................................. 126
4.15. Работаем с матрицами ........................................................................................................ 126
4.16. Преобразуем одну систему счисления в другую ............................................................. 128
4.17. Выполняем побитовые операции ...................................................................................... 129
4.18. Работаем с комплексными числами .................................................................................. 130
Оглавление
Глава
5. Работа
с текстом
1
7
.......................................................................................... 133
5.1. Объединяем текст ................................................................................................................. 133
5.2. Используем символьный код ............................................................................................... 134
5.3. Генерируем последовательность символов ........................................................................ 135
5.4. Генерируем случайные буквы ............................................................................................. 136
5.5. Определяем длину текстовой строки .................................................................................. 136
5.6. Определяем местоположение текста в текстовой строке ................................................. 136
5.7. Извлекаем текст фиксированной ширины из текстовой строки ...................................... 138
5.8. Извлекаем текст из текстовой строки с помощью разделителя ....................................... 139
5.9. Разбиваем текст в текстовой строке на цифровой и нецифровой .................................... 141
5.10. Заменяем, вставляем и удаляем текст ............................................................................... 142
5.11. Удаляем лишние символы ................................................................................................. 143
5.12. Подсчитываем слова или конкретные символы .............................................................. 144
5.13. Меняем регистр текста ....................................................................................................... 145
5.14. Повторяем символы ............................................................................................................ 145
5.15. Преобразуем массив в текст .............................................................................................. 146
5.16. Форматируем текст в формат валюты .............................................................................. 147
5.17. Включаем числовые значения в текстовую строку ......................................................... 148
5.18. Включаем дату/время в текстовую строку ....................................................................... 149
Глава
6. Дата
и время ................................................................................................. 151
6.1. Возвращаем текущие дату и время ..................................................................................... 151
6.2. Получаем часть значения даты/времени ............................................................................ 152
6.3. Получаем день недели и неделю года ................................................................................. 152
6.4. Получаем календарный или финансовый квартал ............................................................. 153
6.5. Создаем даты с помощью дня, месяца и года .................................................................... 154
6.6. Создаем время с помощью часов, минут и секунд ............................................................ 156
6. 7. Преобразуем текстовое значение в порядковый номер даты/времени ............................ 157
6.8. Извлекаем дату и время из порядкового номера ............................................................... 158
6.9. Добавляем к дате дни, месяцы и годы ................................................................................ 159
6.1 О. Добавляем ко времени часы, минуты и секунды ............................................................. 160
6.11. Получаем последний день месяца ..................................................................................... 161
6.12. Вычисляем доmо года ........................................................................................................ 162
6.13. Вычисляем разницу между значениями дат и времени .................................................. 163
6.14. Обрабатываем рабочие дни ............................................................................................... 164
6.15. Получаем последовательность дат .................................................................................... 165
Глава
7.
Массивы, логика и функции поиска
....................................................... 167
167
7.1.
168
........
....................................................
....................................................
массив
7.2. Сортируем
7.3. Фильтруем массив ................................................................................................................ 169
7.4. Преобразовываем массивы .................................................................................................. 171
7.5. Используем логические критерии Истина и Ложь .......................................................... 173
7.6. Оцениваем условия И и ИЛИ в формулах массивов ......................................................... 174
7. 7. Работаем с типами и ошибками в значениях ..................................................................... 17 5
7.8. Выбираем возвращаемые значения ..................................................................................... 176
7.9. Ищем точные и ближайшие значения ................................................................................ 178
7.10. Ищем индекс сопоставимого значения ............................................................................. 180
7.11. Используем индекс для возврата значения ...................................................................... 181
7. 12. Создаем косвенные ссылки на ячейки и диапазоны ........................................................ 183
Получаем уникальные значения ..........................................................................................
8
Оглавление
7.13.
7 .14.
Извлекаем адрес ячейки .....................................................................................................
Глава
8.1.
8.2.
8.3.
8.4.
8.5.
8.6.
8.7.
185
Используем смещенные ссылки ........................................................................................ 185
8.
Статистический анализ .............................................................................. 187
Создаем таблицу частот .......................................................................................................
187
............................................................ 189
Используем гистограмму или диаграмму Парето ............................................................. 191
Вычисляем среднее ............................................................................................................... 193
Ранжируем числовые данные .............................................................................................. 195
Находим k-e наибольшее или наименьшее значение ........................................................ 196
Разделяем данные на квартили и процентили .................................................................... 197
8.8. Рассчитываем диапазоны и дисперсии ............................................................................... 198
8.9. Поиск выбросов .................................................................................................................... 199
8.1 О. Используем диаграмму «ящик с усами» ........................................................................... 200
8.11. Рассчитываем асимметрию ................................................................................................ 201
8.12. Рассчитываем вероятности с помощью таблицы вероятностей ..................................... 202
8.13. Рассчитываем математическое ожидание и дисперсию .................................................. 204
8.14. Используем биномиальное распределение ...................................................................... 204
8.15. Используем отрицательное биномиальное распределение ............................................. 206
8.16. Используем гипергеометрическое распределение .......................................................... 207
8.17. Используем распределение Пуассона ............................................................................... 208
8.18. Используем экспоненциальное распределение ................................................................ 208
8.19. Используем нормальное распределение ........................................................................... 209
8.20. Используем Z-значения ...................................................................................................... 211
8.21. Вычисляем доверительный интервал для среднего генеральной совокупности .......... 212
8.22. Используем критерий независимости хн-квадрат (Х,2 ) .................................................... 214
8.23. Ищем линию наилучшего соответствия ........................................................................... 215
8.24. Получаем уравнение линии наилучшего соответствия ................................................... 217
Отображаем накопленные и процентные частоты
Глава
9. Надстройка Пакет анш,иза ....................................................................... 219
9.1. Устанавливаем Пакет анш~иза ............................................................................................ 219
9.2. Генерируем описательную статистику ............................................................................... 220
9.3. Генерируем порядковые номера и процентные ранги ...................................................... 222
9 .4. Генерируем частотное распределение ................................................................................ 224
9.5. Генерируем скользящее среднее ......................................................................................... 227
9.6. Используем экспоненциальное сглаживание ..................................................................... 229
9.7. Генерируем случайную выборку ......................................................................................... 231
9.8. Генерируем периодическую выборку ................................................................................. 233
9.9. Извлекаем случайные числа из распределения .................................................................. 233
9.10. Генерируем корреляционную матрицу ............................................................................. 235
9.11. Получаем матрицу ковариаций ......................................................................................... 237
9.12. Проводим линейный регрессионный анализ .................................................................... 238
9.13. Используем двухвыборочный t-критерий Стьюдента ..................................................... 241
9.14. Проводим двухвыборочный z-тест ................................................................................... 243
9.15. Проводим парный двухвыборочный t-тест ...................................................................... 245
9.16. Проводим двухвыборочный F-тест для дисперсии ......................................................... 247
9.17. Проводим однофакторный дисперсионный анализ ......................................................... 249
9 .18. Проводим двух факторный дисперсионный анализ ......................................................... 251
9.19. Проводим анализ Фурье ..................................................................................................... 253
Оглавление
Глава
10.1.
10.2.
10.3.
10.4.
10.5.
10.6.
10.7.
1О.
Финансовый анализ .................................................................................. 257
Рассчитываем платежи по кредитам с фиксированной процентной ставкой ................ 257
Рассчитываем выплаты процентов и основной суммы кредита ..................................... 258
Составляем график амортизации кредита с плавающей ставкой ................................... 260
Рассчитываем срок для кредита с фиксированной ставкой ............................................ 262
Рассчитываем номинальную или текущую стоимость
..................................................... 263
Конвертируем номинальную процентную ставку в реальную ....................................... 263
Рассчитываем будущую стоимость единовременной инвестиции
с фиксированной ставкой
10.8.
9
................................................................................................... 265
Рассчитываем будущую стоимость единовременной инвестиции с
плавающей ставкой ............................................................................................................ 266
Рассчитываем будущую стоимость инвестиции с регулярными вложениями ............. 267
10.9.
10.1 О. Достигаем инвестиционных целей .................................................................................. 268
10.11. Рассчитываем чистую приведенную стоимость ............................................................ 269
10.12. Рассчитываем внутреннюю ставку доходности ............................................................. 271
10.13. Рассчитываем амортизацию ............................................................................................ 273
10.14. Получаем данные акций и валют .................................................................................... 274
10.15. Получаем исторические данные акций и валют ............................................................ 276
1О. 16. Используем биржевые диаграммы .................................................................................. 276
10.17. Рассчитываем бета-коэффициент акции ......................................................................... 278
10.18. Прогнозируем линейный и экспоненциальный рост ..................................................... 279
10.19. Прогнозируем сезонный рост .......................................................................................... 280
Глава
11.
Сводные таблицы ...................................................................................... 285
11.1. Организуем данные для сводных таблиц ......................................................................... 285
11.2. Вставляем сводную таблицу .............................................................................................. 286
11.3. Добавляем строки, столбцы и значения ........................................................................... 288
11.4. Используем дополнительные строки ................................................................................ 290
11.5. Обновляем данные сводной таблицы ............................................................................... 291
11.6. Перемещаем сводную таблицу .......................................................................................... 292
11.7. Изменяем внешний вид сводной таблицы ........................................................................ 293
11.8. Изменяем макет по умолчанию ......................................................................................... 294
11.9. Изменяем агрегацию значений .......................................................................................... 295
11.1 О. Отображаем различные вычисления значений .............................................................. 296
11.11. Создаем пользовательские промежуточные итоги ........................................................ 298
11.12. Сортируем данные ............................................................................................................ 299
11. 13. Перемещаем элементы вручную ..................................................................................... 300
11.14. Фильтруем данные ............................................................................................................ 300
11.15. Используем фильтр для создания нескольких сводных таблиц ................................... 302
11.16. Группируем по дате/времени .......................................................................................... 303
11.17. Группируем по числу ....................................................................................................... 305
11.18. Группируем вручную по текстовым значениям ............................................................ 306
11.19. Включаем группы с отсутствующими данными ............................................................ 307
11.20. Изменяем формат пустых ячеек ...................................................................................... 308
11.21. Используем вычисляемые поля ....................................................................................... 309
11.22. Используем вычисляемые поля для подсчета элементов ............................................. 312
11.23. Используем вычисляемые элементы .............................................................................. 312
11.24. Ссылаемся на местоположение в формуле вычисляемого элемента ........................... 316
11.25. Изменяем порядок расчета вычисляемого элемента ....................................................... 316
11.26. Формируем список пользовательских формул .............................................................. 319
10
1
Оглавление
11.27. Изменяем источник данных сводной таблицы .............................................................. 319
11.28. Используем кеш сводной таблицы .................................................................................. 320
11.29. Фильтруем несколько сводных таблиц, совместно использующих один кеш ............ 322
11.30. Уменьшаем размер файла рабочей книги ....................................................................... 323
11.31. Восстанавливаем исходные данные сводной таблицы ................................................. 324
11.32. Ссылаемся на значения сводной таблицы ...................................................................... 325
Глава
12. Диаграммы ................................................................................................ 0327
12.1. Используем различные типы диаграмм ............................................................................ 327
12.2. Вставляем диаграмму ......................................................................................................... 333
12.3. Фильтруем диаграмму ........................................................................................................ 334
12.4. Настраиваем внешний вид диаграммы ............................................................................. 335
12.5. Добавляем и удаляем элементы диаграммы .................................................................... 336
12.6. Форматируем элементы диаграммы ................................................................................. 337
12.7. Создаем динамические заголовки и метки ....................................................................... 342
12.8. Настраиваем текст меток данных ...................................................................................... 342
12.9. Управляем осями и линиями сетки диаграммы ............................................................... 344
12.10. Отображаем отрицательные значения ............................................................................ 345
12.11. Используем в гистограммах рисунки ............................................................................. 346
12.12. Форматируем вторичную круговую и линейчатую диаграмму ................................... 347
12 .13. Форматируем гистограммы ............................................................................................. 348
12.14. Задаем типы диаграмм для комбинированной диаграммы ........................................... 350
12.15. Управляем пустыми ячейками ........................................................................................ 351
12.16. Основываем диаграмму на независимых данных .......................................................... 352
12.17. Изменяем имена рядов данных и элементы легенды .................................................... 353
12.18. Добавляем ряд или изменяем источник данных ............................................................ 354
12.19. Основываем диаграмму на динамическом именованном диапазоне ........................... 355
12.20. Вставляем сводную диаграмму ....................................................................................... 357
12.21. Создаем диаграмму Ганта ................................................................................................ 358
12.22. Создаем и используем шаблоны диаграмм .................................................................... 359
Глава
13. Графика,
спарклайны и 3D-карты
........................................................ 361
13 .1 . Вставляем символы ............................................................................................................ 361
13.2. Вставляем уравнения .......................................................................................................... 362
13.3. Вставляем фигуры .............................................................................................................. 363
13.4. Используем инструмент Рисование .................................................................................. 364
13.5. Используем SmartArt .......................................................................................................... 365
13.6. Вставляем рисунки ............................................................................................................. 366
13.7. Группируем объекты .......................................................................................................... 368
13.8. Перемещаем и изменяем размеры объектов вместе с ячейками .................................... 369
13.9. Вставляем связанный рисунок .......................................................................................... 370
13.10. Используем спарклайны .................................................................................................. 371
13 .11. Используем группы спарклайнов .................................................................................... 3 74
13.12. Используем 3D-карты ...................................................................................................... 375
13.13. Создаем видео с помощью 3D-карт ................................................................................ 378
Глава
14.1.
14.2.
14.3.
14. Анализ
«что если»
..................................................................................... 381
Создаем таблицу данных с одной переменной
................................................................ 38\
............... 383
переменными ............................................................. 384
Создаем ориентированную на строку таблицу данных с одной переменной
Создаем таблицу данных с двумя
Оглавление
11
14.4. Редактируем таблицы данных ........................................................................................... 386
14.5. Используем диспетчер сценариев ..................................................................................... 387
14.6. Объединяем сценарии ........................................................................................................ 390
14.7. Генерируем сводки сценариев ........................................................................................... 390
14.8. Используем инструмент Подбор параметра ................................................................... 392
14.9. Находим несколько решений с помощью подбора параметра ....................................... 394
14.10. Находим решение формулы, описывающей функцию, имеющую разрывы,
с помощью подбора параметра ........................................................................................ 395
14.11. Устанавливаем надстройку Поискрешения ................................................................... 397
14.12. Решаем с помощью надстройки Поиск решения проблемы оптимизации .................. 398
14.13. Используем в надстройке Поиск решения ограничение «только целые числа» ........ .403
14.14. Используем в в надстройке Поиск решения ограничение «только двоичные» ........... 406
14.15. Создаем с помощью надстройки Поиск решения изменяемые ячейки
с разными значениями ...................................................................................................... 41 О
14.16. Решаем с помощью надстройки Поиск решения проблему разрывов функции ........ .413
14.17. Находим с помощью надстройки Поиск решения несколько решений ....................... 415
14.18. Находим с помощью надстройки Поиск решения глобальный минимум
или максимум функции ................................................................................................... .417
14.19. Настаиваем параметры надстройки Поиск решения ...................................................... 419
14.20. Сохраняем и загружаем параметры надстройки Поиск решения ................................. 422
14.21. Сохраняем сценарии, сгенерированные надстройкой Поиск решения ....................... .423
14.22. Отображаем отчеты надстройки Поиск решения ........................................................... 423
Глава
15. Power Query ................................................................................................ 425
15.1. Получаем и загружаем данные .......................................................................................... 425
15.2. Получаем и загружаем данные из файлов в папке .......................................................... 427
15.3. Указываем, куда загрузить данные .................................................................................. .428
15.4. Редактируем настройки и безопасность источника данных ........................................... 430
15.5. Обновляем данные запроса ............................................................................................... .432
15.6. Управляем запросами ......................................................................................................... 433
15.7. Редактируем запрос ........................................................................................................... .435
15.8. Управляем шагами запроса ............................................................................................... .437
15.9. Управляем столбцами ....................................................................................................... .437
15.1 О. Используем типы данных ............................................................................................... .438
15.11. Сортируем и фильтруем данные ..................................................................................... 440
15.12. Фильтруем файлы при загрузке данных из папки ........................................................ .441
15.13. Удаляем дубликаты, пустые строки и ошибки ............................................................. .442
15.14. Преобразуем данные в столбцах .................................................................................... .443
15.15. Разделяем и объединяем столбцы ................................................................................... 447
15.16. Выполняем сведение столбцов ........................................................................................ 449
15.17. Отменяем сведение столбцов ......................................................................................... .450
15 .18. Преобразуем структурированные столбцы ................................................................... .451
15.19. Возвращаем значение или список ................................................................................... 452
15.20. Добавляем новые столбцы .............................................................................................. .453
15 .21. Добавляем столбцы, основанные на примерах .............................................................. 455
15.22. Добавляем условный столбец .......................................................................................... 457
15.23. Добавляем настраиваемый столбец ................................................................................ 458
15.24. Используем параметры ................................................................................................... .460
15.25. Создаем пользовательскую функцию ............................................................................ .462
15.26. Добавляем столбец, вызывая пользовательскую функцию .......................................... 465
Оглавление
12
15.27.
15.28.
15.29.
15.30.
15.31.
Дублируем отчет ............................................................................................................... 466
....................................................................................................... .466
.................................................................. .468
Объединяем данные из нескольких запросов ............................................................... .469
Редактируем М-код запроса ............................................................................................ 471
Ссылаемся на запрос
Добавляем данные из нескольких запросов
Глава
16. Роwег Pivot
и модель данных................................................................... 473
16.1. Устанавливаем Power Pivot ............................................................................................... .4 73
16.2. Добавляем данные в модель данных ................................................................................ 474
16.3. Управляем соединениями данных Power Pivot ............................................................... .475
16.4. Просматриваем таблицы модели данных и управляем ими .......................................... .477
16.5. Обновляем данные модели данных .................................................................................. .479
16.6. Работаем со столбцами таблицы ....................................................................................... 480
16.7. Создаем и изменяем взаимосвязи ..................................................................................... 482
16.8. Добавляем вычисляемый столбец .................................................................................... .484
16.9. Создаем сводную таблицу или сводную диаграмму на основе модели данных .......... .487
16.1 О. Вставляем меры ............................................................................................................... .489
16.11. Используем КПЭ .............................................................................................................. .492
16.12. Создаем иерархии ............................................................................................................. 496
16.13. Создаем таблицу данных ................................................................................................ .498
16.14. Используем именованные наборы .................................................................................. 500
16.15. Преобразуем сводную таблицу в формулы .................................................................... 504
16.16. Используем формулы кубов ............................................................................................ 505
16.17. Фильтруем формулы кубов с помощью срезов и временных шкал ............................. 508
Глава
17. LET, UMBDA
и вспомогательные лямбда-функции ......................... 511
17 .1. Повышаем эффективность формулы ................................................................................ 51 1
17.2. Пишем и тестируем лямбда-функции ............................................................................... 512
17.3. Делаем лямбда-аргументы необязательными .................................................................. 514
17.4. Определяем пользовательскую лямбда-функцию ........................................................... 515
17.5. Пишем рекурсивные лямбда-формулы ............................................................................. 516
17.6. Копируем пользовательскую лямбда-функцию в другую рабочую книгу .................... 518
17. 7. Применяем лямбда-формулу в каждом столбце .............................................................. 519
17.8. Применяем лямбда-формулу в каждой строке ................................................................. 521
17.9. Создаем массив вычисляемых значений .......................................................................... 522
17 .1 О. Преобразуем значения в массивах .................................................................................. 524
17.11. Вычисляем кумулятивные значения ............................................................................... 525
17.12. Возвращаем конечное значение кумулятивного вычисления ...................................... 527
Глава
18. Инструменты разработчика: макросы, VBA, элементы
XML ...................................................................................................... 531
управления и
18.1. Отображаем вкладку Разработчик ................................................................................... 531
18.2. Записываем макросы .......................................................................................................... 532
18.3. Используем личную книгу макросов ................................................................................ 534
18.4. Редактируем настройки макроса ....................................................................................... 535
18.5. Запускаем макрос ............................................................................................................... 536
18.6. Просматриваем и редактируем VВА-код макроса .......................................................... 537
18.7. Используем абсолютные и относительные ссылки ......................................................... 540
18.8. Создаем макрос путем написания VВА-кода ................................................................... 541
18.9. Создаем пользовательскую функцию VBA ...................................................................... 542
Оглавление
1
13
18.10. Используем события рабочих листов и рабочих книг .................................................. 544
18.11. Переопределяем комбинацию клавиш с помощью ОпКеу ........................................... 54 7
18.12. Планируем выполнение кода с помощью ОпТiте ......................................................... 549
18.13. Удаляем макрос или функцию ........................................................................................ 550
18.14. Копируем код в другой VВА-проект .............................................................................. 551
18.15. Исправляем ошибки VВА-кода ....................................................................................... 552
18.16. Используем встроенные диалоговые окна ..................................................................... 557
18.17. Используем элементы управления формы ..................................................................... 558
18.18. Используем элементы управления ActiveX ................................................................... 562
18.19. Создаем пользовательскую форму .................................................................................. 568
18.20. Создаем пользовательскую надстройку Excel ............................................................... 571
18.21. Настраиваем параметры безопасности и конфиденциальности ................................... 573
18.22. Импортируем и экспортируем ХМL-файлы .................................................................. 574
Дальнейшие шаги ........................................................................................................ 577
Предметный указатель ............................................................................................... 579
Об авторе ....................................................................................................................... 589
Об изображении на обложке ...................................................................................... 591
Предисловие
350 решений, которые помогут вам извлечь макси
Microsoft Excel, независимо от того, пишете ли вы форму
В этой книге содержится более
мум пользы от работы с
лы, импортируете ли данные, разбираетесь ли со сводными таблицами или решаете
сложные задачи оптимизации. Эти решения выработаны на основе моего более чем
20-летнего опыта использования
Excel
и обучения работе с ним тысяч студентов по
всему миру.
Каждое из решений, включенных в книгу, решает конкретную проблему с помо
щью одного или более методов, и практически каждое решение сопровождается
примерами, иллюстрирующими основные обучающие моменты. Вы сможете опро
бовать эти примеры, читая книгу, а затем применить их на практике в вашей си
туации.
Нет надобности изучать главы книги или приведенные в них решения в каком-либо
определенном
порядке
-
то есть читать книгу
можно как от начала и до самого
конца, так и начать ее чтение с любого места. Многие решения содержат ссылки на
другие
-
это даст вам возможность быстро переходить от одного решения к дру
гому.
Excel 365 - та
ранними версиями Excel.
включенная в Excel 2021
В книгу (на момент ее подготовки) включены новейшие функции
кие как ЛЯМБДА. Однако она также совместима с более
К примеру, в книге рассматривается функция поискпозх,
Excel 365, и аналогичная ей функция поискпоз, доступная в более ранних версиях
Excel. В книге также описаны различия в использовании Excel для операционных
систем Microsoft Windows и macOS применительно к изменению настроек по умол
и
чанию.
Условные обозначения
В книге используются следующие типографские условные обозначения:
♦ Курсивный шрифт.
Курсивом выделены новые или важные термины, на которые нужно обратить
внимание.
♦
Полужирный шрифт.
Им выделяются элементы интерфейса, интернет-адреса
тронной почты.
(URL)
и адреса элек
Предисловие
16
♦
Моноширинный шрифт.
Им выделяются листинги программного кода, а также встречающиеся внутри
абзацев текста ссылки на элементы программ
-
такие как имена переменных
или функций, базы данных, типы данных, переменные среды, операторы и клю
чевые слова.
♦
ПопужирНЬIЙ моноширинный шрифт.
Им могут быть оформлены команды или другой текст, которые пользователь
должен ввести с клавиатуры.
♦
Рубленый шрифт.
Им выделяются имена файлов, расширения имен файлов и пути.
Эrо, эаачо, обоэаачае,-со,е, или лодс,ащ
'
~ Эnп эаачо, обоэаачае, аримечание общесо ,араоаера.
/ ~ ... . •·
:~~
Этот значок обозначает предупреждение или предостережение.
Использование примеров кода
Вспомогательные материалы (примеры кода, упражнения и т. д.) доступны для ска
чивания со страницы этой книги на сайте ресурса GitHub 1.
Предназначение книги
-
помочь вам в решении ваших задач. Вы можете исполь
зовать любой пример кода, содержащийся в ней, в своих программах и документа
ции. При этом вам не требуется обращаться за разрешением в издательство, если
только вы не воспроизводите существенную часть кода. Это, например, касается
ситуаций, когда вы включаете в свою программу несколько фрагментов кода, при
веденного в книге. Однако продажа или распространение примеров из книг изда
тельства
эту
O'Reilly
книгу,
требует отдельного разрешения. Вы можете свободно цитировать
включая
существенную
примеры,
часть
при
приведенного
ответе
здесь
на
вопрос,
кода
в
но если
намерены
документацию
своего
включить
продукта,
вам следует связаться с нами.
Ссылка на оригинал приветствуется, но не является обязательной. Указание автор
ства обычно включает название книги, автора (авторов), издателя и
1 См.
https://goo.su/h06qlk.
ISBN.
Напри-
Предисловие
мер: «Excel Cookbook
978-1-098-14332-9».
Ьу
1
17
Dawn Griffiths (O'Reilly). Copyright 2024 Dawn Griffiths,
Если вы сочтете, что ваше обращение с примерами кода выходит за рамки добро
совестного использования или упомянутых здесь условий, можете обратиться к нам
по адресу:
permissions@oreilly.com.
Платформа онлайн-обучения
о•R Е
ILLу
O'Reilly
На протяжении почти 40 лет издательство O'Reilly Media пре
доставляет технические и бизнес-тренинги, знания и опыт,
чтобы помочь компаниям достичь успеха.
Ууникальное сообщество экспертов и новаторов
O'Reilly
делится знаниями и опы
том с помощью книг, статей, конференций и нашей платформы онлайн-обучения.
Эта платформа предоставляет доступ к учебным курсам, проводимым в прямом
эфире, углубленные учебные программы, интерактивные среды для написания ко
да, а также обширную коллекцию текстов и видео от
O'Reilly
и более чем
гих издательств. Больше информации о платформе онлайн-обучения
но найти на странице
200 дру
O'Reilly мож
http://oreilly.com.
Как с нами связаться?
Пожалуйста, адресуйте все комментарии и вопросы относительно этой книги изда
телю:
O'Reilly Media, lnc.
1005 Gravenstein Highway North
Sebastopol, СА 95472
800-998-9938 (в Соединенных Штатах и Канаде)
707-829-0515 (международные или местные звонки)
707-829-0104 (факс)
support@oreilly.com
https://www.oreilly.com/about/contact.html
У этой книги есть веб-страница, на которой мы приводим найденные в книге ошиб
ки, примеры решений и прочую дополнительную информацию. Она находится по
адресу:
https://oreil.ly/excel-cookbook.
Новости и информацию о наших книгах можно найти сайте
Наш адрес в
https://oreilly.com.
Linkedln: https://linkedin.com/company/oreilly-media.
Также смотрите нас на
YouTube: https://youtube.com/oreillymedia.
18
Предисловие
Благодарности
От всей души благодарю своего замечательного редактора Корбина Коллинса за то,
что он подправлял меня, когда в моих предложениях нужные слова располагались
не в том порядке. Работать с ним было настоящей мечтой, поскольку он давал мне
возможность почувствовать себя значимой. И не в моих силах выразить ему благо
дарность, соответствующую его вкладу в издание этой книги. Также я хочу побла
годарить Дэвида Михельсона за готовность напечатать эту книгу, Терезу Джоне за
помощь с запросами
AsciiDoc,
Криса Фочера за досрочный выпуск книги, Бет
Келли за руководство ее выпуском и Стефани Инглиш за редактирование текста.
Благодарю также Мелиссу Даффилд за предложение провести курсы
платформе
O'Reilly.
Над этой
книгой
работала невероятная
команда технических
Excel
редакторов:
на
Энн
Брамвелл, Джеки Коп и Джордж Маунт. Каждый из них привнес определенную
точку зрения, и я благодарю их за то, что они поделились со мной своими идеями,
опытом и отзывами.
Также спасибо тем, кто посетил мои курсы
Excel.
Их реальные вопросы и обратная
связь с ними вдохновили меня на создание многих примеров этой книги и помогли
мне улучшить ее.
Особенную благодарность хочу выразить своему мужу Дэвиду и моим родителям
за их любовь, поддержку, содействие и за то, что были рядом на каждом шаге этого
пути. Спасибо также Энди, Крису, Яну и Джесс.
ГЛАВА
1
Рабочие книги, рабочие листы
..,
и ячеики
В
Excel
есть много функций и инструментов, помогающих вам экономить время и
создавать удобные для работы и безупречные электронные таблицы. Эта глава по
священа параметрам, которые обычно полезны при работе с файлами
Excel:
темам
и стилям ячеек, определению шаблонов, созданию пользовательских числовых
форматов и использованию условного форматирования. Кроме того, в ней рассмат
риваются такие эффективные инструменты, как Автозаполнение
венное заполнение
(Flash Fill)
и Панель быстрого доступа
Special).
а также описаны скрытые ценные возможности
струмент Выделить группу ячеек
1.1. Применяем
(Go
То
(Auto Fill), Мгно
(Quick Access Toolbar),
пользовательские списки и
ин
темы
Задача
У вас есть рабочая книга, и вы хотите придать ей единообразный внешний вид.
Решение
Когда вы создаете новую рабочую книгу,
использует для нее тему
Excel
набор
-
цветов, шрифтов и эффектов, скомпонованных, чтобы придать вашей рабочей кни
ге согласованный внешний вид. В
тем,
и
переключаться
(Themes)
раздела Темы
между
Excel
ними
(Themes)
включено несколько предустановленных
можно
в
раскрывающемся
вкладки Разметка страницы
списке
Темы
(Page Layout),
вы
брав тему из галереи.
Excel
также предоставляет возможность создавать собственные пользовательские
темы:
1.
Откройте стандартный набор цветов в раскрывающемся списке Цвета
раздела Темы
(Themes)
вкладки Разметка страницы
(Page Layout).
(Colors)
В качестве
альтернативы создайте новый пользовательский набор цветов, выбрав параметр
Настроить цвета
раздела Темы
(Customize Colors) в раскрывающемся списке Цвета (Colors)
(Themes) вкладки Разметка страницы (Page Layout).
Далее в тексте книги последовательность пунктов меню ленты
Excel часто будет
(Page Layout) 1
записываться в краткой форме вида: вкладка Разметка страницы
раздел Темы
•
(Themes) 1 раскрывающийся список Цвета (Colors) или
(Page Layout) 1 Темы (Themes) 1 Цвета (Colors).
Разметка страницы
даже просто:
20
2.
1
Глава
1
Откройте в меню ленты
Excel
стандартный набор шрифтов заголовка и основно
го текста: вкладка Разметка страницы
(Page Layout) 1 раздел Темы (Themes) 1
(Fonts). В качестве альтернативы создайте
новый пользовательский набор шрифтов: Разметка страницы (Page Layout) 1
Темы (Themes) 1 Шрифты (Fonts) 1 Настроить шрифты (Customize Fonts).
раскрывающийся список Шрифты
3.
Откройте в меню ленты
рабочей книги:
(Themes)
1
Excel
набор эффектов для изменения внешнего вида
вкладка Разметка страницы
раскрывающийся список Эффекты
(Page Layout) 1
(Effects). Обратите
раздел
Темы
внимание, что
здесь допускается лишь выбрать предустановленные эффекты, но не создавать
свои собственные.
4.
Сохраните цвета, шрифты и эффекты в виде темы: Разметка страницы
Layout)
1
Темы
(Themes)
1
Сохранить текущую тему
(Page
(Save Current Theme), ука
зав место сохранения.
Создав пользовательскую тему, примените ее к рабочей книге: Разметка стра
ницы
(Page Layout)
1
Темы
(Themes)
1
Поиск тем
(Browse for Themes).
Пояснение
Тема позволяет применить единообразный внешний вид к вашей рабочей книге. Вы
можете выбрать одну из стандартных тем
или создать пользовательскую,
Excel
чтобы применить корпоративный или личный стиль.
Дополнение
Чтобы изменить тему, которую
чанию, обратитесь к разд.
1.2. Применяем
Excel
применяет к новым рабочим книгам по умол
1. 7.
стили ячеек
Задача
Вы применили к рабочей книге тему и хотите использовать ее для оформления вы
деленных ячеек.
Решение
Применить шрифты и цвета темы к ячейкам можно, используя стили ячеек.
: ~ Стиль ячейки - это заданный набор характеристик форматирования, таких как
шрифт, размер шрифта и затенение, который помогает вам согласованно оформ:
•
лять ячейки. Каждый стиль использует шрифты и цвета, соответствующие теме
•
••
рабочей книги (см. разд. 1.1), так что если вы переключитесь на другую тему, стили
ячеек обновятся автоматически.
Чтобы применить стиль ячейки, выделите ячейки, которые вам надо отформатиро
вать, и выберите стиль: вкладка Главная (Ноше)
1
раздел Стили
(Styles)
1
раскры-
Рабочие книги, рабочие листы и ячейки
вающийся список Стили ячеек
(Cell Styles).
1
21
Стили там сгруппированы в соответ
ствии с их назначением следующим образом:
♦ Хороший, плохой и нейтральный
(Good, Bad, and Neutral).
Эти стили позволяют вам форматировать ячейки, содержащие особенно хоро
шие или особенно плохие результаты.
♦ Данные и модель
(Data and Model).
Стили для ячеек, содержащих вычисления, предупреждения, примечания, или
для ячеек, которым нужны входные значения.
♦
Названия и заголовки
(Titles and Headings).
Стили для различных уровней заголовков и общий стиль ячейки.
♦
Стили ячеек с темой
(Themed Cell Styles).
Эти стили реализуют цветовые акценты на основе цветовой палитры темы.
♦ Числовой формат
(Number Format).
Эти стили используют для быстрого форматирования чисел
-
например, в фор
мате денег или процентов, и для использования запятых в качестве разделителя
тысяч.
Если вам надо изменить стиль ячейки, сделать это можно, щелкнув правой кнопкой
мыши на стиле, который собираетесь изменить, найдя его предварительно по меню:
Главная
(Home) 1 Стили (Styles) 1 Стили ячеек (Cell Styles) и выбрав затем коман
(Modify) из открывшегося контекстного меню. Это действие откроет
диалоговое окно Стиль (Style), предназначенное для настройки стиля ячейки с по
мощью параметров форматирования ячеек Excel (см. разд. 1.3).
ду Изменить
Чтобы создать новый стиль, следует либо скопировать уже существующий стиль,
щелкнув на нем правой кнопкой мыши и выбрав команду Дублировать
либо создать новый с нуля: Главная
Styles)
1
Новый стиль ячейки
(Home) 1
(New Cell Style).
Стили
(Styles)
1
Стили
(Duplicate),
ячеек (Cell
По умолчанию пользовательские стили доступны лишь в той рабочей книге, в ко
торой были созданы. Однако разрешается импортировать стили из другой откры
той рабочей книги: вкладка Главная (Home) 1 раздел Стили (Styles) 1 раскрываю
щийся список Стили ячеек (Cell Styles) 1 пункт Объединение стилей (Мегgе
Styles).
Пояснение
Использовать это решение можно вместе с командами из разд.
1.1,
чтобы приме
нить согласованный внешний вид к ячейкам рабочей книги.
1.3. Форматируем
ячейки
Задача
Вы хотите отформатировать одну или более ячеек на рабочем листе, но не знаете,
как это сделать.
Глава
22
1
Решение
Excel
предлагает множество параметров для изменения формата ячейки: изменение
выравнивания или ориентации ее содержимого, добавление границ или заливки,
настройка шрифта и пр. Эти параметры можно добавить к стилю ячейки (см.разд.
1.2)
или применить их к определенным ячейкам по необходимости.
~ ] Как правило, лучше форматировать ячейки с помощью стилей ячеек, поскольку они
~
автоматически обновляются в соответствии с темой вашей рабочей книги.
Обычно формат ячейки обновляют с помощью двух основных методов:
♦
выбрав ячейку и задав ей доступные параметры на вкладке Главная (Ноше);
♦
используя диалоговое окно Формат ячеек
(Format Cells).
Откройте его, щелк
нув правой кнопкой мыши на ячейке, которую собираетесь отформатировать,
и выберите пункт Формат ячеек
(Cells)
1
Формат
вом окне Стиль
(Format Cells) в меню Главная (Ноше)
(Format) или щелкните на кнопке Формат (Format) в
(Style) (см. разд. 1.2).
1
Ячейки
диалого
Пояснение
Вкладка Главная (Ноше) и диалоговое окно Формат ячеек
(Format Cells)
содер
жат удобные способы изменения формата ячейки или ее внешнего вида. Попробуй
те поэкспериментировать с доступными параметрами.
1.4. Форматируем
значение ячейки
Задача
Вы хотите изменить способ форматирования ячейки, используя один из стандарт
ных форматов
Excel.
Решение
Предположим, на рабочем листе имеются ячейки, содержащие числа, даты или
время, и вам надо изменить способ их форматирования. Сделать это можно, приме
нив числовой формат,
-
например, отформатировать числа в виде процентов, дро
бей или в денежном формате, а также изменить отображение даты, чтобы включить
временную составляющую.
Чтобы изменить числовой формат ячейки, выберите ячейку или ячейки, которые
собираетесь форматировать, откройте диалоговое окно Формат ячеек
Cells)
(см. разд.
1.3)
и выберите формат на вкладке Число
ны следующие варианты:
(Number).
(Format
Здесь доступ
Рабочие книги, рабочие листы и ячейки
♦
Общий
1
23
(General).
Это формат по умолчанию, который
Excel
применяет к большинству чисел, так
что они отображаются в том виде, в котором вы их вводите. Формат использует
научную (экспоненциальную) нотацию для больших чисел с
12
и более знаками
и, если ширины ячейки не хватает, округляет числа.
♦
Числовой
(Number).
Этот формат представляет числа наиболее общим способом. С его помощью
можно задать количество отображаемых десятичных знаков и вариант отобра
жения отрицательных чисел.
♦
Денежный
(Currency)
и Финансовый
(Accounting).
Эти варианты форматируют число в виде денежного значения, при этом Финан
совый формат выравнивает в столбце десятичные точки и денежные символы, а
Денежный этого не делает.
Excel
использует Денежный формат по умолчанию
для любых чисел, которые вы вводите в качестве денежного значения (напри
мер,
500 1?).
♦ Дата
(Date)
и Время
(Time ).
Эти варианты представляют форматы значений даты и времени согласно приня
тым в системе региональным стандартам.
Excel
использует их по умолчанию для
любых значений, которые он распознает как дату или время.
♦
Процентный
(Percentage).
Этот параметр позволяет задать число в процентном виде с указанным количе
ством знаков после запятой. Ехсе\ использует его по умолчанию для любых
чисел, которые вы вводите в виде процентов (например,
♦ Дробный
12%).
(Fraction).
Задействуйте этот параметр для форматирования чисел в виде дробей. Ехсе\ ис
пользует его по умолчанию для любых чисел, которые вы вводите как дробь
(например, 11/ 2).
♦
Экспоненциальный
(Scientific ).
Этот вариант форматирует числа, применяя научную (экспоненциальную) нота
цию, согласно которой можно указать число знаков после запятой.
Excel
исполь
зует его по умолчанию для любых чисел, которые вводятся с применением
научной нотации (например, 1,23Е+10).
♦
Текстовый
(Text).
В этом формате значение ячейки рассматривается как текст и отображается
в том виде, в котором оно было введено. Текстовый формат стоит задавать
только для тех значений, которые вы не собираетесь использовать для расчетов,
поскольку он может привести
к ошибочным результатам,
если
вы
введете
в ячейку число, но зададите ему Текстовый формат. Ехсе\ может сохранить это
число в виде текстового значения, которое определенные функции (такие как,
например, СУММ) интерпретируют как равное О.
24
1
Глава
1
♦ Дополнительный
(Special).
Этот вариант позволяет форматировать число в виде почтового индекса, номера
телефона или табельного номера в зависимости от местной специфики.
♦
Все форматы
(Custom).
Этот параметр позволяет применить пользовательский формат (см.разд.
1. 5).
Изменение формата ячейки изменяет только ее внешний вид, оставляя базовое
значение нетронутым. Чтобы определить фактическое значение ячейки, выберите
ячейку и вид на панели формул, измените формат на Общий
вкладке Формулы
(Formulas)
в разделе Зависимости формул
выберите пункт Показать формулы
(General) или на
(Formula Auditing)
(Show Formulas).
Пояснение
В этом разделе описано использование стандартных числовых форматов Ехсе\, а
также рассказано об их назначении. Форматирование чисел, как правило, является
хорошей идеей, поскольку оно делает их более согласованными и удобочитаемыми.
1.5. Задаем
пользовательский числовой формат
Задача
Вы хотите задать свой собственный формат для чисел, дат или времени вместо того,
чтобы задействовать существующие в Ехсе\ стандартные числовые форматы.
Решение
Предположим, на рабочем листе имеются ячейки, содержащие числа, даты или
время, и вам надо настроить их внешний вид. Это можно сделать, задав пользова
тельский числовой формат.
Пользовательский числовой формат задается в диалоговом окне Формат ячеек
(Format Cells) (см. разд. 1.3) форматы (Custom) и выберите
откройте на вкладке Число
(Number)
параметр Все
нужный формат в поле Тип (Туре). Здесь можно как
выбрать существующий формат, так и изменить его, а также создать новый с нуля.
В каждом пользовательском числовом формате содержится от одного до четырех
разделов кода, отделенных друг от друга точкой с запятой. Если вы предоставите
один раздел кода, Ехсе\ применит этот формат ко всем числам, поэтому, например,
пользовательский числовой формат о отображает все числа в виде целых чисел.
Если вы предоставите два раздела кода, Ехсе\ использует первый для форматирова
ния положительных чисел и нулей, а второй
-
для форматирования отрицательных
чисел. Например, пользовательский числовой формат о, оо; [Красный]-0, оо содержит
два раздела кода: первый форматирует положительные числа и нули с точностью
до двух знаков после запятой, а второй форматирует отрицательные числа с точно
стью до двух знаков после запятой, включает знак «минус» и меняет цвет шрифта
Рабочие книги, рабочие листы и ячейки
на красный. Если вы предоставите четыре раздела кода,
Excel
25
использует эти раз
делы для форматирования положительных чисел, отрицательных чисел, нулей и
текста, и именно в таком порядке.
Управлять отображением чисел можно с помощью следующих символов:
♦
# (решетка)
и о (ноль).
Использование
# позволяет указать значимые цифры числа. Так, пользователь
#, ## отобразит число 1,678 в виде 1, 68, а 0,6 - в виде , 6.
ский числовой формат
Использование о позволяет включить дополнительные нули. Так, пользователь
ский числовой формат о,## отобразит число
число
♦
1,2
? (знак
0,678
в виде о, 68, а формат ооо, оо
вопроса).
Использование
? позволяет указать
значимые цифры и выровнять числа по деся
тичной точке. Так, пользовательский числовой формат о,?? отобразит число
в виде 123 и число
♦
-
в виде 001, 20.
1,678
123
в виде 1, 68, выравнивая десятичные точки.
, (запятая).
Использование запятой в качестве разделителя тысяч позволяет масштабировать
число, кратное
число
♦
1234
1ООО.
Так, пользовательский числовой формат#, ##О, оо отобразит
в виде 1,234, оо, а формат о,
-
число
1234 в
виде 1.
% (процент).
Использование % позволяет отображать числа в виде процента. Так, пользова
тельский числовой формат О% отобразит число
♦
123
в виде 12300%.
_ (нижнее подчеркивание).
Использование нижнего подчеркивания, за которым следует символ, позволяет
отображать пробел с той же шириной, что и символ. К примеру, формат
_ (о, оо_) ; (о, оо)
заключает отрицательные числа в круглые скобки и добавляет
пробелы шириной в скобку перед положительными числами и после них, чтобы
числа выровнялись.
♦
* (звездочка).
Чтобы повторить символ таким образом, чтобы он заполнил оставшуюся шири
ну клетки, добавьте перед ним звездочку. Так, формат *О# добавит лидирующие
нули.
На
рис.
1. 1
приведены
некоторые
примеры
использования
пользовательского
числового формата для управления отображением чисел.
Общий
123
12345
0,6
1,678
12345,678
Рис.
#,##
123,
12345,
,6
1,68
12345,68
1.1.
О,##
#,##0.00
из,
UЗ,00
12345,
0,6
1,68
12345,68
12345,00
0,60
1,68
12 345,68
000,00
123,00
12345,00
000,60
001,68
о,??
о,
0%
123,
12345,
0,6
1,68
о
UЗОО%
12345,68
12345,68
12 1234500%
о
60%
о
168%
12 1234568%
Примеры использования пользовательских числовых форматов
Глава
26
1
Заполнители после десятичной точки указывают, до скольких знаков после запятой
округлять число. Все цифры слева от десятичной точки отображаются вне зависи
мости от числа заполнителей.
К числовому формату разрешается добавлять дополнительные символы. Например,
чтобы включить в состав числовой записи текстовую строку, заключите ее в двой
ные кавычки и поместите в соответствующий раздел кода. Так, формат "Баланс:
"О, оо "J'" добавит перед суммой в рублях текст Баланс:.
Двойные кавычки не нужны для многих часто используемых одиночных симво
лов
таких как Р,
-
раздел
кода.
Так,
(, ), + и -, но их можно вводить напрямую в соответствующий
формат
о, ОО; 10,001
заключит
любые
отрицательные
числа
в скобки, а формат о, оо Р добавит символ рубля, соответствующий региональным
настройкам вашей системы (рис.
0,00;(0,ОО) ~
123,00
(123,00)
0,00
Общий
123
-123
о
Рис.
1.2).
" Баланс:
О,ООР
123,00 Р
-123,00 Р
0,00 Р
1.2. Добавляем
"0,00 " Р" 11 Баланс: "0,00 11 Р";"Баланс: "-0,00 "Р "
123,00 Р
Баланс: -123,00 Р
Баланс: 0,00 Р
123,00 Р
-Баланс: 123,00 Р
Баланс : 0,00 Р
Баланс:
Баланс :
.О#
(0,00 j;(0,00)
123,00 OOOOU3
(123,00) -ООО 123
0,00 0000000
дополнительные символы к пользовательскому числовому формату
Если вам нужно отобразить формат по умолчанию для любого раздела кода, выбе
рите вместо кода формата вариант Основной. Например, пользовательский формат
Основной;-Основной;О;Основной отображает нули в виде о, а для отображения других
значений использует формат по умолчанию, помещая символ «минус» перед отри
цательными числами. Вы также можете задействовать символ @ в качестве заполни
теля для любого введенного текста. На рис.
1.3
приведены некоторые примеры
применения этих кодов формата.
Основной;-Основной;О Основной;(Основной) ;О; @
Основной
123
123
-123
-из
о
о
Привет
Рис.
1.3.
"@
123
-123
о
Привет
Привет
Основной;- Основной;О; "Текст:
123
(123)
о
Текст: Привет
Примеры формата Основной и @
Чтобы изменить цвет шрифта для любого раздела кода, поместите название цвета
в квадратные скобки и добавьте его в начало раздела. Возможные варианты вклю
чают:
[Черный],
[Синий],
[Голубой],
[Зеленый],
[Пурпурный],
[Красный],
[Белый]
И
[Желтый].
Так, формат кода [Зеленый] о, 00; [Красный]-0, 00; О;@ применит зеленый цвет для поло
жительных чисел, красный
-
для отрицательных и цвет по умолчанию для нулей и
текста. Вы также можете указать цвет по номеру, используя синтаксис [Цвет/NJ, где
N - это число от
1 до 56,
которое указывает на один из
56
цветов в стандартной
цветовой палитре. Например, [ЦветlОJ задаст несколько иной оттенок зеленого, чем
при выборе варианта просто [Зеленый].
Рабочие книги, рабочие листы и ячейки
1
27
Если вы хотите изменить цвет значений при соблюдении некоего условия, помес
тите условие в отдельную пару
квадратных скобок.
Например, формат
[Крас
ный] [<100]#0; [Синий] [>=100]#0 меняет цвет шрифта на красный для чисел меньше
и на синий для чисел больше или равных
100.
100
Аналогичным образом, формат [Крас
ный] [<100]#0; [Синий] [>1000]#0;#0 меняет цвет шрифта на красный для чисел меньше
100,
на синий для чисел больше
1ООО
и использует шрифт по умолчанию для всех
других чисел.
~
•
~
В пользовательском числовом формате допускается указать не более двух уело
вий. Более гибкий альтернативный способ представлен в разд.
1.9.
Вы также можете использовать пользовательские числовые форматы для форма
тирования даты
и
времени,
поскольку «под капотом» даты
в виде чисел (см. разд. «Обсуждение» в разд.
и
время
сохраняются
Форматирование различных
6. 7).
компонентов значений даты/времени организуется следующим образом:
♦
Годы.
Используйте гг для двузначного форматирования года и гггг -
для четырех
значного.
♦
Месяцы.
Используйте м для форматирования с помощью одной или двух цифр (от
1 до 12),
мм
для ото
для форматирования с помощью двух цифр
-
бражения краткого названия месяца
( от
(от
О 1 до
12),
Янв до Дек) и мммм -
ммм
-
для отображения
первых букв месяца ( от Я до Д).
♦
Дни.
Используйте д для форматирования с помощью одной или двух цифр (от
I
дд -
для ото
для форматирования с помощью двух цифр
( от
О 1 до
3 1),
бражения краткого названия дня недели ( от Пн до Вс) и дддд -
ддд -
до
3 1),
для отображения
полного названия (от Понедельник до Воскресенье).
♦
Часы.
Используйте ч для форматирования с помощью одной или двух цифр (от О до
23).
По умолчанию отображение часов основано на 24-часовом формате, так что для
отображения часов в 12-часовом формате вам понадобится вариант АМ/РМ.
♦
Минуты.
Используйте м для форматирования минут с помощью одной или двух цифр ( от О
до
♦
59)
и мм -
для отображения двух цифр (от
00
до
59).
Секунды.
Используйте с для форматирования секунд с помощью одной или двух цифр (от
О до
59)
и се
-
для отображения двух цифр (от
включить доли секунд, используя се, оо.
00
до
59).
Вы также можете
28
♦
Глава
1
Прошедшее время.
Отобразить прошедшее время можно, поместив соответствующий временной
компонент в квадратные скобки. Так, формат [ч] :мм показывает прошедшее вре
мя в часах и минутах, а формат [мм] : се отображает его в минутах и секундах .
На рис.
1.4
приведены примеры использования кодов форматов даты и времени.
/Jд ММММ ГТТТчч:мм:сс Д-МММ-ГТТТч:мм:ссАМ/РМ
01 Ноябрь 2023 16:45:30
Рис.
1-ноя-2023
1.4. Использование
fl/l/JД, ММ./Jд.ГТТТ
4:45:30 РМ
среда,
11.01.2023
пользовательских числовых форматов
для управления способом отображения даты и времени
Пояснение
В этом разделе описаны способы задания пользовательского числового формата,
что удобно, если ни один из стандартных форматов
Excel
(см. разд.
1.4)
не отобра
жает значения ячеек так, как вам бы хотелось .
Скрыть разделы пользовательского числового формата можно, используя точку
с запятой(;) - она поможет спрятать любые значения в этом разделе . Например,
формат о ; -о; ; @ прячет нули, а задание
1.6. Объединяем
;;;
вообще скроет все значения .
ячейки
Задача
Вы хотите создать более крупную ячейку, объединив несколько ячеек.
Решение
Предположим, вам требуется увеличить ячейку, разместив ее в нескольких строках
и/или столбцах . Сделать это можно, объединив ячейки следующим образом :
1.
Выберите ячейки, которые собираетесь объединить.
2.
В разделе Выравнивание
(Alignment)
Объединить и поместить в центре
(Home) выберите пункт
(Merge & Center) - чтобы объединить
вкладки Главная
ячейки в одну и центрировать ее содержимое. В качестве альтернативы в рас
крывающемся списке пункта Объединить и поместить в центре
Center)
выберите вариант Объединить ячейки
(Merge Cells) -
(Merge &
чтобы объеди
нить ячейки без центрирования их содержимого или вариант Объединить по
строкам
(Merge Across)- чтобы
объединить выбранные ячейки в строках.
Для отмены объединения в разделе Выравнивание (Alignment) вкладки Главная
(Home) откройте раскрывающийся список Объединить и поместить в центре
(Merge & Center) и выберите пункт Отменить объединение ячеек (Unmerge).
Рабочие книги, рабочие листы и ячейки
29
Пояснение
В этом разделе показано, как создать более крупную ячейку, занимающую несколь
ко строк и/или столбцов, что может пригодиться, если, к примеру, вам надо вста
вить текст или формулу, относящиеся к нескольким строкам. Также это удобно,
если вам нужно увеличить размер спарклайна (см. разд.
1.7. Создаем
13.10).
шаблоны
Задача
Вы хотите, чтобы у вас была возможность быстро создавать рабочую книгу, кото
рая использует заданную тему или содержит предварительно заполненные ячейки.
Решение
Предположим, вам надо, чтобы
Excel
автоматически применял заданную тему
к каждой новой создаваемой вами рабочей книге, а также чтобы новые рабочие
книги создавались уже с заданной компоновкой, форматированием и формулами.
В этих ситуациях рекомендуется использовать шаблон
-
частично заполненную
рабочую книгу в качестве отправной точки для создания других рабочих книг.
Прежде чем создавать шаблон, вы сначала должны установить или найти располо
жение папки с персональными шаблонами по умолчанию. Как вы это будете де
лать, зависит от того, используете ли вы Ехсе\ в
Если вы работаете в среде
1.
В
программе
(Options)
1
Excel
Windows
(рис.
выполните
Сохранение
Windows
или в
macOS.
1.5):
команду
меню
Файл
(File)
1
Параметры
(Save).
В настройка сохранения книг.
Общие
Формулы
Coxpмtettмe книr
Данные
Прааопис11ние
Сохранять файлы в ~щем формате
Сохранеt1ие
11 Автосохранеt1ие каждые
D
Я3ЫК
Сnецимьные 110,можностм
Дополнительно
1Книго Exc.i [•.xisx)
~ мин
Сохранять п~нюю 1атоматич«:ки восстаномеt1ную И:рсию при :sакрытии бв сохранеt1и.я
( C\Ustrs\Ммxaил Paйтмaн\AppData\Roamlng\Мlcrosoft\EXcel\
Катuоr ,,aHH!L,IX для allTOIIOCCТilHOSЛЬiMЯ:
П•нель быстрого АОСJУП&
fасnоложеt1ие локальных файлоа
no умолчанию:
1P\Usfrs\Мнxaмn Paйтмaн\Documr:nts
Расnопож~ие личных wабпоноа
no умолчанию:
i
О Показы11ать n~nрt!:ЖДение о потере данных при и:sмененим файло11 с рмделмтелями-яnятыми (• .csv)
Надстройки
Центр упр4а.nенмя бе:sопасностью
}icКIIIOчeНМJI ИToeo«Пtt08JlettМJI A)UI:
1С1книго1
•1
О Отключить автовосстаное.ле.ние только дn!! 3ТОЙ книги
1.5.
1
11 Не nоказыаать п~стааление Backstage при открытии и сохранеt1ии ,ф_аМов с помо~..цью сочfii!lний клавиш
11 Показать дополнительные ра3~щени.я дм сохранеt1ия, даже кли аход может §ыть обяятельным
О По умолчанию сохранять на .!Омnьюте~
Настроить ленту
Рис.
·i
Поле Расположение личных шаблонов по умолчанию в Windows-вepcии программы
находится в разделе Сохранение
1
Глава
30
2.
1
(Save Workbooks) поле Расположение личных
(Default personal templates location). Если поле пустое,
это обычно C:\Users\
местоположение самостоятельно, -
Найдите в разделе Сохранение
шаблонов по умолчанию
введите
в
него
<ИмяПользователя>\Dосumеnts, где <ИмяПользователя>
теля
3.
-
это ваше имя пользова
Windows.
или Отмена
Нажмите кнопку ОК, если вы внесли какие-либо изменения,
(Cancel),
если не вносили.
Если вы работаете в среде
macOS:
1
Параметры
(User templates) -
обычно это
1. В программе Word 1 выполните команду меню Файл (File)
(Preferences) Местоположение файлов (File Locations).
1
2.
Найдите запись в поле Шаблоны пользователя
/Usеrs/<ИмяПользоваmеля>/Библиотека/Контейнеры rpynnы/UBF8T346G9. Оffiсе/Содержимое
пользователя/Шаблоны,
где
<ИмяПользователя>
-
это
ваше
имя
пользователя
macOS.
3.
Закройте диалоговое окно Местоположение файлов
(File Locations).
Определив папку личных шаблонов по умолчанию, создавать шаблоны можно сле
дующим образом:
1.
Создайте рабочую книгу
Excel,
которая включает всё то, что вам надо иметь
в шаблоне. Например, применить в ней пользовательскую тему и предваритель
но заполнить некоторые ячейки формулами.
2.
(File) Сохранить как (Save As) - если вы
Windows, или команду меню Файл (File) Сохранить как
(Save As Template) - если вы используете Excel в macOS. Перейдите
Выполните команду меню Файл
1
работаете в среде
шаблон
1
в папку личных шаблонов по умолчанию и измените значение параметра Тип
файла
(Save As
Туре) на Шаблон
с поддержкой макросов
макросы (см. ?даву
3.
(Excel
Excel (Excel Template) или на Шаблон Excel
Template), если файл содержит
Macro-EnaЫed
18).
Нажмите кнопку Сохранить
(Save),
чтобы сохранить шаблон, после чего за
кройте файл.
Чтобы создать новую рабочую книгу на основе шаблона, выполните команду меню
Файл
(File)
1
Создать
(New)
и выберите свой шаблон в разделе Личные
(Personal).
Пояснение
Пользовательские шаблоны предлагают удобный способ для предварительного за
полнения ячеек в новой рабочей книге или для автоматического применения темы
по умолчанию. Они полезны в таких ситуациях, когда, к примеру, вы копируете
старую рабочую книгу и редактируете части, которые вам необходимо изменить.
1 Да.
именно Word. а не Excel.
Рабочие книги, рабочие листы и ячейки
1
31
В этом разделе описано создание шаблона рабочей книги. Чтобы создать шаблон
диаграммы, обратитесь к разд.
1.8. Защищаем
и ячейки Excel
12. 22.
файлы, рабочие книги, рабочие листы
Задача
Чтобы защитить свою рабочую книгу, вы должны знать, какие варианты для этого
доступны в Ехсе\.
Решение
Ехсе\ предлагает разнообразные функции, которые помогут вам защитить свою
работу от случайных изменений.
Чтобы добавить пароли,
которые определяют,
имеют ли
пользователи доступ
к файлу Ехсе\ только для чтения или могут его изменять, используйте защиту на
уровне файлов. Чтобы найти параметры такой защиты, откройте рабочую книгу и
выполните команду меню Файл
(File)
Workbook) в
(File) в Ехсе\
или используйте похожие команды в меню Файл
Ехсе\ для
для
Windows
macOS.
1
Сведения
(Info)
1
Защитить книгу
(Protect
Использование пароля для защиты своих файлов не дает гарантии 100%-ной
безопасности, особенно при работе в более старых версиях Excel. Будьте осто
рожны при обмене с кем-либо файлами и паролями и подумайте о том, чтобы хра• нить свои файлы в безопасном месте.
Чтобы контролировать действия пользователей внутри структуры рабочей книги
-
например, добавлять или удалять рабочие листы, используйте защиту на уровне
рабочей книги. Активировать этот параметр можно, выполнив на вкладке ленты
Ехсе\ команду Рецензирование
(Review)
1
Защита
(Protect)
1
Защитить книгу
(Protect Workbook).
Чтобы контролировать действия пользователей на рабочих листах, используйте за
щиту на уровне рабочего листа. Этот параметр активировать можно, выполнив на
вкладке ленты Ехсе\ команду Рецензирование
тить лист
(Protect Sheet)
(Review)
1
Защита
(Protect)
1
Защи
или щелкнув правой кнопкой мыши на вкладке рабочего
листа и выбрав в контекстном меню команду Защитить лист
Чтобы защитить ячейку, примените стиль ячейки (см. разд.
(Protect Sheet).
1.2)
или отформатируй
те в ней то, что необходимо защитить. У становить защиту на уровне ячейки можно,
открыв диалоговое окно Формат ячеек
параметры в разделе Защита
(Protect),
(Format Ce\ls)
(см. разд.
1.3)
и задействовав
дающие возможность защитить ячейку или
скрыть содержащиеся в ней формулы.
Скрыть строки, столбцы и рабочие листы можно, щелкнув на них правой кнопкой
мыши и выбрав пункт Скрыть (Hide) в открывшемся контекстном меню. В качестве
альтернативы выберите строки, столбцы или рабочие листы, которые вы хотите
скрыть,
(Format)
выполните команду меню Главная (Home) 1 Ячейки (Cells) 1 Формат
и выберите пункт Скрыть или отобразить (Hide & Unhide).
32
Глава
1
Пояснение
В этом разделе описано использование встроенных в
Excel
функций защиты, кото
рые можно применять, чтобы предотвратить случайное внесение изменений в вашу
работу другими пользователями.
1.9. Используем
условное форматирование
Задача
Вы хотите отформатировать одну или более ячеек по-разному в зависимости от их
содержимого.
Решение
Условное форматирование (рис.
1.6)
позволяет форматировать диапазон ячеек на
основании содержимого каждой ячейки. Использовать его можно, чтобы, к при
меру, найти большие, малые или промежуточные значения или выделить ячейки,
отвечающие определенному набору заданных вами правил.
Гисrограммы
Цветовые шналы
Наборы значнов
Последние
Первые10%
10%
Повторы
1
18
1
1
1
1
з
зе
з
3
з
з
5
5
s8
s8
5
5
5
5
5
5
Рис.
1.6.
5
5
Примеры использования условного форматирования
Чтобы применить условное форматирование, выделите диапазон ячеек, которые
вам надо отформатировать, выполните команду меню Главная (Ноте) 1 Стили
(Styles)
1
Условное форматирование
(Conditional Formatting)
и выберите один из
следующих параметров:
♦
Правила выделения ячеек
(Highlight Cells Rules).
Этот параметр позволяет применить формат (см. разд.
1.3)
к ячейкам, значения
которых находятся внутри того или иного числового диапазона, содержат опре
деленную текстовую строку, находятся в заданном диапазоне дат относительно
сегодняшней даты или содержат повторяющиеся или уникальные значения.
♦
Правила отбора первых и последних значений
(Top/Bottom Rules).
Это правило позволяет применить формат к первым или последним
ям, или к
пазона.
10%
IО
значени
значений, или к тем, что выше или ниже среднего значения диа
Рабочие книги, рабочие листы и ячейки
♦
Гистограммы
33
(Data Bars).
Этот параметр добавляет гистограммы, пропорциональные значению каждой
ячейки, чтобы помочь определить относительно большие, малые или средние
значения.
♦
Цветовые шкалы
(Color Scales).
Это правило добавляет к каждой ячейке затенение, пропорциональное значению
этой ячейки. Как и в случае с гистограммами, этот параметр помогает вам опре
делить относительно большие, малые или средние значения.
♦
Наборы значков
(Icon Sets).
Это правило добавляет значок к каждой ячейке на основании ее значения. Как и
в случае с
гистограммами
и
цветовыми
шкалами, этот параметр
помогает вам
определить относительно большие, малые или средние значения.
♦
Создать правило
(New Rule).
Этот параметр позволяет задавать свои собственные правила условного фор
матирования
и
7.5).
например, если формула оценивается как Истина (см. разд.
-
2.2
Допускается также задать новые правила, выбрав один из предыдущих
параметров и выбрав опцию Другие правила
(More Rules).
Меню вкладки Условное форматирование
жит параметр Удалить правила
(Conditional Forrnatting) также содер
(Clear Rules), который позволяет удалить условное
форматирование из выбранных ячеек, таблицы, сводной таблицы или рабочего лис
та, и параметр Управление правилами
(Manage Rules),
который открывает диало
говое окно Диспетчер правил условного форматирования
Rules Manager).
В этом диалоговом окне (рис.
1.7)
(Conditional Formatting
приводится обзор правил кон
кретных рабочих листов, таблиц или выделенных ячеек и предоставляется возмож
ность создавать новые правила условного форматирования, просматривать, редак
тировать, удалять и копировать любые существующие правила и указывать, к ка
ким ячейкам они применяются.
Правила в диспетчере располагаются в порядке приоритета, когда правило с наи
высшим приоритетом находится наверху, а правило с низшим приоритетом
-
вни-
х
Дисп~ч~р правил условного форматироаания
Qбыкт пра11ил форматирования:
лист: УU1овное фора.,ати
IИ} 5;;03Дать nрави110 ...
ПраеИJ10 (приа.,еняется
II ука:янноw
v
~ И.змtнить правило ...
nоряд~с;е)
Формат
)( Х.Далить npaaWJo
Ш) Правило поиска дУ6ликатоа
Останоаить, н1111 истина
Применяета~ к
ат
роsани
·tSAS1:SA$11
Повторяющиеся значен~,,
,. · Успоsное фор
ГистоrраJ.ша
• ' УU1оаное фор,,атироsание '! SАS1 : SАS11
Шuла цаетов
•
' Условное форматироsание · ! SАS1 : SАS.11
ок
Рис.
1.7.
Диспетчер правил условного форматирования
Отt.1ена
л
34
зу.
1
Глава
1
применяет правила в порядке приоритета, начиная с самого низкого пра
Excel
вила, поэтому если два правила конфликтуют (к примеру, они задают различные
цветовые шкалы к одним и тем же ячейкам), то
Excel
применяет правило с высшим
приоритетом, которое стоит выше в списке. Изменить приоритет правила можно,
выбрав его и нажав на расположенную рядом с ним стрелку, направленную вверх
или вниз.
Рядом с каждым правилом присутствует флажок Остановить, если истина
True ).
том, -
(Stop If
Он определяет, должны ли выполняться правила с более низким приорите
после установки флажка применение любых правил с более низким прио
ритетом к ячейкам, для которых отмеченное правило истинно, прекращается.
Пояснение
Условное форматирование предоставляет удобный способ визуализации числовых
данных и выделения ячеек, значения которых удовлетворяют определенным усло
виям. Вы можете либо использовать предустановленные правила
Excel,
либо соз
дать свои собственные.
Более
подробную
информацию
с формулами вы найдете в разд.
1.1 О.
по
использованию
условного
форматирования
2.2.
Применяем формат по образцу
Задача
Вы хотите быстро применить формат одной ячейки к другой или к диапазону ячеек.
Решение
Инструмент Формат по образцу
(Format Painter)
в
Excel
позволяет копировать
формат ячейки и применять его к другой ячейке или к диапазону ячеек. Для этого:
1.
Выберите ячейку, формат которой вам надо скопировать.
2.
В разделе Буфер обмена
(Ноте) нажмите кнопку
Формат по образцу
малярной кисти.
3.
4.
(Clipboard) вкладки Главная
(Format Painter)- с изображением
Выберите ячейки, к которым вам нужно применить формат.
Когда вы отпустите кнопку мыши,
Excel
применит к выбранным ячейкам фор-
мат исходной ячейки.
Чтобы применить выбранный формат в нескольких местах, выполните на кнопке
Формат по образцу
(Format Painter)
двойной щелчок мышью. Она будет оставать
ся активной, пока вы вновь не нажмете на нее или на клавишу
<Esc>.
''
Пояснение
В этом разделе предлагается быстрый и удобный способ копирования формата яче
ек в одно или более мест. Обратите внимание, что если вы хотите скопировать со-
Рабочие книги, рабочие листы и ячейки
держимое ячейки в дополнение к ее формату, решение из разд
1.11
35
окажется более
эффективным.
1.11. Используем
специальную вставку
Задача
Вы хотите копировать и вставлять содержимое и/или атрибуты одной ячейки или
диапазона ячеек или использовать их для выполнения арифметических операций
с другим диапазоном.
Решение
Инструмент
Excel
Специальная вставка
позволяет копировать
(Paste Special)
ячейку или диапазон ячеек и выбирать, какое содержимое или атрибуты (такие как
значения, вычисляемые по формуле, или выбранное форматирование) вставить
в другое место. Вы также можете применять этот инструмент для перемещения
строк и столбцов, добавления скопированных значений к другому набору значений
или для вычитания, умножения или деления на них.
Чтобы использовать инструмент Специальная вставка
1.
Выберите ячейки, которые вам надо скопировать.
2.
Скопируйте их, нажав комбинацию клавиш
меню Главная
(Home)
1
Буфер обмена
(Paste Special):
<Ctrl>+<C> или выполнив команду
(Clipboard) 1 Копировать (Сору).
3.
Выделите первую ячейку области, в которую нужно вставить значения.
4.
В разделе Буфер обмена
кнопки Вставить
Special),
(Paste)
(Clipboard)
вкладки Главная
(Home)
открывающий диалоговое окно Специальная вставка
(Paste
(Paste Special).
х
?
Специальная 11ставка
Вставить
@ f8ё$1
о с ИQ!ОДНОЙ теr.,ой
О Jl!ормулы
О борам~и
О 1начения
о J!!ИРИНЫ столбцов
О форr.tа!Ы
О формуаы и форматы чисел
О J,;оr.,ментарии
О 3Начени.!! и форматы чисел
О ]!словия на 3начения
все условные форматы 063~единен,1я
Операция
@ отgтспsует
0
о сложить
О .11.щелить
У.МНОЖИТЬ
О ВJ!!честь
О пропускать пустые ячейки
Вставить СВЯ3.!!
Рис.
откройте меню
и выберите в нем пункт Специальная вставка
1.8. Диалоговое
О тр1нспонировать
ок
Отмена
окно инструмента Специальная вставка
36
5.
Глава
1
Выберите в этом окне (рис.
параметры, которые собираетесь использовать,
1.8)
и нажмите кнопку ОК.
Пояснение
Инструмент Специальная вставка
(Paste Special)
предлагает удобный способ ко
пирования одной или более ячеек, вставки их содержимого и/или атрибутов в дру
гое место и перемещения ячеек. Обратите внимание, что если вам нужно копиро
вать только формат ячейки, решение из разд.
1.1 О
может оказаться более эффек
тивным.
1.12. Используем
автозаполнение
Задача
Вы хотите заполнить ячейки данными, которые представляют собой последова
тельность или связаны какой-либо закономерностью.
Решение
Предположим, вам надо заполнить диапазон ячеек последовательностью значе
ний например,
2024-ro. Сделать
Fil\).
это можно с помощью инструмента
числами от
1 до I О
или днями недели с
Автозаполнение
(Auto Fill)
8 апреля 2024-ro по 6 мая
Excel Автозаполнение (Auto
позволяет быстро заполнить ячейки на основании со
держимого других ячеек. Используйте его, к примеру, для заполнения последова
тельности,
которая
увеличивается
регулярными
шагами,
для
копирования
повто
ряющейся закономерности, завершения тенденции роста или копирования форму
лы в диапазон ячеек. Обычно Автозаполнение
(Auto Fill)
применяют следующим
образом:
1.
Введите одно-два значения в первые ячейки диапазона, который собираетесь за
полнить. Например, чтобы заполнить диапазон А 1:А I О числами от
1 до 1О,
вам
надо ввести 1 в ячейку А 1 и 2 в ячейку А2.
2.
Выберите ячейки, в которые вы только что ввели значения, и перетащите квад
ратный маркер автозаполнения, находящийся в правом нижнем углу ячейки, на
ячейки, которые вам надо заполнить. Когда вы отпустите кнопку мыши,
Excel
заполнит ячейки.
Если инструмент Автозаполнение
для
Windows
(Auto Fill)
не работает, активировать его в
можно, выполнив команду меню Файл
Excel
(File) 1 Параметры (Options) 1
Дополнительно (Advanced) и установив флажок Разрешить маркеры заполне
ния и перетаскивания ячеек (ЕnаЫе fill) в разделе Параметры правки (Editing
В Excel для macOS вы найдете эту опцию, выполнив команду меню
Параметры (Preferences) 1 Правка (Edit).
options).
Настроить вывод инструмента Автозаполнение
Excel
1
(Auto Fill) можно, нажав кнопку
(Auto Fill Options), кото-
раскрывающегося списка Параметры автозаполнения
Рабочие книги, рабочие листы и ячейки
рую
Excel
отображает рядом с заполненными ячейками (рис.
1.9),
37
и выбрав один из
параметров в этом меню. Таким образом, вместо заполнения ячеек в определенной
последовательности вам предоставится возможность скопировать исходные ячейки,
чтобы создать повторяющуюся закономерность, копировать только форматирова
ние ячейки, завершить последовательность, не включая никакого форматирования,
или использовать Мгновенное заполнение
(Flash Fill)
(см.разд.
1.14).
Если ячейки
содержат даты, можно также заполнить последовательность, используя дни, рабо
чие дни, месяцы или годы (рис.
9-май-2025
1.9).
10-май-2025 11-май-2025~11_2_-м_а_й_-2_0_25_ _13_-м_а_й_-2_025_1~-
!,3
О
•
Рис.
1.9.
Коnирова·rь ячейки
Заполнн_ть
о
Заполн"пь толь-ко форматы
о
Заполнить только зна~ени.я
о
Запопнить по днв.м
о
Заполнить по раQочим дням
о
Заполнить по м~сяцам
о
Заполнить по ro,Qaм
Меню Параметры автозаполнения
Если кнопка Параметры автозаполнения
(Auto Fill Options) не отображается, ак
Excel для Windows можно, выполнив команду меню Файл (File) 1
Параметры (Options) 1 Дополнительно (Advanced) и установив флажок Отобра
жать кнопку параметров вставки при вставке содержимого (Show Paste
Options) в разделе Вырезание, копирование и вставка (Cut, сору, and paste).
В Excel для macOS вы найдете эту опцию, выполнив команду меню Excel I Пара
метры (Preferences) 1 Правка (Edit).
тивировать ее в
Если рядом со столбцом или строкой, которые вам необходимо заполнить, есть
значения, можно на шаге
2
выполнить на маркере автозаполнения двойной щелчок
вместо того, чтобы перетаскивать его, и
Excel
вычислит, сколько ячеек ему необхо
димо заполнить. Это удобно, если, к примеру, вам необходимо заполнить обшир
ный диапазон последовательными значениями.
Если вам надо заполнить ячейки линейно или тенденцией роста или внести допол
нительные настройки в заполнение последовательности, то сможете сделать это,
щелкнув на шаге
2
правой кнопкой мыши на маркере автозаполнения и перетащив
его, вместо того, чтобы выполнять на нем двойной щелчок. Это действие откроет
меню, содержащее дополнительные параметры: Линейное приближение
Экспоненциальное приближение
раметра Прогрессия
Прогрессия
(Series),
(Series)
(Growth),
(Linear),
(Series). При выборе па
рис. 1.1 О диалоговое окно
Прогрессия
откроется показанное на
возможности которого можно использовать для более точной
настройки способа заполнения ячеек.
38
Глава
1
11
2.
2.
3
4
4
б
3
б
9
8
12.
х
?
Прогрr:сс.ия
Един~цы
Расположение
Тип
О по qрок•м
@ •Р11Фмотичес•••
@ по сто4бц•м
О rеометр~ческаА
ра6очий день
О датl,!
loll!(IЩ
О арояпо11нение
rод
•
день
1
О Автоматическое: определение шага
W•r: ~.
~ Предельное }начени~
1
Рис.
1.10. Диалоговое
ок
Отмена
1
окно Прогрессия
Пояснение
В этом разделе представлен обзор многих функций автоматического заполнения,
включая и менее известные.
Автоматическое заполнение является одним из наиболее гибких инструментов
Ехсе\, предоставляющих удобные возможности для копирования значений, формул,
атрибутов и для продолжения последовательностей. Его также можно использовать
для заполнения ячеек из пользовательского списка (см.разд.
1.13. Используем
1.13).
пользовательские списки
Задача
Вы хотите создать пользовательский список текстовых значений для заполнения
ячеек с помощью инструмента Автозаполнение
(Auto Fill)
или использовать спи
сок для сортировки значений .
Решение
Предположим, вам часто приходится заполнять диапазон ячеек списком текстовых
значений
-
например, значениями Север, Юг, Запад, Восток,
и вы хотите полу
-
чить возможность делать это с помощью функции Автозаполнение
(Auto Fill).
Кроме того, вам также нужно иметь возможность сортировать эти значения в опре
деленном порядке.
Всего этого можно достичь, определив пользовательский список
-
упорядоченный
набор текстовых значений, сохраненный на вашем компьютере. Для определения
пользовательского списка (рис.
1.11 ):
Рабочие книги, рабочие листы и ячейки
39
х
Списки
Списки
2.ntменты сnиск11:
Сnиски:
С•••Р
8
1:11 ••
Пн, Вт, Ср, Чт, Пт, С6 , В<
яна, фее, мар,
anp,
дS!6оsить
Юг
Понtде11ьник. Вторник, Срt,д4, Четверг, Пятни41,
•
май, и~он, ИIО/1, авг, сtн., акт, н •
Восток
УАаtlИТЬ
Зоnод
ян"рь, Фt1ра11ь, Морт, Апрель, Мой, Июнь, Июль,
д,!я р13Дt11ения ,лементоа списка ню10,,ите клавишу ВВОД.
ИJ!!nорт сnиск• и, яч,, к:
~
ш
9:SMS1 1
J1мnорт
От1.tена
ОК
Рис.
1.
Если вы работаете в среде
раметры
(Options)
1
1.11. Диалоговое
Windows,
(Advanced) и в разделе
(Edit Custom Lists), чтобы
(File) 1 Па
(Genera\)
Общие
открыть диалого
macOS, выберите
Списки (Custom Lists).
Если вы используете Ехсе\ в
вое окно Списки
2.
выполните команду меню Файл
Дополнительно
нажмите кнопку Изменить списки
в
окно Списки
(Custom Lists).
разделе Параметры (Preferences)
меню
Excel
параметр
В разделе Списки (Custom Lists) открывшегося диалогового окна Списки
(Custom Lists) выберите пункт НОВЫЙ СПИСОК (NEW LIST), щелкните
мышью в поле Элементы списка (List Entries) и введите последовательности,
которые вам надо видеть в списке, используя клавишу <Enter> для разделения
вводимых данных. Так, чтобы определить пользовательский список, содержа
щий , к примеру, значения Север, Юг, Запад и Восток, вам следует ввести север
в поле Элементы списка
(List Entries),
нажать клавишу
<Enter>,
затем ввести юг
ит.д .
3.
Закончив вводить все значения, нажмите кнопку Добавить
(Add),
чтобы доба-
вить список в вашу систему, и кнопку ОК, чтобы закрыть диалоговое окно .
Определить пользовательский список также можно,
диапазона ячеек . Вместо того чтобы на шаге
2 вводить
импортировав значения из
значения в поле Элементы
списка
добавьте диапазон ячеек в поле Импорт списка из
ячеек
диалогового окна Списки
кнопку
(List Entries), просто
(lmport list from cells)
Импорт (lmport).
(Custom Lists)
и нажмите
Создав пользовательский список, вы сможете использовать его для заполнения яче
ек с помощью инструмента Автозаполнение
(Auto Fill).
Так, если вы определили
пользовательский список, содержащий значения Север, Юг, Запад и Восток, то,
к примеру, можете этими значениями заполнить диапазон А 1:А4,
введя север
в ячейку А 1 и юг в ячейку А2, а затем применив инструмент Автозаполнение
Fill) для
заполнения ячеек АЗ и А4 значениями Восток и Запад (см.разд.
1.12).
(Auto
40
Глава
1
Если вам надо изменить созданный вами пользовательский список, выберите его
в диалоговом окне Списки
(Custom Lists) и отредактируйте содержащиеся в нем
(Delete) для его удаления. Имейте в виду,
редактировать или удалять встроенные в Ехсе\ списки такие
значения или нажмите кнопку Удалить
что вы не можете
как дни недели или месяцы года.
Пояснение
Пользовательские списки могут быть полезны, если вы собираетесь регулярно ис
пользовать Автозаполнение
(Auto Fill)
для заполнения диапазона ячеек одним и
тем же списком текстовых значений. Вы также можете применять их для сортиров
ки данных в определенном порядке.
1.14. Используем
мгновенное заполнение
Задача
Вам необходимо извлечь или связать данные, и вы хотите, чтобы Ехсе\ заполнил
оставшиеся ячейки, когда выявит закономерность.
Решение
Предположим, что в ячейках А2:А I О приведены имена и фамилии покупателей
и вам надо извлечь имена покупателей в ячейки В2:В I О (рис.
Сделать это
можно, применив инструмент Мгновенное заполнение
он анализи
1.12).
(Flash Fill) -
рует вводимые вами данные и использует распознавание имеющейся между ними
закономерности, чтобы заполнить оставшиеся ячейки.
А
1
Полное имя
2
\ Аня Панкова
3
4
Рита Смирнова
Женя Смирнов
6
Мария Захарова
Дина Евстигнеева
8
Аня Панкова
10
Е
Аня
7
9
D
Имя и фамилия
!клара
клара Осипова
5
с
в
Имя
КЛара Осипова
Мария Захарова
11 1
12
Рис.
1.12.
Имена покупателей и предварительный просмотр инструмента Мгновенное заполнение
Чтобы применить Мгновенное заполнение
(Flash Fill),
вы сначала вводите не
сколько примеров желаемых результатов в столбце рядом с данными. Если вы ра
ботаете в среде
Windows,
Ехсе\, определив закономерность, автоматически запус
тит Мгновенное заполнение
(Flash Fill)
и предварительно покажет вам данные,
Рабочие книги, рабочие листы и ячейки
41
которые собирается заполнить. Так, если вы введете, к примеру, имена покупателей
в ячейки В2 и В3, Ехсе\ быстро распознает, что происходит, и запустит Мгновен
ное заполнение
(Flash Fill),
согласиться, нажав клавишу
как показано на рис.
1.12.
С его решением вы можете
<Enter>.
Если вы используете
Excel
в
Windows
и Мгновенное заполнение
(Flash Fill)
не
началось автоматически, то вам может потребоваться активировать его, выполнив
команду меню Файл
флажок
(File)
установив
(Automatically Flash Fill)
Если вы используете Ехсе\ в
(Flash Fill)
1 Параметры
Автоматически
(Options)
1 Дополнительно
выполнять
в разделе Параметры правки
macOS
мгновенное
(Advanced)
и
заполнение
(Editing options).
или хотите запустить Мгновенное заполнение
вручную, введите несколько примеров желаемых результатов, а затем
в разделе Работа с данными
Мгновенное заполнение
Fill)
из меню Параметры
(Data Tools) вкладки Данные (Data) выберите пункт
(Flash Fill) или выберите Мгновенное заполнение (Flash
автозаполнения (Auto Fill Options) (см. разд. 1.12).
Как только вы примете предложение инструмента Мгновенное заполнение
Fill), Excel
(Flash
отобразит рядом с заполненными ячейками кнопку Параметры мгно
венного заполнения
(Flash Fill Options).
По нажатию на эту кнопку
меню, которое позволит вам отменить Мгновенное заполнение
Excel выведет
(Flash Fill), при
нять предложения, выбрать любые пустые ячейки или выбрать ячейки, которые
заполнил инструмент Мгновенное заполнение
А
-
в
1 ! Полное имя
2 Аня Панкова
(Flash Fill) (рис. 1.13).
с
D
Е
F_
И мя
Аня
3
Клара Осипова
КЛара
4
Рита Смирнова
Р ита
5
Женя Сми .,, Qтменить мгнсвенное заполнение
б Мария За) ./ 0р'1нять предложения
7
дина Евст1
8 IАня Пан ке
9 Клара оси
10
Выделить осе 8 !:!ЗМененные ячейки
Мария За)
11
12
Рис.
1.13.
Меню Параметры мгновенного заполнения
Если вам надо извлечь числовые коды - например, номера телефонов или индек
сы, то можно сделать так, чтобы инструмент Мгновенное заполнение (Flash Fill)
включал любые начальные нули и числовые символы, добавив перед вводимым
вами текстом апостроф. Апостроф указывает Excel воспринимать коды как текст.
Таким образом, ввод '+44 интерпретируется как текст
интерпретируется как положительное число
44
+44,
в то время как ввод +44
без начального знака «плюс».
Пояснение
Мгновенное заполнение предлагает быстрое и простое решение, когда вам нужно
извлечь или связать данные. Обратите внимание, что данные, заполненные с ис-
42
Глава
1
пользованием инструмента Мгновенное заполнение
не обновляются
(Flash Fill),
динамически, поэтому, если исходные данные изменяются, вам придется обновить
заполненный текст или задействовать вновь Мгновенное заполнение
В качестве альтернативы применяйте наборы команд из главы
5,
(Flash Fill).
позволяющие соз
давать более динамичные, основанные на формуле решения.
Если одна или более ячеек рабочего листа содержат текст с разделителем (на
пример, запятой), можно разбить его на столбцы, используя инструмент Текст по
столбцам
(Text to Columns).
Чтобы получить к нему доступ, выделите ячейки, ко
торые требуется разделить, и в разделе Работа с данными (Data Tools) вкладки
Данные (Data) выберите пункт Текст по столбцам (Text to Columns).
1.15. Настраиваем
автозамену
Задача
Вы хотите, чтобы
автоматически заменял аббревиатуры или неправильно
Excel
вводимый текст на полный текст, правильный или более длинные фразы или сим
волы.
Решение
Предположим, что каждый раз, когда вы вводите в ячейку какой-либо короткий
текст, вам нужно, чтобы
Excel
заменял его на более длинный. Добиться этого
можно, добавив соответствующий текст в параметры инструмента Автозамена
(AutoCorrect) (рис. 1.14):
?
Авто3амена: русский
х
Авто3аМеНа математичесю<ми символами
Аето3амена
Действия
Аетоформат при еводе
О П,окаэать кнопки воз.можностей автозамены
0
0
0
0
0
Исправлять~ ПРописны, буквы в начале ело"
ИСКЛ!!,ЧfНИЯ ...
Писать назван и.я дн~й с прописной букsы
Устранять последствия слу!;!айноrо н. ажатия cAPS LOCK
Замен. ять п11.и вводе
t1a:
3gменять:
1
1
Делать п,рвы, буквы пр,дложений прописными
. ]! Часто 1адаваемые вопросы
ЧаВо
фуекция
.....1
функция
хоорший
хороший
хооршо
хорошо
хотеьт
хотпь
чеолвек
человек
"
.,
!l,lобавить !
ОК
Рис.
1.14. Диалоговое
окно Автозамена
Отмена
i
Рабочие книги, рабочие листы и ячейки
1.
1
43
Windows, выполните команду меню Файл (File) 1 Па
(Options) 1 Правописание (Proofing) и нажмите кнопку Параметры
автозамены (AutoCorrect Options), чтобы открыть диалоговое окно Автозамена
(AutoCorrect). Если вы используете Excel в macOS, выберите в разделе Пара
метры (Preferences) меню Excel параметр Автозамена (AutoCorrect).
Если вы работаете в среде
раметры
2.
Введите короткий текст и текст, которым вы решили его заменить, в поля заме
нять
3.
(Replace)
и на
и нажмите кнопку Добавить
(With)
(Add).
Обновите в этом окне все нужные вам параметры и нажмите кнопку ОК, чтобы
закрыть диалоговое окно.
Если вам нужно заменить какой-либо текст тем или иным символом, на вкладке
Вставка (lnsert) нажмите кнопку Символы (Symbols), в открывшейся панели Сим
волы
(Symbols)
найдите символ, который собираетесь использовать, скопируйте
<Ctrl>+<C>, и встаете его в поле на (With) диалого
(AutoCorrect), нажав комбинацию клавиш <Ctrl>+<V>.
его, нажав комбинацию клавиш
вого окна Автозамена
Пояснение
В этом разделе представлен удобный и экономящий время способ ввода одной и
той же фразы или символа множество раз.
1.16. Используем
заметки и примечания
Задача
Вы хотите аннотировать ячейку заметкой или добавить примечания, на которые
другие могут ответить.
Решение
Если вы используете
чаний и заметок (рис.
Excel 365,
1.15).
то можете аннотировать ячейки с помощью приме
с
в
А
Е
D
• Михаил
1 _ _-t·•~:i:J
'--
1
2
User:
4
27
3аNетка к ячейке
~оµбря
Al
5
1
б
Ответ
о
8
9
Рис.
1.15.
Заметки и примечания
н
G
Райтман
А это примечание к яче~;iке
з
7
F
2024 r. в 16:00
D1
D1
44
Глава
1
1~
Примечание -
i
время как заметка
!
До
Excel 365
это цепь аннотаций, которая включает поле Ответ (Reply), в то
- это просто аннотация без поля Ответ (Reply).
программа
Excel включала только примечания без заметок. ПримечаExcel работают аналогично заметкам в Excel 365.
ния в предыдущих версиях
Чтобы добавить к ячейке примечание, выделите эту ячейку и в разделе Примеча
ния
(Comments) вкладки Рецензирование (Review) нажмите кнопку Создать при
(New Comment). Можно также щелкнуть правой кнопкой мыши на ячейке
и выбрать в контекстном меню пункт Создать примечание (New Comment). Затем
введите примечание в поле Ответ (Reply) или Начать беседу (Start а Conversation)
и опубликуйте его, при наведении указателя мыши на ячейку Excel это примеча
мечание
ние отобразит. Просматривать все примечания и управлять ими в рабочей книге
можно в панели Примечания
зирование
(Review)
1
(Comments), которая открывается по команде Рецен
(Comments) 1 Показать примечания (Show
Примечания
Comments).
Чтобы добавить к ячейке заметку, выделите эту ячейку и разделе Заметки
вкладки Рецензирование
(Review)
выберите пункт Создать заметку
(Notes)
(New Note).
Можно также щелкнуть правой кнопкой мыши на ячейке и выбрать в контекстном
меню пункт Создать заметку
(New Note ). Затем
Excel отображает
появиться в заметке. Программа
введите текст, который должен
заметку, когда вы наводите ука
затель мыши на ячейку, выделяете ячейку и в разделе Заметки
Рецензирование
(Show/Hide Note)
(Review)
нажимаете
кнопку Показать
(Notes)
вкладки
или скрыть заметку
или щелкаете правой кнопкой мыши на ячейке и выбираете в рас
крывающемся списке Показать или скрыть заметку
(Show/Hide Note ). Открыть
(Notes) вкладки Рецензирование
(Review) кнопку Показать все заметки (Show All Notes), а преобразовать заметки
в примечания нажав в разделе Заметки (Notes) вкладки Рецензирование
(Review) кнопку Преобразовать в примечания (Convert to Comments).
все заметки можно, нажав в разделе Заметки
Если вы работаете в среде
Windows,
то можете прекратить отображение заметок и
примечаний при наведении указателя мыши на ячейку, выполнив команду меню
Файл (File) 1 Параметры (Options) 1 Дополнительно (Advanced) и обновив пара
метр Для ячеек с примечаниями (For cells with comments) в разделе Отображе
ние (Display). В Excel для macOS вы найдете эту опцию,
Excel I Параметры (Preferences) 1 Отображение (View).
выполнив команду меню
Пояснение
Заметки и примечания удобны для аннотирования ячеек напоминаниями или для
включения обсуждений. В более старых версиях
Excel
примечания не являлись
цепочкой и работали как заметки.
Дополнение
Вы также можете использовать проверку данных для добавления в ячейки входя
щих сообщений (см. разд.
2.8).
Рабочие книги, рабочие листы и ячейки
1.17. Находим
1
45
и выделяем ячейки
и перемещаемся по ним
Задача
Вы хотите быстро найти и выделить ячейки с конкретным содержимым или атри
бутами, такими как формулы, заметки или условное форматирование.
Решение
Предположим, вам надо найти и заменить значение в какой-либо ячейке рабочего
листа, перейти к определенной ячейке или диапазону ячеек или найти и выбрать
ячейки с условным форматированием. Сделать это можно с помощью инструмента
Найти и выделить
(Find & Select).
Чтобы получить к нему доступ, выполните команду меню Главная (Ноте)
дактирование
(Editing)
1
Найти и вьщелить
(Find & Se\ect).
1
Ре
Меню инструмента
включает следующие параметры:
♦
Найти и вьщелить
(Find & Se\ect).
Эти параметры позволяют вам искать значение и при желании заменить его. Вы
также можете выnолнять поиск групповых символов, используя в качестве под
становочных знаков символы
?
и
*,
где
? -
это замена одного символа, а
*-
замена любого числа символов. Например, ввод м?т найдет текст мот и мат, в то
время как ввод м*т также найдет и текст март. Если вам надо найти текст, кото
рый включает вопросительный знак или звездочку, то можете сделать это, по
ставив перед ними символ
♦
Перейти
(Go
-.
То)
Этот параметр позволяет перейти к определенной ячейке или ссылке на диапа
зон (например,
(Name),
♦
Z\000).
Вы также можете сделать это, введя ссылку в поле Имя
которое находится слева от строки формул Ехсе\.
Выделить группу ячеек
(Go
То
Special).
Этот параметр откроет диалоговое окно Выделить
Special),
(Go
То
которое позволит вам быстро найти и выбрать ячейки с определенным
содержимым
или
с ошибками (рис.
♦
группу ячеек
атрибутами
-
например,
пустые
ячейки
или
формулы
1.16).
Формулы
(Formulas), Примечания (Notes), Условное форматирование (Conditional Formatting), Константы (Constants), Проверка данных (Data Validation).
Используйте эти параметры для поиска и выбора ячеек с определенным содер
жимым и атрибутами.
♦
Выбор объектов
(Select Objects),
Область вьщеления
(Selection
Рапе).
Эти параметры облегчат вам выбор и управление любыми объектами на вашем
рабочем листе, такими как диаграммы и фигуры.
46
Глава
1
в~,д~ить
rpynny ячеек
х
?
Выделить
@ [nр·й·•1tча·~·и!1
О отличия
О ьонстанты
О отличия
0 .Ф.ор~tулы
О J!ЛИяющие ячейки
..,
no ст.11.окам
no столб.1,1а~1
о ~sисимые ячейки
числа
текст
только неnосредстsенно
✓ ЛОГИЧtСКИt
на
scex уровнях
о ПОСЛ_f;\НЮЮ ячейку
ошибки
О пустые ячеВки
О только sидимJ!!е ячейки
О текущую 2.бласть
О услов1:1ые форматы
О текущий _массиs
О nроверка данных
О о.§ъекты
SCeX
)ТИХ Же
ОК
Рис.
1.16. Диалоговое
Отмена
окно Вь1делить группу ячеек
Вы также можете перемещаться по ячейкам и выделять их с помощью комбинаций
клавиш. Далее приведены некоторые наиболее полезные из них:
♦
<Ctrl>+<Page Up>, <Ctrl>+<Page Down>.
Эти комбинации клавиш позволяют перейти к предыдущему или следующему
рабочему листу.
♦
<Shift>+щeлчoк.
Эта комбинация клавиш позволяет выбрать смежный диапазон ячеек: шелкните
на первой ячейке, нажмите клавишу
<Shift>
и, удерживая ее нажатой, щелкните
на последней.
♦
<Shift>+клавиши стрелок.
Эта комбинация клавиш позволяет выбрать смежные строки или столбцы: выде
лите первую ячейку, нажмите клавишу
<Shift>
и, удерживая ее нажатой, исполь
зуйте клавиши стрелок, чтобы выделить смежные ячейки.
♦
<Ctrl>+
щелчок или
<Cmd>+
щелчок.
Эти комбинации клавиш позволяют вам выбрать несмежные ячейки: щелкните на
первой ячейке, нажмите клавишу
клавишу
<Cmd>
<Ctrl>
(если вы работаете в среде
(если вы используете Ехсе\ в
macOS)
Windows)
или
и, удерживая ее нажатой,
щелкайте на каждой ячейке, которую собираетесь добавить в выборку.
♦
<Ctrl>+<A>.
С помощью этой комбинации клавиш вы выберете все ячейки диапазона, табли
цы, сводной таблицы или рабочего листа.
♦
<Ctrl>+<Shift>+клaвиши стрелок.
Эта комбинация клавиш позволит вам выбрать все ячейки в строке или столбце
диапазона, таблицы, в сводной таблице или на рабочем листе. Так, например,
<Ctrl>+<Shift>+<t>
выбирает ячейки в столбце.
Рабочие книги, рабочие листы и ячейки
1
47
Пояснение
Перемещение по электронным таблицам и поиск ячеек с определенными характе
ристиками может быть затратным по времени. Материал этого раздела поможет
вам работать более эффективно, используя параметры меню Найти и выделить
(Find & Select)
и комбинации клавиш.
Для перехода в определенные места вашей рабочей книги или куда-либо еще вы
также можете использовать гиперссылки. Чтобы вставить такую ссылку, щелкните
правой кнопкой мыши на ячейке, которую решили оснастить гиперссылкой, и выбе
рите в контекстном меню команду Ссылка (Link) или в разделе Ссылки (Links)
вкладки Вставка (lnsert) нажмите кнопку Ссылка (Link).
1.18. Создаем
представление
Задача
Вы хотите сохранить определенные параметры отображения или печати, такие как
скрытые строки и столбцы, фильтры или ширина полей, чтобы в случае необходи
мости быстро применить их на рабочем листе.
Решение
Если ваша рабочая книга не содержит таблицу, сохранить настройки можно в пред
ставлении
-
наборе настроек, применяемых к рабочему листу.
Чтобы создать представление:
1.
Перейдите на рабочий лист, для которого вы собираетесь создать представление,
и измените настройки отображения и печати, которые вам желательно сохранить
в меню Разметка страницы
(Page Layout).
Чтобы открыть диалоговое окно, де
монстрирующее полный набор параметров какой-либо группы ленты, щелкните
на значке меню [Si для этой группы.
2.
В разделе Режимы просмотра книги
нажмите кнопку Представления
3.
(Workbook Views)
(Custom Views).
вкладки Вид
(View)
Нажмите в открывшемся диалоговом окне Представления кнопку Добавить
(Add),
чтобы открыть диалоговое окно Добавление представления
(Add View),
введите имя для представления, выберите, какие параметры вам надо включить,
и нажмите кнопку ОК, чтобы сохранить представление (рис.
1. 17).
Чтобы переключиться на представление, перейдите в рабочий лист, для которого
вы создали представление, и в разделе Режимы просмотра книги
Views)
вкладки Вид
(View)
нажмите кнопку Представления
(Workbook
(Custom Views). Вы
берите представление, которое хотите отобразить, и нажмите кнопку Применить
(Apply).
•
Программа
Excel
отключает параметр Представления
(Custom Views),
если ваша
рабочая книга содержит таблицы, поэтому, если вы добавляете таблицу в рабочую
книгу, содержащую представления, вы больше не сможете их отображать.
48
Глава
1
J1мя ;
х
?
Добавление пре,цставления
Мое представление
Включить в представлен~,е
0
параметры печати
ь2] скрмтые строки, столбцы и параметры фильтра
ОК
Рис.
1.17.
Отмена
Диалоговое окно Добавление представления
Пояснение
Представления являются удобным способом сохранения конкретных настроек ото
бражения или печати, дающим возможность их быстро применить в случае необхо
димости. Сохранять представления можно со специальными фильтрами или с уста
новками, которые требуется применить перед началом печати рабочего листа.
1.19. Настраиваем
ленту и ее вкладки
Задача
Вы хотите настроить вкладки и команды, отображаемые на ленте
Excel.
Решение
Настройку ленты
Excel удобнее всего производить, используя диалоговое окно На
(Customize Ribbon). Если вы работаете в среде Windows, открыть
его можно, выполнив команду меню Файл (File) Параметры (Options) Настрой
ка ленты (Customize Ribbon) или щелкнув правой кнопкой мыши на ленте и вы
брав в раскрывающемся списке Настройка ленты (Customize Ribbon). Если вы ис
пользуете Excel в macOS, откройте это диалоговое окно, выбрав в разделе Пара
метры (Preferences) меню Excel параметр Лента и панель (Ribbon & Toolbar).
стройка ленты
1
По умолчанию в диалоговом окне Настройка ленты
1
(Customize Ribbon) Excel по
1.18).
казывает список самых популярных команд и основные вкладки ленты (рис.
Однако можно изменить эти параметры, чтобы добавить на ленту вкладки и коман
ды, не включенные в списки по умолчанию, или убрать из нее команды и вкладки,
которые вам по условиям вашей работы окажутся не нужны.
Пояснение
Настройка ленты
Excel
полнительные вкладки
чрезвычайно важна, если вы собираетесь использовать до
-
такие, например, как вкладка Разработчик
(Developer),
которая не активна по умолчанию. Вы также можете настроить отображаемые на
ленте команды или сбросить настройки ленты, чтобы удалить любые настройки,
которые вам больше не нужны.
Рабочие книги, рабочие листы и ячейки
49
~ Настройка ленты
Настроить ленту: 'I
!!ыбрать команды: CD
1 Часто
!
- vj
исполЬ3уемые команды
1 Основные
...
Быстрая печать
Основные вкмдки
>аудаление фона
Вставить
>а главная
>&!3 Вставка
>:J Рисование
>&!3 Рыметка страницы
1>
Вставить
,~ Встааить столбцы на лист
J
1 s,+-Встаа1пь строки на лист
1§§ Вставить таблицу
/х Вставить функцию ...
>&!3Формулы
>&!3Данные
>&!3 Рецензирование
:~Вставить ячейки ...
v&!3 Вид
д Вырезать
>Режимы просмотра книги
>Отображение
~ Выровнять по центру
1>
·t"! Границы
([\диспетчер имен
У Добавить или удалить фильт...
~Задать
> Масштаб
> Окно
> Макросы
>О Рыработчик
>
~Закрепить области
[шко пировать
[) Макросы
&!3 Надстройки
>&!3Справка
х· Надстрочный
> O Acrobat
/±!JНастраиваемая сортировка ...
ft1Обновить все
~Объ~инить и поместить в це. ..
•Ьс Орфография ...
=--
V
----
Все типы диаграмм ... [Создат...
Вставить рисунок
L
вкладки
1
~оздать вкладку
Настройки:
•
·-·
--11
Создать rpynny
]
1
Переименовать ...
-µ"·
1 С_орос
v
'·
Импорт и экспорт
v
fD
►
◄
1
Рис .
1.18. Диалоговое
ок
11 Отмена
·1
окно Настройка ленты
В этой книге многие решения используют команды ленты и ее вкладок, настроен-
.·
ные
по
умолчанию,
поэтому
чрезмерное
наполнение
ленты
дополнительными
вкладками и командами может усложнить выполнение приведенных рекомендаций .
Дополнение
Вы также можете добавить команды на панель быстрого доступа (см . разд.
1.20. Используем
1.20).
панель быстрого доступа
Задача
Вы хотите добавить часто используемые команды на легкодоступную панель инст
рументов .
50
Глава
1
Решение
Быстрый
доступ
к
часто
Панель быстрого доступа
используемым
командам
предоставляет
инструмент
(Quick Access Toolbar).
В зависимости от вашей версии
Excel
панель быстрого доступа находится либо над
панелью формул, либо в строке заголовка Ехсе\. На рис.
1.19 показана версия пане
Windows, включающая команды Автосохранение (AutoSave),
(Save), Отменить (Undo) и Повторить (Redo).
ли инструментов для
Сохранить
Автосохранение {jtвыкл)
Рис.
'
1.19.
8
Сохранить
":)
Отменить
v
Вариант панели быстрого доступа
(;' Повторить v
v
Excel
Бывает, что панель быстрого доступа по умолчанию в Excel для Windows не отображается. Однако отобразить ее можно, щелкнув правой кнопкой мыши на ленте
и выбрав в контекстном меню пункт Показать панель быстрого доступа
(Show
• Quick Access Toolbar).
Настроить команды, отображаемые на панели быстрого доступа, можно, нажав на
значок Настройка панели быстрого доступа (Customize Quick Access Toolbar) ~
и выбрав из открывшегося меню, содержащего краткий список возможных команд,
те из них, которые вы хотели бы иметь в этой панели. Чтобы увидеть исчерпывающий
список команд, выберите в этом меню пункт Другие команды
(More Commands),
(Customize
открывающий диалоговое окно Настройка панели быстрого доступа
Quick Access Too\bar),
которое предложит вам список доступных команд. Этот спи
сок вы также можете получить, выбрав в диалоговом окне Параметры
(см. разд.
1.19)
пункт Панель быстрого доступа
Если вы работаете в Ехсе\ для
Windows,
(Options)
(Quick Access Toolbar).
вы также можете добавлять на панель
быстрого доступа команды напрямую из ленты, щелкнув правой кнопкой мыши
на нужной команде и выбрав из контекстного меню пункт Добавить на панель
быстрого доступа
(Add to Quick Access Toolbar).
Пояснение
Панель быстрого доступа предлагает удобную альтернативу набору команд из
разд.
1. 19,
поскольку позволяет разместить наиболее часто используемые команды
в легкодоступном месте. Вы также можете ее использовать, к примеру, для запуска
любых созданных вами макросов.
1.21. Проверяем
читаемость
Задача
У вас есть рабочая книга, и вы хотите проверить и исправить любые проблемы ее
читаемости.
Рабочие книги, рабочие листы и ячейки
1
51
Решение
Ехсе\ содержит инструмент для проверки читаемости созданных в нем документов,
который можно задействовать, чтобы проверить рабочую книгу на наличие про
блем с доступностью документов и читаемостью их для всех пользователей, вклю
чая людей с ограниченными возможностями, и исправить затем всё, что обнаружит
инструмент.
Чтобы применить инструмент для проверки читаемости, выполните команду меню
Рецензирование
(Review) Специальные возможности (Accessibility) Прове
(Check AccessiЬility), которая откроет панель Специальные воз
(AccessiЬility), содержащую список результатов проверки например,
1
1
рить читаемость
можности
описание отсутствующих объектов. Щелкните на каждом из них, чтобы посмотреть
список рекомендованных действий и решить, какое из них применить.
Можно также выполнить команду меню Рецензирование
(Review)
1
Специальные
возможности (AccessiЬility) и в раскрывающемся списке Проверить читаемость
(Check AccessiЬility) выбрать пункт Параметры: специальные возможности
(Options: AccessiЬility), демонстрирующий параметры специальных возможностей
программы Excel, или пункт Справка по специальным возможностям (AccessiЬility Не\р), открывающий руководство по улучшению читаемости документов
Ехсе\.
Пояснение
Этот раздел знакомит вас с инструментом для проверки читаемости, который мож
но использовать для поиска связанных с ней проблем. Здесь также представлен
удобный способ решения каждой найденной им проблемы
-
например, добавле
ние альтернативного текста к плавающим или встроенным объектам, включая диа
граммы, фигуры и картинки (см. главы
12
и
13).
ГЛАВА
2
Ссылки
и структурированные данные
Ссылки встроены практически во все электронные таблицы, поскольку большинст
во функций Ехсе\ зависят от них. Например, в формулах задействуются ссылки на
ячейки и диапазоны для выполнения вычислений, в таблицах применяются струк
турированные ссылки, которые автоматически расширяются и сжимаются по мере
добавления и удаления строк, а использование абсолютных, относительных или
смешанных ссылок может повлиять на работу таких функций, как Автозаполнение
(Auto Fill),
условное форматирование или проверка данных.
В этой главе рассказывается о том, когда и как использовать различные типы ссы
лок, и о методах для работы со структурированными данными. Приведенные здесь
решения включают основанное на формулах условное форматирование, проверку
пользовательских данных,
использование статических и динамических именован
ных диапазонов для создания каскадных раскрывающихся списков, добавление
групп, промежуточных итогов, а также таблиц.
2.1.
Используем
относительные и абсолютные ссылки
Задача
Вы хотите определять, может ли в формуле ссылка на ячейку меняться, когда вы
копируете формулу в другую ячейку.
Решение
Относительные, абсолютные и смешанные ссылки на ячейки управляют изменени
ем формулы при ее копировании.
♦
Относительная ссылка на ячейку (к примеру,
AI)
может меняться, когда вы ко
пируете ее в другую ячейку, и это полезно, если, например, вам надо выполнить
вычисление для каждой строки или столбца в диапазоне. Таким образом, если
ячейка С I содержит формулу =Al *В1 и вы используете Автозаполнение
Fill)
(см. разд.
1.12)
помещена формула =А2*В2, а в ячейку СЗ
зом, если ячейка
DI
в диапазон
в ячейке
D2:D3
( Auto
для копирования ее в диапазон С2:СЗ, то в ячейку С2 будет
формула =СУММ (АЗ: вз) .
-
формула =АЗ*ВЗ. Аналогичным обра
содержит формулу =СУММ (Al: в1), то при ее копировании
D2
появится формула =СУММ(А2:В2), а в ячейке
D3 -
54
1
Глава
2
♦ Абсолютная ссылка на ячейку не изменяется при копировании формулы, поэто
му она полезна, к примеру, если вам надо умножить сумму каждой строки на
фиксированное значение. В абсолютной ссылке перед буквой столбца и номе
ром строки ставится знак доллара (например, $А$!), поэтому если ячейка Е 1
содержит формулу =СУММ (Al :Вl)
то при ее копировании в диапазон Е2:Е3
*$G$1,
в ячейку Е2 будет помещена формула =СУММ(А2:В2)
ла =СУММ(АЗ:ВЗ)*$G$1-т. е. ссылка
♦
Смешанная ссылка на ячейку
$G$1
*$G$1,
а в ячейку ЕЗ
-
форму
остается неизменной.
это ссылка, в которой либо столбец, либо стро
-
ка являются абсолютными ссылками и содержат знак доллара перед буквой
столбца или номером строки, а другая буква столбца или номер строки являются
относительными ссылками
например, $А I или А$!. Это пригодится, если вам
-
нужно скопировать формулу в другие ячейки, фиксируя при этом любые ссылки
на определенную строку или столбец. Так, если вам надо вычислить площадь
для различных значений ширины и длины, то введите в диапазоны В7:В9 и
Сб:Еб ширину и длину, в ячейку С7
-
формулу =$В7*С$6, а затем скопируйте ее
вниз и поперек, чтобы заполнить диапазон С7:Е9. Поскольку формула включает
абсолютные ссылки на столбец В и строку
копировании формулы (рис.
А
в
6,
с
Е
D
Длина
5
1
2
7
~ 1
:а$В7* С$б
:а$В7 • D$б
=$В7* Е$б
8
"~2
:а$В8* С$б
=$ВВ• D$б
:;$В8* Е$б
9
:3
:а$В9 * С$б
:;$В9 • D$б
=$В9 * Е$б
б
3
то они не будут обновляться при
2.1 ).
-F-
3
10
11
12
Рис.
2.1.
Используем смешанные ссылки для вычисления площади
В некоторых версиях
клавиш
<Fn>+<F4>
в
Excel можно использовать клавишу <F4> (или комбинацию
Excel для macOS) для переключения между относительными,
абсолютными и смешанными ссылками.
Пояснение
В этом разделе описано использование относительных, абсолютных и смешанных
ссылок на ячейки, а также рассказано, когда целесообразно применять каждый тип.
При принятии решения о том, какой тип использовать, как правило, учитывают,
необходимо ли обновлять строку и/или столбец ссылки на ячейку при копировании
формулы.
Ссылки и структурированные данные
2.2.
1
55
Используем относительные и абсолютные ссылки
в условном форматировании
Задача
Вы хотите использовать относительные и абсолютные ссылки на ячейки в правиле
условного форматирования, примененного к формуле.
Решение
Предположим, вам надо применить условное форматирование (см. ртд.
1.9)
на ос
нове формулы к ячейкам Al:FЗ. Сделать это можно, выполнив команду меню
Главная
(Ноте)
Formatting)
1
Стили
1
(Styles) 1 Условное форматирование (Conditional
(New Rule), а затем, выбрав тип правила Использо
formula), ввести формулу и указать требуемый формат. Excel
Создать правило
вать формулу
а
(Use
применит этот формат к ячейкам, в которых формула принимает значение истиНА.
Вы вводите формулу относительно верхней левой ячейки диапазона (в нашем при
мере это А 1), и «под капотом»
Когда
Excel
Excel
«копирует» ее в другие ячейки диапазона.
это выполняет, он оставляет абсолютные ссылки на ячейки нетрону
тыми, но корректирует все относительные
(см.
разд.
2.1),
поэтому тип используе
мой ссылки на ячейку может повлиять на форматирование ячеек.
Обычно смешанные ссылки на ячейку используются для сравнения значений в од
ной строке. Например, чтобы отформатировать каждую строку, в которой значение
столбца А больше значения столбца В, вы вводите формулу =$A1>$Bl матирует строку
если А 1 больше В 1, строку
1,
если АЗ больше ВЗ (рис.
j
2
3
Рис.
2.2.
это отфор
если А2 больше В2, и строку
3,
2.2).
А
1
2,
в
с
Е
D
F
з
з
2
2
1
2
1
з
1
2
з
1
2
1
з
з
2
1
Применяем формулу =$А1>$В1 с условным форматированием,
которое сравнивает значения в столбцах А и В
Чтобы сослаться на значение в определенной ячейке, вам нужно использовать аб
солютную ссылку на эту ячейку. Например, чтобы отформатировать каждую стро
ку, в которой значение столбца А больше значения ячейки ВЗ, вы вводите формулу
=$А1>$В$З. Поскольку $В$3
-
это абсолютная ссылка, она не корректируется при
копировании в другие ячейки, поэтому
ше ВЗ, строку
2,
Excel
если А2 больше ВЗ, и строку
форматирует строку
3,
1,
если А
если АЗ больше В3 (рис.
I
2.3).
боль
Чтобы применить условное форматирование к отдельным ячейкам, используйте
относительные ссылки. Например, чтобы отформатировать каждую ячейку, значе
ние которой больше В2, вы вводите значение =А1>$В$2. Поскольку А 1 -
это относи-
56
Глава
2
А
в
с
Е
D
1
3
3
2
2
2
2
1
3
3
1
2
1
Рис.
F
1
1
1
2
3
3
2
Применяем формулу =$А1>$В$3 с условным форматированием,
2.3.
которое сравнивает значения в столбце А с ячейкой
А
1
2
3
1
Рис.
3
2.4.
с
в
D
83
F
Е
3
3
2
2
1
1
2
1
3
1
2
3
1
2
1
3
3
2
Применяем формулу =А1>$В$2 с условным форматированием,
которое сравнивает каждое значение с ячейкой
82
тельная ссылка, она корректируется при копировании в другие ячейки, поэтому
Excel
применяет формат к каждой ячейке, которая больше В2 (рис.
2.4).
Пояснение
Это решение дополняет информацию, приведенную в разд.
и показывает вам,
1.9,
как использовать различные типы ссылок на ячейки с условным форматированием.
Выбор правильного типа ссылки на ячейку критически важен, поскольку это влияет
на то, какие ячейки будут отформатированы.
2.3.
Используем стиль ссылок
R1 С1
Задача
Вы хотите узнать, как использовать стиль ссылок на ячейки
R 1С I
и в каких случаях
он может быть полезен.
Решение
По умолчанию
Excel
маркирует столбцы буквами, а строки
-
числами, и вы ис
пользуете их для ссылки на ячейки и диапазоны, поэтому, например, указание на
ячейку В2 относится к ячейке, расположенной в столбце В и строке
ссылки на ячейки называется стилем ссылок
Al,
2.
Этот способ
и он знаком большинству пользо
вателей Ехсе\.
Менее распространенный способ ссылки на ячейки
ссылок
R 1С 1,
-
это использование стиля
который задействует числа как для строк, так и для столбцов. На
пример, ячейка во второй строке и втором столбце при этом будет иметь ссылку
R2C2
(рис.
2.5).
Подобный способ ссылки на ячейки может оказаться полезным,
если, к примеру, вам нужно выполнить вычисление, используя номера столбцов.
57
Ссылки и структурированные данные
v:
R2C2
✓ /х
х
з
2
4
6
5
7
1
2 1
з
Рис.
Чтобы в
Excel
Стиль ссылок
2.5.
для
Windows
R1C1
использует номера столбцов вместо букв
переключиться со стиля ссылок А 1 на стиль
полните команду меню Файл
(File)
1
Параметры
(Options)
1
Формулы
в разделе Работа с формулами установите флажок Стиль ссылок
Если вы работаете в Ехсе\ для
reference style).
полнив команду меню
Excel
macOS, то найдете этот флажок, вы
(Preferences) 1 Вычисления (Calculation).
стиль ссылок, Ехсе\ в зависимости от стиля
Параметры
I
Когда вы переключаетесь на другой
ссылок
R 1С 1, вы
(Formulas) и
RlCl (RlCI
соответственно меняет маркировку столбцов на числа или буквы и пре
-
образует формулы рабочей книги.
Аналогично стилю ссылок А
I
стиль
R I С 1 также
позволяет использовать абсолют
ные, относительные и смешанные ссылки.
♦
Абсолютная ссылка стиля
Rl С 1
просто указывает номер строки и столбца
-
так, например, R2СЗ является абсолютной ссылкой на ячейку, которая находит
ся в строке
2
столбца
это эквивалентно использованию $С$2 в стиле ссы
3, -
лок А 1.
♦
Относительная ссылка стиля
R IС I
определяет ячейки, используя смещения. Так,
если вам надо, к примеру, из ячейки
=R[1JC[2J в ячейку
R 1С I
сослаться на ячейку R2СЗ, введите
это укажет на ячейку, которая расположена на одну
RICI -
строку ниже и на два столбца правее ячейки
можете указать на ячейку
RIС I
из ячейки
ячейка
R 1С 1 располагается
R2C2.
Можно также задать =R[lJC -
R 1С 1 (рис. 2.6). Аналогично вы
R2C2, введя =R[-lJ с [-2), - поскольку
на одну строку выше и на один столбец левее ячейки
ниже в текущем столбце, и =RC [lJ -
чтобы указать на ячейку на одну строку
чтобы указать на ячейку в текущей строке
на один столбец правее.
2
3
4
5
б
7
1 ; ~aR[1]~2] 1
Рис.
2.6.
Формула
=R [ 1] с [ 2]
в ячейке
R1 С1
ссылается на ячейку R2СЗ
Большинство решений, приведенных в этой книге, предполагают, что вы по умол
.·
. чанию
используете стиль ссылок А1, поэтому использование стиля ссылок
R1C1
усложнит вам выполнение примеров.
Пояснение
В этом разделе описано использование стиля ссылок
R 1С 1. Хотя
применение стиля
ссылок по умолчанию А 1 предпочтительно в большинстве случаев, стиль
R IС 1
Глава
58
2
может оказаться полезным, например, если вам нужно выполнить вычисления, ис
пользуя номера столбцов.
Дополнение
Относительные ссылки в стиле
R 1С 1 работают
7.14).
аналогично использованию функ
ции смЕщ в стиле ссылок А 1 (см.разд.
2.4.
Ссылаемся на другой рабочий лист или книгу
Задача
Вы хотите сослаться на ячейку или диапазон на другом рабочем листе или в другой
рабочей книге.
Решение
Когда вы добавляете формулы в ячейки, вам иногда нужно сослаться на содержи
мое ячейки на другом рабочем листе или в другой рабочей книге.
Чтобы сослаться на ячейку или диапазон на другом рабочем листе той же самой
книги, как правило, используют синтаксис имя_листа ! ячейка_ или_диапазон.
Например,
чтобы
сослаться
на
ячейку
А 1 на рабочем
листе
Ставки,
=Ставки!Аl. Если имя рабочего листа содержит небуквенные символы
-
введите
такие как
пробелы или дефисы, вы должны заключить это имя в одинарные кавычки. Так,
чтобы сослаться на диапазон на рабочем листе данные компании, вы должны ввести:
'Данные компании' !А2:В5.
Если вам надо сослаться на ячейку или диапазон в другой рабочей книге, синтаксис
такой записи будет зависеть от того, открыта эта книга или закрыта.
Если рабочая книга открыта, используйте синтаксис [имя_ книги] имя_листа 'ячейка_
ипи
диапазон.
Так, чтобы сослаться на ячейку
Al
на рабочем листе Сводка открытого файла Стар
рубль .хslх, введите =(Старрубль.хзlх]Сsодка!Аl. Если в имени рабочей книги и/или
листа
содержатся
небуквенные
символы,
вы должны заключить
в одинарные
кавычки оба имени. Так, чтобы сослаться на ячейку А 1 на рабочем листе данные
компании в открытом файле Аккаунты
Старрубль.хslх]Данные компании'
Старрубль. xslx, вы должны ввести
' [Аккаунты
!Al.
Для ссылки на ячейку или диапазон в закрытой рабочей книге следует указать путь
к файлу, например: ='с: \Users\dawng\Paбoчий стол\ [Старрубль. xlsx] Surnmary' ! $А$1.
Excel
автоматически отслеживает, открыт или закрыт связанный Ехсеl-файл. Если
у вас есть ссылка на открытую рабочую книгу, которую вы потом закрываете,
Excel
автоматически обновляет ссылку, чтобы включить в нее путь к файлу, и удаляет
путь, когда вы вновь открываете рабочую книгу.
Ссылки и структурированные данные
59
Вместо того чтобы самим вводить сложные ссылки на ячейки, можно использовать
Excel.
Для этого перейдите в ячейку, в которую хотите добавить ссылку, начните
вводить формулу, а затем выберите ячейку или диапазон, на который вам надо
сослаться, - когда вы нажмете клавишу <Enter>, Excel добавит ссылку на ячейку
в формулу. В качестве альтернативы можно выбрать ячейку или диапазон, на который вам надо сослаться, скопировать, нажав комбинацию клавиш <Ctrl>+<C>,
это выделение в буфер обмена (или в разделе Буфер обмена (Clipboard) вкладки
Главная (Home) нажать кнопку Копировать (Сору)), после чего вставить скопиро
ванное в формулу, выполнив команду меню Главная
1 Вставить
(Clipboard)
(Paste)
1 Вставить ссылку
(Home)
(Paste Link).
1
Буфер обмена
Пояснение
В этом разделе показано, как ссылаться на ячейки и диапазоны на других рабочих
листах или в других рабочих книгах. Обратите внимание, что обычно в Ехсе\ проще
создавать ссылки
автоматически,
поскольку это
гарантирует,
что
вы
используете
правильный синтаксис.
2.5.
Используем ЗD-ссылки
Задача
Вы хотите создать формулу, используя одну ту же ячейку или диапазон на несколь
ких смежных листах.
Решение
Предположим, что вам надо просуммировать значения ячейки В 1 на трех смежных
листах: УП, Маркетинг и Продажи. Сделать это можно, используя трехмерную ссылку,
которая
лист -
принимает
вид:
первый_лист:последний_лист!ячейка_или_диапазон,
это имя первого рабочего листа в диапазоне, а последний_лист -
где
первый_
имя послед
него. Чтобы получить ссылку на ячейку В 1 на рабочих листах от УП до Продажи, вам
надо будет ввести УП:Про.цажи!В1, а чтобы суммировать эти значения
=СУММ (УП : Продажи! В1)
Excel
-
ввести
.
может автоматически добавлять ЗD-ссылки. Перейдите в ячейку, в которую
вам нужно добавить ссылку, начните вводить формулу и щелкните на вкладке пер
вого рабочего листа, который собираетесь включить в ссылку. Затем нажмите кла
вишу
не отпуская ее, щелкните на последнем рабочем листе, который со
<Shift>,
бираетесь включить, и выберите ячейку или диапазон. Когда вы нажмете клавишу
<Enter>, Excel
добавит трехмерную ссылку в формулу.
Пояснение
Трехмерные ссылки
-
это удобный способ выполнения вычислений с использова
нием одной и то же ячейки или диапазона на смежных листах. Не все версии
поддерживают их, но, если вы работаете в
функции встолsик и гстолsик (см. разд.
7.4),
Excel 365,
Excel
то можете использовать
чтобы сформировать из их значений
Глава
60
2
динамический массив, который сможете задействовать с большим количеством
функций.
2.6.
Именуем ячейки, диапазоны, константы и формулы
Задача
Вы хотите упростить формулы, используя имена вместо ссылок на ячейки, диапа
зоны, константы или формулы.
Решение
Присвоение имени ячейкам, диапазонам, константам и формулам способно помочь
упростить понимание формул, которые вы добавляете в ячейки, поскольку вы смо
жете использовать понятные человеку имена вместо ссылок и значений. Так, вме
сто того, чтобы, к примеру, использовать формулу =СУММ(Продажи 1 Вl:В10)*Ставки 1 Вl,
где
производится
умножение
суммы
значений
на
ставку,
запишите
=СУММ(ПродажиИтого) *Ставка.
Самый простой способ задать имя ячейки или диапазона
Имя
(Name).
это задействовать поле
-
Выберите ячейку или диапазон, которым собираетесь присвоить имя,
введите это имя в поле Имя
(Name), расположенное под лентой слева от
<Enter>, чтобы его сохранить (рис. 2.7).
панели
формул, а затем нажмите клавишу
/х
Всего
А
1
2
1278,89
в
1Еда, всего:
с
Е
D
F
1278,89Р
Напитки, всего :
187,45 Р
з
4
5
б
Рис.
2.7.
Присвоение имени диапазону с помощью поля Имя
Если у вас есть табличные данные и вам надо задать имя для каждого столбца
и/или строки, то можно воспользоваться опцией Создание из выделенного диапа
зона
(Create from Selection).
Сначала выберите данные, для которых собираетесь
задать имена, включая метки строк или столбцов, которые решили использовать
для имен, затем нажмите в разделе Определенные имена
Формулы
чтобы
(Formulas)
кнопку Создать из выделенного
открыть диалоговое
(Create names from Selection).
окно Создание
имен
из
(Defined Names) вкладки
(Create from Sе\есtiоn)
выделенного диапазона
Выберите там два или более параметров для указания
меток, которые решили использовать для имен: в строке выше, в столбце слева,
в строке ниже, в столбце справа, и нажмите кнопку ОК, чтобы создать имена
(рис.
2.8).
61
Ссылки и структурированные данные
А
D
с
Е
F
н
G
s
6
Пицца
Создание имен из выделенного диапазона
7 Бутерброды
8 Чай
Создать имена из значений:
9 Кофе
l~Ннтроке_ ]!ЫШе !
Конфеты
10
11
!;21 в столбце сдева
7907843
Пирожные
О в строке J:!ИЖе
78969()..•
О в столбце (!Jрава
12!
13
х
?
1
ок
14
Отмена
15
16
17
Рис.
2.8.
Присвоение имен строкам и столбцам с помощью
диалогового окна Создание имен из выделенного диапазона
~
J
~
Когда вы задаете диапазон имен на основании столбца в таблице, диапазон автоматически расширяется, чтобы включить новые строки, которые вы добавляете.
Более гибкий способ присвоения имен
(Define Name ),
-
использование инструмента Задать имя
который позволяет задавать имена для ячеек, диапазонов, констант
и формул. Выполните команду меню Формулы
(Defined Names),
пункт Задать имя
(Define Name ), введите в
(New Name)
гового окна Создание имени
(Refers to)
(Formulas) Определенные имена
(Define Name) выберите
поле Имя (Name) открывшегося диало
1
в раскрывающемся списке Задать имя
нужное имя, а затем в поле Диапазон
укажите ссылку на ячейку, диапазон, константу или формулу, которым
решили присвоить это имя. По нажатию кнопки ОК
(рис.
сохранит введенное имя
Excel
2.9).
о
Создание имени
!1•111:
[iiio~
Qбпасть:
[книга
х
Примечание:
Диаnа1он:
[! ~
~мeнa!SBS7: SBS9
;::;:::::==.----::=ОК
Рис.
2.9.
От•1ена
Присвоение имени диапазону с помощью диалогового окна Создание имени
Присваивая имя с помощью инструмента Задать имя
выбрать область
область
-
-
уровень, на котором
Excel
(Define Name),
можно также
распознает это имя. По умолчанию
вся рабочая книга (Книга), поэтому вы сможете использовать заданное
имя во всей этой рабочей книге, однако можно также изменить область, задав кон-
62
Глава
2
кретный рабочий лист.
(Name)
Все
имена, которые вы задаете, используя поле Имя
или Создать из выделенного
(Create from Selection),
относятся к области
всей рабочей книги. Обратите внимание, что каждое задаваемое вами имя должно
быть уникальным внутри этой области.
Для управления любыми заданными вами именами используйте Диспетчер имен
(Name Manager) программы Ехсе\, который можно открыть, выполнив команду ме
ню Формулы (Formulas) 1 Определенные имена (Defined Names) 1 Диспетчер
имен (Name Manager). Инструмент Диспетчер имен (Name Manager) позволяет
редактировать и удалять любые существующие имена или задавать новые, открыв
диалоговое окно Создание имени
(New Name ).
Задействовать любые заданные вами имена можно по той же схеме, что и исполь
зование ссылок на ячейки. Для имен, областью которых является текущая рабочая
книга или лист, вместо любых ссылок на ячейку или диапазон применяйте имена
-
например, так: =СУММ(Вl :ВlО) *Ставка. Если областью является другой рабочий лист
в той же книге, используйте синтаксис лист I имя -
например: Продажи! Итого. Можно
также сослаться на имя в другой рабочей книге: если область имени
используйте синтаксис
-
это Книга,
книга! имя, а если область ограничена рабочим листом
-
синтаксис [книга_ имя] лист! имя.
Когда вы добавляете заданное имя,
Excel
не обновляет существующие формулы,
чтобы его использовать. Однако можно сделать так, чтобы
ссылки, выполнив команду Формулы
Names)
(Formulas)
и в раскрывающемся списке Задать имя
менить имена
Excel
заменил любые
1 Определенные имена
(Define Name)
(Defined
выбрав пункт При
(Apply Names).
Пояснение
Задание имен для ссылок на ячейку, диапазон, константы и формулы является
одной из самых полезных функций Ехсе\ в рабочих книгах, которые содержат мно
го формул. Заданные имена облегчают прочтение и обслуживание формул, а также
их проще использовать, чем ссылки на ячейку или диапазон, потому что, когда вы
начинаете вводить заданное имя, Ехсе\ отображает список подходящих формул.
Использование диапазонов имен может также упростить навигацию, поскольку
дает возможность выбрать имя из раскрывающегося списка Имя
(Name).
Дополнение
Для определения динамических именованных диапазонов можно также использо
вать формулы (см. разд.
2. 7).
Если вы работаете в Ехсе\
Manager) для
365,
то можете задействовать Диспетчер имен
определения пользовательских функций (см.разд.
17. 4).
(Name
Ссылки и структурированные данные
2.7.
63
Создаем динамические именованные диапазоны
Задача
Вы хотите создать диапазон имен, который при добавлении или удалении строк
автоматически расширяется и сокращается.
Решение
Предположим, вам надо задать диапазон имен, который включает все содержащие
значения ячейки столбца и вмещает любые новые добавленные вами строки. В по
добной ситуации можно либо преобразовать данные в столбец таблицы и использо
вать их для именованного диапазона (см. разд.
2.6),
либо задать динамический
именованный диапазон на основе формулы.
Чтобы создать использующий формулу динамический именованный диапазон, сле
дует выполнить
команду
(Defined Names),
в раскрывающемся списке Задать имя
пункт Задать имя
ни
меню Формулы
(Define Name),
(Formulas)
1
Определенные имена
(Define Name)
выбрать
в открывшемся диалоговом окне Создание име
(New Name) ввести имя в поле Имя (Name ), а затем указать формулу в поле
(Refers to ). Формула зависит от данных, которые должен возвращать ди
Диапазон
намический именованный диапазон.
Чтобы вернуть все ячейки диапазона столбцов, которые содержат значения (пред
полагаем,
что
пустых
строк
нет),
как
правило,
применяют
формулу
=первая_ ячейка :ИI-ЩЕКС (диапазон_ столбцов;СЧЁТЗ (диапазон_ столбцов)), подключающую функ
цию СЧЁТЗ для подсчета числа ячеек в диапазоне диапазон_ столбцов, содержащем зна
чения, которые функция ИНДЕКС использует для определения последней ячейки
в диапазоне (см. разд.
7.11).
В этой формуле первая_ячейка -
это первая ячейка,
которую вам надо включить в диапазон, а диапазон_ столбцов определяет столбец, со
держащий значения. Чтобы задать именованный диапазон, который включает все
значения в столбце А из ячейки А2 (рис.
2.1 О),
вам нужно использовать формулу
=$А$2: ИНДЕКС ($А: $А; СЧЁТЗ ($А: $А) ) .
Если вам надо, чтобы динамический именованный диапазон возвращал последние п
строк диапазона столбцов, содержащих значения (предполагаем, что пустых строк
нет), примените формулу =СМЕЩ (первая_ ячейка; СЧЁТЗ (диапазон_ столбцов) -п; О; п; 11, кото
рая использует функцию СМЕЩ ( см. разд.
7.14),
чтобы определить, на сколько строк
сместить позицию первая_ ячейка. Так, чтобы вернуть последние три строки в столб
це А из ячейки
Al
(рис.
2.11),
вам
нужно
использовать формулу =СМЕЩ($А$1;
СЧЁТЗ($А:$А)-3;0;3;1).
Пояснение
Если вам нужно создать динамический именованный диапазон, который автомати
чески вмещает новые строки, то наиболее надежным вариантом будет создание
диапазона на основе столбца таблицы. Это связано с тем, что применение формул
Глава
64
2
в
А
1
2
По.зиция
_ __[==D==-=-=~E_
~---c
_::.:.._.:..F-=---G-----,н _ _ __,
Пицца
3
Бутерброды
4
Салат
5
суп
б
Конфеты
7
Пирожные
х
о
Создание имени
СnисокП03иций
Q6ласть:
Книга
Примечание :
8
9
Диапа1он:
10
= SAS.2:ИНДfKC(SA:SA, СЧЁТЗ(SА:SА)~
11
ОК
От.1<на
12
13
14
15
Рис.
2.10.
Применение функции ИНДЕКС для создания динамического именованного диапазона
в
А
1
2
3
4
Позиция
!пицца
Бутербродь1
о
(03Дание имени
Имя:
Q6пасть:
Салат
х
ПоследниеТриПо,ици<1
Книга
з
Примечание:
5
Суп
б
Конфеты
7
Пирожные
8
9
Диаnа1он:
10
= СМЕЩ{SдS 1; СЧЕТ З(SА: SA}-3;0; 3; 1)
ОК
11
Отuена
и
13
14
15
lб
Рис .
2.11.
Применение функции СМЕЩ для создания динамического именованного диапазона
может не вернуть желаемые результаты , если столбец содержит пустые строки или
дополнительные значения , которые вам надо исключить . Тем не менее использова
ние функций индЕ КС и смЕщ удобно в ситуациях, когда данные не находятся в таблице
или вам нужно исключить часть данных . Другие функции, такие как УНИК, которые
можно исполь зовать для создания динамического именованного диапазона, описа
ны в главе
2.8.
7.
Проверяем данные
Задача
Вы хотите ограничить з начения , которые можно вводить в ячейку, определенным
диапазоном значений.
Ссылки и структурированные данные
65
Решение
Инструмент проверки данных
Excel
позволяет задавать правила, которые указыва
ют, какие значения можно вводить в одну или более ячеек (например, числа больше
нуля). Можно также использовать этот инструмент для отображения сообщения
при выборе пользователем ячейки.
Когда вы создаете правило проверки данных,
Excel
применяет его только к новым
вводимым вами значениям, а не к уже существующим. Чтобы обвести ячейки, ко
торые нарушают правила проверки, выполните команду меню Данные
бота с данными
(Data Tools)
(Data)
и в раскрывающемся списке Проверка данных
1
Ра
(Data
(Circle lnvalid Data). Уда(Data) 1 Работа с дан
ными (Data Tools) и в раскрывающемся списке Проверка данных (Data Validation)
выбрав пункт Удалить обводку неверных данных (Clear Validation Circles).
Validation)
выберите пункт Обвести неверные данные
лить эти обводки можно, выполнив команду меню Данные
Чтобы добавить правило проверки данных (рис.
2.12):
1.
Выберите ячейки, к которым надо применить правило проверки данных.
2.
Выполните команду меню Данные
(Data)
1
Работа с данными
и в раскрывающемся списке Проверка данных
Проверка данных
ка вводимых
(Data Validation), который
значений (Data Validation).
Подсказка по вводУ
выберите пункт
откроет диалоговое окно Провер
х
?
Проверка вводимых Jначений
Параметры
(Data Validation)
(Data Tools)
Сообщение об ошибке
Усл овие проверки
Iиn данных:
Целое число
v
Б2J Игнорировать пустые J!Чейки
Знач~ние:
v
больше
ммни"ум :
о
Распростран~пь и1менения на другие ячейки с тем же
услов11е,1
О~ист,пь все
Рис.
3.
2.12.
ок
Отмена
Диалоговое окно Проверка вводимых значений
На вкладке Параметры
(Settings)
этого диалогового окна выберите тип данных
и диапазон значений, которыми вам надо ограничить ввод данных. Например,
чтобы ограничить ввод данных целыми числами больше нуля, вы выбираете: из
раскрывающегося списка Тип данных
number),
(Data type) (Value) -
из раскрывающегося списка Значение
и вводите о в поле Минимум
(Minimum).
Целое число
больше
(Whole
(greater than)
66
4.
Глава
2
Чтобы отображать сообщение, появляющееся, когда пользователь выбирает
ячейку, откройте вкладку Подсказка по вводу
(lnput Message ),
установите фла
жок Отображать подсказку, если ячейка является текущей
message),
5.
(Show input
укажите название (заголовок) сообщения и введите его текст.
Чтобы настроить сообщение, которое
Excel
отображает, когда пользователь вво
дит неверные данные, откройте вкладку Сообщение об ошибке
установите флажок Выводить сообщение об ошибке
(Error Alert),
(Show error alert), укажите
вид соответствующего сообщению значка, название (заголовок) сообщения и
введите его текст.
Если вам нужно отредактировать или удалить правило проверки данных:
1.
Выберите ячейки, для которых собираетесь редактировать правило или из кото
рых решили его удалить.
2.
Выполните команду меню Данные
(Data)
1
Работа с данными
и в раскрывающемся списке Проверка данных
(Data Validation)
(Data Tools)
выберите пункт
Проверка данных, который откроет диалоговое окно Проверка вводимых
значений
3.
(Data Validation).
На вкладке Параметры
(Settings)
этого диалогового окна установите флажок
Распространить изменения на другие ячейки с тем же условием (Арр\у
changes to
а\1
other cells with the same settings) -
these
если вам надо применить из
менение к любым ячейкам с тем же правилом, но которые вы не выбрали на
шаге
4.
1.
Нажмите кнопку Очистить все
(Clear
А\1), чтобы удалить настройки правила
проверки, подсказки по вводу и сообщения об ошибке. Чтобы удалить только
правило проверки, выберите Любое значение
списка Тип данных
(Data type ).
(Any Value)
из раскрывающегося
По нажатию кнопки ОК произведенные изме
нения будут применены.
Пояснение
В этом разделе описано использование предустановленных правил проверки дан
ных в Ехсе\, позволяющих убедиться, что все значения ячеек находятся в диапазоне
значений. Можно также использовать приведенные здесь приемы для добавления
всплывающей подсказки к ячейкам
меток и примечаний (см.разд.
-
в качестве альтернативы использованию за
1.17).
Дополнение
В разд.
1.17 вы
найдете советы по поиску ячеек с проверкой данных.
Полезная информация о применении пользовательской проверки данных и провер
ки данных списка приведена в разд.
2. 9 и 2.1 О.
Ссылки и структурированные данные
2.9.
1
67
Создаем правило
пользовательской проверки данных
Задача
Вы хотите выйти за рамки стандартных правил проверки данных
Excel
и задейст
вовать пользовательскую формулу.
Решение
Предположим, вам надо применить правило проверки данных, ограничивающее
ввод данных только числами или днями недели. Сделать это можно, задав пользо
вательское правшю.
Чтобы задать пользовательское правило, следуйте шагам, приведенным в разд.
2.8,
3 из раскрываю
(Settings) выберите
поясняющим, как добавить правило проверки данных, но на шаге
щегося списка Тип данных
пункт Другой
(Custom),
вкладки Параметры
(Data type)
введите в поле Формула
(Formula)
пользовательскую
формулу, после чего нажмите кнопку ОК.
Аналогично решению из разд.
2.2
вы вводите формулу относительно верхней левой
ячейки, для которой собираетесь применить правило. Так, чтобы применить поль
зовательское правило к ячейкам диапазона
тельно ячейки А 1, а «под капотом»
Excel
Al:AlO,
вы вводите формулу относи
«копирует» ее в другие ячейки.
Формула должна принимать значение истиНА или ложь. Например, чтобы ограничить
ввод данных только числами, примените формулу =Ечисло (Al), а чтобы ограничить
ввод данных только днями недели
-
формулу =НЕ (ИЛИ (ДЕНЬНЕД (Al) =1; ДЕНЬНЕД (Al) =7) ) .
Пояснение
Стандартные правила проверки данных
Excel
(см. разд.
2.8)
позволяют ограничить
вводимые вами значения диапазоном значений. А в этом разделе показано, как
можно выйти за рамки этих правил и написать свои собственные пользовательские
формулы.
2.10.
Вводим данные
с помощью раскрывающегося списка
Задача
Вы хотите ввести значение в ячейку с помощью раскрывающегося списка предо
пределенных значений.
Решение
Если вы решили ограничить значения ячеек предопределенным списком, то можете
сделать это, задав раскрывающийся список. Раскрывающиеся списки могут уско-
68
Глава
2
рить и упростить ввод значений в ячейки и помогают сделать данные более согла
сованными.
Чтобы добавить раскрывающийся список с помощью средства проверки данных
(см.разд.
2.8):
1.
Выберите ячейки, которые собрались добавить в раскрывающийся список.
2.
Откройте диалоговое окно Проверка вводимых значений
выполнив команду меню Данные
верка данных
3.
(Data Validation)
На вкладке Параметры
1
(Data)
1
Проверка данных
(Settings)
(Data Validation),
(Data Tools) 1 Про
(Data Validation).
Работа с данными
открывшегося диалогового окна выберите из
раскрывающегося списка Тип данных
(Data type) вариант Список (List) и уста
(ln-cell drop-down). Затем в поле
новите флажок Список допустимых значений
Источник
(Source) определите
значения списка и нажмите кнопку ОК.
Для определения значений списка у вас есть несколько вариантов:
♦
Использовать разделенный запятыми список.
Если вам нужны жестко заданные статические значения и маловероятно, что они
изменятся, можно ввести их значения напрямую в поле Источник (Sоurсе)
например: да, HEl'l', Возможно. Обратите внимание, что с этим подходом допуска
ется изменить только значения, обновив правило проверки данных.
♦
Использовать ссылку на диапазон.
Этот вариант окажется полезным, если вам надо легко изменять значения рас
крывающегося списка. Введите значения в диапазон ячеек, затем введите абсо
лютную ссылку на этот диапазон в поле Источник
(Source) -
например:
=Имена! $А$2: $А$7. Обратите внимание, что если вы добавляете или удаляете зна
чения, то должны обновлять ссылку на диапазон в правиле проверки данных.
♦
Использовать столбец таблицы.
Этот вариант удобен для динамических списков, когда вам нужно, чтобы рас
крывающийся список автоматически включал новые значения. Сначала добавьте
значения в столбец таблицы, а затем введите ссылку на этот столбец в поле Ис
точник
(Source ),
используя формулу =ДВССЫЛ 1"имя_ таблицы( столбец)" 1.
Так, если вы добавили значения в столбец позиция таблицы Продукты, то формула
должна принять вид: =двссьш ( "Ilpoдyx'l'ЬI [ПоЗИЦJ,tЯJ ") (см.разд.
♦
7.12).
Использовать именованный диапазон.
Этот вариант является наиболее гибким, поскольку в основе раскрывающегося
списка может быть как статический, так и динамический именованный диапа
зон. Определите именованный диапазон (см. разд.
имя в поле Источник
(Source)- например:
2.6
и
2. 7), а затем
2.13).
=ПоЗИЦJ,tЯ (рис.
введите его
Ссылки и структурированные данные
Параметры
Подсказка
no
х
?
Проверка вводимых значен11й
вводУ
69
Сообщение об ошибке
Условие провер к и
Iиn данных:
[сnис~~
Значение-:
~ьше
~
---3-v~
1;2J jИгнорировать_ пустые_ J!ЧеЙки!
0
Inисок доnуст>~ыых значений
Источни к:
= Позиция
Распространить изменения на другие ячейки с теы же
успоsием
О~истить все
Рис.
2.13.
ок
Отмена
Использование диалогового окна Проверка вводимых значений
для определения раскрывающегося списка
Пояснение
В этом разделе описывается применение средства проверки данных для создания
раскрывающегося списка. Вы можете использовать несколько вариантов для значе
ний списка
-
в зависимости от того, насколько динамичным вы хотите его видеть.
2.11. Определяем
зависимые, или каскадные,
раскрывающиеся списки
Задача
Вы хотите ввести данные с помощью двух раскрывающихся списков, где значения
второго зависят от значений, выбранных в первом.
Решение
Предположим, диапазон А2:А5 содержит список продуктов с меткой Еда в ячейке
А 1, а В2:В5
-
список напитков с меткой напитки в ячейке В 1. Вы решили добавить
раскрывающийся список в ячейки диапазона
D2: D 1О,
где значениями списка явля
ются метки Еда и Напитки в А 1:В 1. Вы также собрались добавить раскрывающийся
список в ячейки Е2:Е 1О, где значения этого списка зависят от значений первого,
поэтому если вы выберете Еда из первого раскрывающегося списка, то второй спи
сок будет содержать значения диапазона А2:А5, а если вы выберете из первого рас
крывающегося
В2:В4 (рис.
списка напитки, то список будет содержать значения диапазона
2.14).
Глава
70
2
д
в
с
Е
D
F
Напитки
Категория
Бутерброды
Кофе
Напитки
Пирожные
Лимонад
Кофt
Чай
Лимонад
1
2
Еда
З
4
Пицца
5
Салат
G
Позиция
lт
Чай
б
7
Рис.
2.14.
Использование зависимых раскрывающихся списков
Решить эrу задачу можно с помощью раскрывающегося списка с именованными
диапазонами для наименований еды и напитков, выполнив следующие шаги:
1.
Создайте именованный диапазон (см. разд.
2.6)
Еда, который ссылается на
=$А$2: $А$5 (наименования еды).
2.
Создайте именованный диапазон напитки, который ссылается на =$В$2: $В$5 (на
именования напитков).
3.
Выберите диапазон
D2:D10
и следуйте шагам из разд.
крывающийся список с источником =$А$1: $В$1, -
2.10,
чтобы создать рас
это заполнит список метками
Еда и напитки, что соответствует именованным диапазонам, созданным на шагах
и
4.
1
2.
Выберите диапазон Е2:Е10 и следуйте шагам из разд.
крывающийся список с источником двссыл (D2), -
2.10,
чтобы создать рас
это заполнит список зна
чениями из именованных диапазонов Еда и Напитки, в зависимости от значения,
выбранного в первом раскрывающемся списке.
Пояснение
Это решение предлагает удобный способ создания зависимых раскрывающихся
списков, в которых значения в одном списке зависят от значения, которое вы выби
раете в другом. Ключом к этому подходу является создание именованных диапазо
нов, имена которых соответствуют значениям в первом списке, чтобы затем второй
раскрывающийся список мог ссылаться на именованные диапазоны для получения
своих значений.
2.12.
Используем форму ввода данных
Задача
У вас есть набор данных, и вы хотите использовать форму для ввода данных, не
применяя макросы и
Visual Basic для
приложений
(VBA).
Решение
Предположим, в вашем наборе данных каждая строка представляет собой отдель
ную запись, и вам надо иметь возможность создавать, обновлять, удалять и нахо
дить записи с помощью быстрой формы ввода данных.
Ссылки и структурированные данные
Если вы работаете в среде
манду Форма
Windows,
1
71
то можете решить эту проблему, добавив ко
- настройте эту панель, следуя
1.20, затем выберите из ее раскрывающегося списка Выбрать
команды из (Choose commands from) команду Все команды (All Commands), по
ищите команду Форма (Form) и добавьте ее на панель быстрого доступа.
(Form)
на панель быстрого доступа,
инструкциям из разд.
Чтобы открыть форму ввода данных, выберите одну из ячеек в наборе данных и
щелкните на опции Форма
(Form)
кроет форму, показанную на рис.
панели быстрого доступа,
2.15,
это действие от
-
использующую заголовки набора данных
для меток формы.
в
А
1
D
с
Е
н
G
Катего ия Позиция Стоимость
2
Еда
Пирожн
1250,0011
З
Еда
Пицца
1580,0011
4
5
Еда
Пицца
Напитки
Кофе
б
Напитки
Чай
1&50,0011
370,0011
530,0011
7
Форм•
Катиория:
[ ~---
Поsиция:
1Пирожные
1юS
_--:::=] "
[
[
[
Стоимость: J,_12._so_ ____,
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Х
[
[
L _!!:ритерии
l
[
.,
Рис.
2.15.
Использование быстрой формы ввода данных
Пояснение
Команда Форма
(Form)
в
Excel
может упростить ввод данных для табличных набо
ров данных. К сожалению, команда недоступна в ленте по умолчанию, но есть воз
можность добавить ее вручную на панель быстрого доступа, как показано в этом
разделе.
Дополнение
Чтобы создать настраиваемую пользовательскую форму, поведение которой вы
программируете с помощью
VBA,
обратитесь к разд.
18.19.
72
Глава
1
2
2.13. Сортируем данные по значению,
формату
или пользовательскому списку
Задача
У вас есть данные, расположенные в столбцах, и вы хотите сортировать их по зна
чению.
Решение
Инструмент Сортировка
(Sort)
в Ехсе\ позволяет сортировать один или более
столбцов по значению, формату ячейки или используя пользовательский список
(см.разд.
♦
1.13).
Чтобы отсортировать столбец по значениям от меньшего к большему, выделите
ячейку в столбце и выполните команду меню Данные
фильтр
(Sort & Filter)
1
Сортировка от А до Я
(Sort
А
(Data)
to Z).
1
Сортировка и
Получить тот же результат можно, выделив ячейку в столбце и выполнив
команду меню Главная
фильтр
♦
(Sort & Filter)
1
(Home)
Редактирование
1
Сортировка от А до Я
(Sort
А
(Editing)
to Z).
1
Сортировка и
Чтобы отсортировать столбец по значениям от большего к меньшему, выделите
ячейку в столбце и выполните команду меню Данные
фильтр
(Sort & Filter)
1
Сортировка от Я до А
Получить тот же результат можно,
команду меню Главная
фильтр
(Home) /
(Sort Z to
(Data) /
Сортировка и
А).
выделив ячейку в столбце
Редактирование
(Editing)
(Sort & Filter) 1 Сортировка от Я до А (Sort Z to А).
1
и
выполнив
Сортировка и
Чтобы отсортировать несколько столбцов или выполнить сортировку по цвету
ячейки, цвету шрифта, значку условного форматирования или используя пользова
тельский список, выделите ячейку в наборе данных или весь диапазон и выполните
команду меню Данные
(Sort & Filter) 1 Сортировка
(Editing) Сортировка
и фильтр (Sort & Filter) 1 Настраиваемая сортировка (Custom Sort). Это действие
откроет диалоговое окно Сортировка (Sort), которое позволит вам точно настроить
сортировку своих данных (рис. 2.16).
(Sort)
(Data)
1
Сортировка и фильтр
или команду меню Главная
••••••••••••••••••••••••••••
Инструмент Сортировка
(Home)
(Sor1)
1
Редактирование
обычно распознает заголовки (если они отформа
тированы по-другому) и не трогает такие строки, но не всегда. Более надежным
подходом будет преобразование данных в таблицу, прежде чем начинать их сор-
• тировку
(см. разд.
2.18).
Пояснение
В этом разделе представлены быстрые способы сортировки данных в алфавитном
или числовом порядке, а также более гибкие функции, доступные в диалоговом
окне Сортировка
(Sort).
Обратите внимание, что отсортировать данные можно
также с помощью фильтров (см.разд.
2.14)
и функций (см.разд.
7.2).
73
Ссылки и структурированные данные
х
СоfПировоса
+ Добgвить уроиень
[Q1 !о пировать уровень
Х ~алить уровень
Столбец
[!араа.,етры...
0
Мои данныt содержат }аrоповки
Порядок
Сортировка
Сортировать по
Категория
v
Значения ячеек
Затем по
По1иция
v
Значения ячеек
v
Занм по
Стоиа.tость
v
Значения ячеек
~
От Я до А
~;;;:;;;;;~;;;;;,::::::::::::::::~
о
мати
От А до Я
По ~озрастаниtо
----
ования
ок
Рис.
2.14.
2.16.
от"1ена
Диалоговое окно Сортировка позволяет сортировать по нескольким столбцам
Фильтруем данные
Задача
У вас есть данные, расположенные в столбцах, и вы хотите отфильтровать их зна
чения.
Решение
Инструмент Фильтр
(Filter)
в
Excel
позволяет фильтровать данные в одном или
более столбцах по значению, формату и используя критерий. Он также включает
средство для одновременной сортировки и фильтрации данных.
Чтобы добавить фильтр (рис.
2.17):
1.
Убедитесь, что данные содержат заголовки в первой строке.
2.
Выделите ячейку или весь набор данных и выполните команду меню Данные
(Data)
(Home)
1
Сортировка и фильтр
1
Фильтр
Редактирование
(Filter) -
(Sort & Filter) Фильтр (Filter) или Главная
(Editing) Сортировка и фильтр (Sort & Filter)
1
так вы добавите к каждому заголовку столбца фильтр
стрелку раскрывающегося списка
3.
1
1
G-
Щелкните на стрелке раскрывающегося списка в столбцах, по которым вам
нужно отфильтровать набор данных,
-
откроется меню фильтра, отображающее
в зависимости от типа данных, находящихся в этом столбце, различные пара
метры.
4.
Примените требуемые параметры для фильтрации данных и нажмите кноп
ку ок.
~.---1
)N
Сrолбцы таблиц ло умолча"'ю а<nючают раскры,ающеес, меню фил.тра, оо,то
му вам не нужно добавлять его вручную.
Глава
74
2
А
в
D
с
1
1 КатеrоDГ.,. lпозицl· •;I Стоимость 1.,. 1
l
:l
~
F
Е
G
н
1
J
Сортировка от А до Я
Сортировка от В до А
>
~ортировка по цв,ету
[!pe-J,Cli.18/1 .НИt:
1и._т
~ Cttяrь фjj.11ьтр.щию с "К~тегория·
~IA,1Ь1"J; 111
'"
>
Текстовые Jkилотры
/
Поиск
f.авно, ..
J:le равно ...
1
г·[;1] (Во,делить все)
Н~чина~с.я с. ..
i [;1]Еда
i...[;1] Напитки
~аканчиааетс.я на ...
~держит ...
Н~ содержит...
1
Настраиваемый Jkилыр...
~ [ Отмена ]
..
25
26
27
28
~"
Рис.
Параметр Фильтр
(Filter)
2.17.
Меню фильтра столбца Категория
позволяет применять к каждому столбцу в наборе данных
только два критерия. Однако есть возможность задать более сложный критерий,
используя параметр Расширенный фильтр
рис.
1.
2.
(Advanced Filter),
как показано на
2.18.
Убедитесь, что данные содержат заголовки в первой строке.
Установите диапазон критерия с заголовками, которые соответствуют набору
данных. Так, если в наборе данных есть заголовки Категория, Позиция и Стоимость,
то диапазон критерия должен содержать эти заголовки.
3.
Укажите критерий, добавив одну или более строк в диапазон критерия, где кри
терий в одной строке использует логику И, а критерий в разных строках
логику ИЛИ. Чтобы отобразить данные, в которых категория -
-
Еда И позиция на
чинается с п, вы должны ввести ="=Еда." в столбец Категория и П* в столбец Позиция
в той же строке. А чтобы отобразить данные, в которых категория -
Еда ИЛИ
Позиция начинается с п, вы должны ввести критерии в отдельных строках.
4.
Нажмите в разделе Сортировка и фильтр
кнопку Дополнительно
ренный
(Advanced),
фильтр (Advanced Filter).
(Sort & Filter)
вкладки Данные
(Data)
чтобы открыть диалоговое окно Расши
Ссылки и структурированные данные
-----------С
В
А
D
Е
F G
75
к
н
Критерий
2
Катеrо ия
Стоимость
Поэици.я
х
Расширонный фильтр
O6ра6отu
Стоимость 1
б
Катеrо ия
Позиция
7
8
Еда
Пирожные
Еда
Пицца
9
10
11
U
Еда
Пицца
Напитки
Кофе
Напитки
Чай
Напитки
Кофе
13
14
15
Еда
Пирожные
1250,00PI
1580,00PI
1
1850,00Pi
370,00PI
530,00PI
420,ООР:
1
Еда ____ __ &VТ!Еб!?_оды
@ _tильтро"ть список на м•ст•
О скоnиро"ть р•,ультат • IIPYГ0• м•сто
(sдsб:SCS14/
11сходный диаnо,он:
ДИОПОJОН У-"101ИЙ:
Помrстить рt])'ЛЬТ4Т в диlln~пон:
lSAS2:SCS4
-=-----=~
~,
от олько Уt1НКальныr ИПИ(И
1070,00 Р:
__ 1290,00PJ
ОК
Отм•н•
16 1
17
18
Рис.
5.
2.18.
Диалоговое окно Расширенный фильтр
Используйте поля Диапазон списка
range)
(List range)
и Диапазон условий
(Criteria
для указания наборов данных и диапазонов критериев, после чего нажми
те кнопку ОК, чтобы применить фильтр.
Очистить все примененные вами фильтры можно, нажав в разделе Сортировка
и фильтр (Sort & Filter) вкладки Данные (Data) кнопку Очистить (Clear) . А чтобы
вновь применить фильтр после обновления данных, нажмите в разделе Сорти
ровка и фильтр (Sort & Filter) вкладки Данные (Data) кнопку Повторить (Reapply).
Пояснение
В этом разделе показано, как добавлять инструмент фильтрации к столбцам в набо
ре данных, а также представлен более сложный параметр Расширенный фильтр
(Advanced Filter),
который можно использовать для реализации сортировки по
более сложным критериям. Обратите внимание, что фильтровать данные можно
также с помощью функции ФИЛЬТР (см. разд.
2.15. Закрепляем
7.3).
области
Задача
Вы хотите, чтобы при прокучивании рабочего листа заголовки столбцов или другие
строки и столбцы не смещались.
Решение
Когда вы работаете с большим набором данных, имеющим заголовки столбцов,
может оказаться полезным закрепить первую строку с заголовками, чтобы они не
исчезали с экрана по мере прокрутки данных. Чтобы закрепить часть экрана, вы-
76
1
Глава
2
полните команду Вид
(View)
1
Окно
(Window)
1
Закрепить области
(Freeze Panes)
и выберите один из параметров. Например, здесь можно закрепить верхнюю стро
ку, первый столбец или строки и столбцы на основании выделенных в текущий
момент ячеек.
Пояснение
Это решение
пригодится,
когда вы
работаете с большими
наборами данных,
поскольку оно позволяет закреплять любые заголовки столбцов, чтобы они не про
кручивались. Обратите внимание, что вам не нужно делать это, если данные распо
ложены в таблице, поскольку таблица по умолчанию сохраняет заголовки види
мыми.
2.16.
Используем автосумму
Задача
Вы хотите быстро вычислить сумму, количество или среднее значение чисел
в строке или столбце.
Решение
Быстрым способом вставки суммы чисел в строку или столбец является использо
вание инструмента Автосумма
(AutoSum),
который добавляет формулу СУММ в ука
занные ячейки.
Чтобы использовать инструмент Автосумма
1.
(AutoSum):
Выберите ячейку рядом со строкой или столбцом, значения в которых вам надо
суммировать. Например, чтобы суммировать числа в диапазоне 82:В 1О, вы вы
бираете ячейку В 11, а чтобы суммировать числа в диапазоне
82:D2 -
ячей
ку Е2.
2.
В
разделе
(Function Library) вкладки Формулы
(Editing) вкладки Главная (Ноше)
нажмите кнопку Автосумма (AutoSum) это действие вставит формулу
~СУММ (диапазон} в ячейку, где Excel автоматически определит, какой диапазон ис
(Formulas)
Библиотека
функций
или в разделе Редактирование
пользовать.
3.
Уточните диапазон, если это необходимо, и нажмите клавишу
Инструмент Автосумма
максимальное
или
(AutoSum)
минимальное
<Enter>.
может также вычислять среднее, количество,
число
в
диапазоне
-
щелкните
для
этого
на
стрелке раскрывающегося меню этой команды в ленте и выберите необходимый
вариант.
Если вам нужно найти сумму, количество или среднее диапазона, не вставляя вы
зов функции, используйте строку состояния, расположенную в нижней части рабо
чего листа. Выберите ячейки, которые надо суммировать, и Excel отобразит в стро
ке состояния суммы их значений. Настроить параметры строки состояния можно
в ее контектном меню, вызываемом по щелчку на ней правой кнопкой мыши.
Ссылки и структурированные данные
1 77
Пояснение
В этом разделе предложена быстрая альтернатива ручному вводу вызовов функций
СУММ, СЧ ЁТ, СРЗНАЧ, МАКС или мин . Как и в случае с любой формулой
можность отредактировать создаваемую
2.17.
Excel
Excel,
имеется воз
формулу .
Используем структуру для добавления
промежуточных итогов и групп
Задача
У вас есть набор данных, и вы хотите сгруппировать его строки и включить проме
жуточные итоги.
Решение
Предположим , ваш набор данных имеет заголовки столбцов Ка те гория, Позиция и
Стоимость , и вам надо добавить промежуточные итоги и группировку для каждой
категории (рис .
2.19). Сделать
это можно с помощью инструментов стру ктурирова
ния данных программы Ехсе\.
11 2 1з 1
в
l
G
в
А
1
с
1
4
Кате гори Позици Стоимость
5
Еда
Пирож1
1250,О(Н'
1580,001?
900,(ХН'
Напитки, всего
б
Еда
Пицца
7
Еда
Пицца
8
Еда, всего
9
Итог, всего
D
1850,001?
4680,001?
r
5599,101?
10
11
12
13
Рис.
2.19.
Программа
Excel добавила
промежуточные итоги и группы к данным
Чтобы добавить промежуточные итоги (рис .
1.
2.20):
Убедитесь, что в данных нет пустых строк, и отсортируйте данные по столбцу,
по которому собираетесь сгруппировать данные,
-
в нашем примере это стол
бец Ка тегория.
2.
Выберите одну из ячеек набора данных или весь диапазон и выполните команду
меню Данные
(Data)
1
Структура
(Outline)
1
Промежуточные итоги
которая откроет диалоговое окно Промежуточные итоги
те это диалоговое окно (рис .
2.20),
(Subtotal),
(Subtotal). Используй
чтобы указать, как суммировать данные.
Когда вы нажмете кнопку ОК, Ехсе\ добавит промежуточные итоги к набору дан
ных
и
сгруппирует
строки ,
-
вы
можете
сворачивать
и
разворачивать
их
с
по-
78
Глава
2
мощью кнопок В и Ш, расположенных слева от набора данных (см. рис.
нажимая кнопки Скрыть детали
Detail) в
разделе Структура
(Hide Detail) или Отобразить
(Outline) вкладки Данные (Data).
в
А
1
2
Напитки Кофе
3
аnитки Чай
4
5
аnитК11, всеrо
с
о
атеrори Позици СТоимосrь
370,0011
530,0011
900,0011
1250,0011
1580,0011
1850,0011
4680,0011
Пирож•
б
а
Пицца
7
Еда
Пицца
8
Еда,кеrо
9
Итоr, всего
,,
Е
н
G
F
Промежуточные итоги
2.19) или
(Show
детали
х
?
Qри каждом И3менении а:
J' категория
--
- - - ~ - - . -..,....
Qnepaциst
J
Е
Сумма
До.§_аsить итоги
no:
Категория
По3ИЦИJI
6480,ООР
Стоимость
10
11
12
0 1аменить текущие итоги
13
О Конец страницы междУ груnnами
14
15
0
lб
Итоrи nод данными
~брать асе
Отмена
ок
17
18
Рис.
2.20.
Диалоговое окно Промежуточнь1е итоги
Если ваши данные уже включают промежуточные итоги, можно автоматически
добавить группировку,
(Outline)
1
выполнив
Группировать
(Group)
1
команду
меню Данные
Создать структуру
(Data)
(Auto Outline).
1
Структура
Здесь также
можно добавлять группы вручную, выбрав в раскрывающемся списке Группиро
вать
(Group) раздела Структура (Outline) вкладки Данные (Data) пункт Группи
(Group), и удалять группы, выбрав в раскрывающемся списке Разгруппи
ровать (Unroup) раздела Структура (Outline) вкладки Данные (Data) пункт Уда
лить структуру (Clear Outline).
ровать
Пояснение
Это решение пригодится, если вам нужно автоматически отображать промежуточ
ные итоги в списке данных и группировать строки, чтобы их было проще читать.
Тем не менее, если вам надо увидеть только сводку данных, лучше использовать
сводную таблицу (см. главу
2.18.
11),
поскольку это более гибкий вариант.
Используем таблицы
Задача
У вас есть связанные данные, упорядоченные по строкам и столбцам, и вы хотите
упростить управление и анализ этих данных.
Ссылки и структурированные данные
79
Решение
Имея дело с набором данных, упорядоченных по строкам и столбцам, где каждая
строка является отдельным элементом, весьма удобно работать с этими данными,
если преобразовать их в таблицу.
Таблица -
· •• •
·~
. .
•••
это именованный объект, который автоматически расширяется или
сокращается, когда вы добавляете или удаляете записи, и автоматически заполняет формулы, выполняет форматирование и проверку данных . Таблицы также
упрощают работу со сводными таблицами (PivotTaЫes) и диаграммами.
Чтобы преобразовать диапазон в таблицу, выделите данные (включайте все заго
(Insert) 1 Таблицы
(Styles) 1 Форматировать
ловки), а затем выполните команду меню Вставка
Таблица (ТаЫе) или Главная (Ноте)
Стили
1
(ТаЫеs)
1
как таб
(Fonnat as ТаЫе) и укажите стиль, чтобы открыть диалоговое окно Создание
(Create ТаЫе). Затем ,убедившись, что Excel выбрал верный диапазон
данных, установите флажок Таблица с заголовками (Му tаЫе has headers) - что
бы указать, включает ли диапазон заголовки столбцов (рис. 2.21 ). Когда вы нажме
те кнопку ОК, Ехсе\ преобразует диапазон в таблицу (рис. 2.22).
лицу
таблицы
По умолчанию
Excel
добавляет к каждому заголовку столбца фильтр-стрелки рас
крывающегося списка, которые можно использовать для сортировки и фильтрации
Е
о
с
в
А
F
н
G
Стоимост1
1
Категория Позиция
2
3
Еда
Пирожные
Еда
Пицца
4
Еда
Пицца
5
Напитки
Кофе
б
Напитки
Чай
1250,001?
1580,001?
х
Со,дать таблицу
1850,001?
370,001?
l• •житt расположtниt данных таблицы:
SAS1 :SCS~
530,001?
0
7
8
!аблица с 1аголовками
9
10
11
12
Рис.
2.21 . Диалоговое окно Создание таблицы
в
А
с
о
Е
1 Катеrория а Позиция а Стоимость а
2
Еда
Пи
з
Еда
Пицца
4
Еда
Пицца
5
Напитки
Кофе
б
Напитки
Чай
ожные
1250,001?
1sso,ooyj
1850,001?
370,00J?
530,00J?
7
8
9
10
Рис.
2.22.
Таблица
Excel,
сгенерированная из данных
80
Глава
2
данных (см.разд.
2.14).
Заголовки столбцов остаются в поле зрения при прокрутке
табличных данных, поэтому нет необходимости закреплять их вручную.
Альтернативным способом фильтрации таблицы является использование среза
-
плавающего объекта, который позволяет выбирать, какие значения отображать.
Чтобы вставить срез, выделите ячейку в таблице, выполните команду меню Конст
руктор таблицы (ТаЬ\е
Slicer),
Design)
1
Инструменты
(Tools)
1
Вставить срез
(lnsert
укажите, для каких столбцов вы собираетесь включить срезы, и нажмите
кнопку ОК (рис.
2.23).
G
Рис.
2.23.
Таблица со срезом
Чтобы использовать срез, либо щелкните на значении, которое вам надо отобразить
в таблице, либо используйте кнопку множественного выбора, чтобы выделить не
сколько значений. Здесь также можно выбрать несколько значений, нажав и удер
живая в процессе кнопку
<Ctrl>
или
<Cmd>
(в
Excel
для
macOS).
Чтобы вычислить итоги столбцов и другие сводки, можно воспользоваться строкой
итогов, расположенной внизу таблицы. Для этого сначала добавьте такую строку,
выделив ячейку в таблице и выполнив команду меню Конструктор таблицы
(ТаЬ\е
Design) 1 Параметры стилей таблиц (ТаЬ\е Style Options) 1 Строка итогов
(Total Row). Затем добавьте, отредактируйте или удалите итоги столбца, щелкнув
на ячейке строки итогов для этого столбца и выбрав параметр из его раскрывающе
гося меню (рис.
2.24).
.
1
.
в
А
с
2
Еда
Пирожные
1250,(КН'
з
Еда
Пицца
1580,00 Р
4
5
Еда
Пицца
1850,00PJ
Напитки
~ote
370,ООР
б
Напитки
Чай
530,0011
7
Итог
D
Е
F
5580,oov. • ]
8
9
Рис.
2.24.
Строка итогов таблицы внизу таблицы
Значения в строке итогов автоматически реагируют на фильтры, поэтому, если вы
исключаете строки из таблицы, они будут также исключены из итогов.
Ссылки и структурированные данные
1
81
Чтобы добавить новый столбец в таблицу, как правило, вводят значение в столбец
рядом с ней, а
Excel
автоматически добавляет в таблицу этот столбец. В качестве
альтернативы выделите ячейку и выполните команду меню Конструктор таблицы
(ТаЫе
Design)
или Главная
1
Свойства
(Home)
1
(Properties) 1 Изменить размер таблицы (Resize ТаЫе)
(Cells) 1 Вставить (Insert). Быстро удалить повто
Ячейки
ряющиеся значения из таблицы можно, выделив ячейку и выполнив команду меню
Конструктор таблицы (ТаЫе
ты
(Remove Duplicates),
(Remove Duplicates).
Design)
1
Инструменты
(Tools)
1
Удалить дублика
которая откроет диалоговое окно Удалить дубликаты
Если вам надо преобразовать таблицу обратно в обычный диапазон, выделите
ячейку
в
Design)
1 Инструменты
таблице
и
выполните
(Tools)
команду
меню
Конструктор таблицы
1 Преобразовать в диапазон
(ТаЫе
(Conver1 to Range).
Пояснение
Таблицы включают множество функций, благодаря которым они необходимы для
записей, упорядоченных в диапазонах и столбцах. Их также можно использовать
в сочетании с другими решениями
-
например, из разд.
2.8, 2.12
и
2.13.
В вычисляемые столбцы таблиц разрешается добавлять формулы и использовать их
данные
и
в разд.
2.19.
итоги
за
пределами
таблиц.
Более
подробно
об
2.19.
Используем структурированные ссылки
этом
рассказано
Задача
Вы хотите сослаться на табличные данные в вычисляемом столбце или за предела
ми таблицы.
Решение
Предположим, ваша таблица содержит четыре столбца: Продавец, янв, Фев и мар,
в которых приведены продажи каждого продавца за каждый месяц (рис.
нужно
добавить
столбец
Итого,
который
суммирует
значения
2.25),
каждой
и вам
строки
в столбцах Янв, Фев и Мар.
Решить эту задачу можно, добавив в таблицу вычисляемый столбец, который ис
пользует формулу со структурированной ссылкой
цы (рис.
-
ссылкой на структуру табли
2.26):
1.
Добавьте в таблицу новый столбец с именем Итого.
2.
Введите в первую ячейку столбца итого начало формулы =СУЖ(, выберите в пер
вой строке ячейки в столбцах янв, Фев и Мар, чтобы добавить их диапазон в фор
мулу, а затем введите закрывающую скобку). Если ваша таблица носит имя
Продано, формула должна выглядеть примерно так: =СУММ (Продано [@[Янв]: [Мар]]).
Глава
82
2
А
1
2
В
IL&ЫW11 • L4
1дА
3 ~
4 ,АС
--5 YR
6 EF
7
О
Всеrо
•
Е
15487,0011
24587,0011
23415,0011 j
18236,0011
12684,0011
17954,0011
32457,001?
21459,0011
24387,001?
34 158,00 11
52748,0011
74125,0011
62458,0011
41257,001?
85 276,0011
96 818,00 11
157339,0011
286531,0011.J
8
9
Рис.
Нажмите клавишу
3.
2.25. Данные
<Enter> -
продаж, сведенные в таблицу
Ехсе\ автоматически заполнит этой формулой
остальные строки.
Структурированная ссылка отличается от ссылки на ячейку или диапазон тем, что
она ссылается на части таблицы, а не на ячейки, в которых они находятся. Каждая
ссылка, как правило, включает имя таблицы и один или более спецификаторов
например, в ссылке Продано[@[Янв]: [Мар] J часть Продано [@ [Янв]: [Мар] J
(рис.
относится
-
это имя таблицы, а часть
к диапазону столбцов с янв по Мар в текущей строке
2.26).
G
н
1
2
3
АС
4
5 YR
б
EF
7 Bcero
12684,0011
24 387,0011
74125,0011
62458,0011
17954,0011
32457,0011
96818,0011
34158,0011
52748,0011
157 339,0011
41257,0011
85 276,0011
286 531,00 11
113 820,0011
99529,0011
93 369,0011
170 481,00 11
,1
8
9
Рис.
2.26.
Данные продаж, сведенные в столбец Итого
Искать и редактировать имена таблиц можно, используя поле ленты Имя таблицы
(ТаЫе Name). Вы найдете это поле, выделив ячейку в таблице и перейдя на вклад
ке Конструктор таблицы (ТаЫе Design) в раздел Свойства (Properties).
Спецификаторами структурированных ссылок могут быть следующие части фор
мул:
♦
[имя_столбца)
Ссылается на данные в столбце имя_ столбца, исключая заголовок и строку итогов.
♦
[имя_ столбца_ 1] : [имя_ столбца_ 2]
Ссылается на диапазон, начиная с имя_ столбца_ 1 и заканчивая имя_ столбца_ 2.
♦
[@имя_столбца)
Значение в имя столбца в текущей строке (где находится формула).
Ссылки и структурированные данные
83
[ #Все]
♦
Вся таблица, включая данные, заголовки и строку итогов.
[#Данные]
♦
Ссылается на строки с данными, исключая заголовки и строку итогов.
[#Заголовки)
♦
Заголовки столбцов.
♦
[#Итоги]
Ссылается на строку итогов.
[ [#Итоги),
♦
[имя_столбца]]
Ссылается на ячейку строки итогов имя_ столбца.
То есть спецификатор Продано [Янв] ссылается на данные в столбце янв таблицы Про
дано, а спецификатор =Продано[ [#Итоги]; [Янв] J ссылается на ячейку строки итогов
столбца Янв.
Использовать структурированные ссылки можно как в таблице, так и за ее преде
лами.
Например,
при
вводе
в
ячейку
за
пределами
таблицы
формулы
=СУММ(Продано[Янв]) вычисляется сумма всех значений в столбце Янв таблицы Продано,
в то время как при вводе формулы =Продано [ [#Итоги] ; [Янв]
J возвращается значение
в строке итогов столбца янв. Эти значения могут различаться, если таблица фильт
руется, поскольку строки итогов реагируют на фильтры.
Спецификатор
[#данные]
=СТЮ:КИ(Продано)
можно
и =СТЮ:КИ
иногда
опускать.
(Продано[#Даниые])
Так,
при
возвращается
вводе
формул
количество строк
данных в таблице продано.
Как и в случае со ссылками на ячейки, структурированные ссылки могут быть от
2.1),
носительными или абсолютными (см. разд.
что влияет на их поведение при
копировании.
Если вам нужна относительная ссылка на какой-либо столбец, используйте запись
имя_таблицы[имя_столбца], а если относительная ссылка на текущую строку- запись
имя_таблицы[@имя_столбца].
столбца]] -
если
вам
Можно
нужна
также
записать
абсолютная
[имя_таблицы[@[имя_столбца]: [имя_столбца] J -
[имя_таблицы[ [имя_столбца]: [имя_
ссылка
на
какой-либо
столбец,
и
если вам нужна абсолютная ссылка,
которая ссылается на ячейку в текущей строке.
Чтобы сослаться на диапазон столбцов
ка,
-
-
если вам нужна относительная ссыл
используйте запись:
имя_таблицы[имя_столбца_l] :имя_таблицы[имя_столбца_2]
а
если
нужна
относительная
ссылка,
которая
ссылается
запись:
имя_ таблицы[@имя_ столбца_ 1] :имя_ таблицы[@имя_ столбца_ 2]
на
текущую
строку,
-
84
Глава
2
Если же вам нужна абсолютная ссылка
-
запись:
имя_ таблицы[ [имя_ столбца_ 1]: [имя_ столбца_ 2]]
а если абсолютная ссылка, которая ссылается на текущую строку,
имя_ таблицы[@ [имя_ столбца_ 1]
-
запись:
: [имя_ столбца_ 2]]
Пояснение
В этом разделе подробно рассказано, как использовать структурированные ссылки
в вычисляемых столбцах и за пределами таблицы. Это может оказаться полезным,
если вам надо вставить строку итогов или сослаться на табличные данные в другом
месте вашей электронной таблицы.
Некоторые из функций
Excel
(например, именованные диапазоны и условное фор
матирование) не распознают структурированные ссылки, поэтому вам придется
вместо них использовать ссылки на ячейки. Однако
Excel
отслеживает диапазон
таблицы, поэтому ссылки на ячейки таблицы автоматически обновляются, когда вы
добавляете или удаляете ее строки.
ГЛАВА
3
Используем формулы
Большинство электронных таблиц используют формулы для вычислений и манипу
лирования данными с помощью операторов, функций, ссылок и констант. Однако
по мере усложнения формул они могут стать громоздкими и предрасположенными
к ошибкам.
В этой главе содержатся решения, призванные помочь вам работать с формулами и
преодолевать любые проблемы более эффективно. Рассматриваемые здесь области
включают:
♦
использование арифметических операторов, операторов сравнения и ссылок,
включая те, что возвращают диапазон разлива или неявное пересечение;
♦
работу с массивами (матрицами значений), включая константы, динамические
массивы и унаследованные массивы;
♦
♦
исправление ошибочных значений в Ехсе\;
использование инструментов проверки формул для анализа и исправления оши
бок в формулах, включая отслеживание взаимозависимостей и ошибок, прове
дение проверок на наличие ошибок, пошаговую трассировку формул и просмотр
значений ячеек и формул с помощью диалогового окна Окно контрольного
значения
♦
(Watch);
использование автоматических, ручных и повторяющихся вычислений для кон
троля пересчета формул и разрешения циклических ссылок.
3.1.
Используем операторы и порядок очередности
Задача
Вы хотите узнать, какие операторы доступны в Ехсе\, что они выполняют и поря
док их очередности.
Решение
Ехсе\ включает четыре типа операторов: арифметические, сравнения, конкатенации
текста и операторы ссылок.
Арифметические операторы позволяют вам выполнять базовые математические
операции и возвращать числа. В их число входят:
86
♦
Глава
+и
3
-
Это операторы сложения и вычитания (например: =Al+Вl или =Al-Вl). Вы можете
также использовать знак «минус»
например:
♦
( -)
для обозначения отрицательных чисел
-
=-2.
*и/
Эти операторы используются для умножения и деления (например: =Al *Вl или
=Al/B1).
♦
%
Этот оператор служит для вычисления процентов или деления на
100
(например:
=20%), что эквивалентно =20/100 или =О, 2.
♦
л
Это оператор возведения в степень. К примеру, формула =8л2 вычисляет 82, что
возвращает
64.
Операторы сравнения позволяют вам сравнивать два значения и вернуть значения
ИСТИНА ИЛИ ЛОЖЬ. К НИМ ОТНОСЯТСЯ:
♦
=и<>
Эти операторы проверяют, равно или нет одно значение другому. Например,
=Al=Bl возвращает истиНА, если значение в ячейке А I равно значению в ячейке В 1,
а =Al<>Вl возвращает истиНА, если их значения не равны.
♦
<и<=
Эти операторы проверяют, меньше ли одно значение другого или меньше либо
равно другому. Например, =Al<Вl возвращает ИСТИНА, если значение в ячейке А 1
меньше значения в ячейке В 1, а =Al <=Вl возвращает ИСТИНА, если значение в ячей
ке А I меньше или равно значению в ячейке В 1.
♦
>и>=
Эти операторы проверяют, больше ли одно значение другого или больше либо
равно другому. Например, =Al>Вl возвращает ИСТИНА, если значение в ячейке А 1
больше значения в ячейке В 1, а =Al>=Вl возвращает ИСТИНА, если значение в ячей
ке А
I
больше или равно значению в ячейке В 1.
Оператор конкатенации текста
-
это & (амперсанд), который используют для
соединения двух текстовых строк. Подробнее о применении этого оператора рас
сказано в разд.
5.1.
Операторы ссылок объединяют ячейки или диапазоны. В их число входят:
♦
Это оператор диапазона. Например, диапазон А 1:А I О ссылается на ячейки с А 1
по А I О включительно.
♦, И;
В зависимости от ваших региональных настроек (см. разд.
3.2)
для объединения
диапазонов в некоторых функциях можно использовать либо оператор
, , либо ; .
Используем формулы
Например, формула =НАИМЕНЬШИЙ ( (Al: Al о; с1: с1 о) ; з)
шее число в диапазонах А 1:А 1О и С 1:С 1О
( см.
1
87
возвращает третье наимень
разд.
8. 6).
Обратите внимание,
что она дважды учитывает все ячейки в каждом диапазоне, поэтому это нестро
гое математическое объединение.
♦ «пробел»
Это оператор пересечения, который возвращает ячейки, общие для двух диапа
зонов. Например, =Al:AlO Аб:сб возвращает значение в ячейке А6, потому что она
встречается в обоих диапазонах.
♦
#
Это оператор диапазона разлива, который ссылается на весь диапазон в формуле
динамического массива (см. разд.
бочных значениях
3.5). Excel
таких как #ИМЯ!, -
-
также использует символ # в оши
чтобы указать, когда ширина ячейки
недостаточна для отображения ее содержимого или когда ячейка содержит не
верный формат для ее значения.
♦
@
Это оператор неявного пересечения. Он используется вместе со структуриро
ванными ссылками для ссылки на текущую строку (см. разд.
ские массивы (см.разд.
2.19)
3. 6).
-
Каждый оператор работает с определенными типами значений
например, с чис
лами или текстом. Когда вы вводите значения того или иного типа,
их
соответствующим
оператор
+
образом
преобразовать.
Так,
если
вы
ожидает числовые значения.
ошибку #ЗНАЧ!, потому что
Excel
Однако
формула
пытается
Excel
введете формулу
преобразует тестовые строки "3" и "5" в числа
="3"+"5", Excel
и динамиче
3
и
потому что
5,
="3+5"*2
возвратит
не может преобразовать текст "З+ 5" в число.
Если формула содержит несколько операторов,
Excel
выполняет их в следующем
порядке:
1.
Оператор диапазона
2.
Оператор неявного пересечения
3.
Оператор пересечения «пробел» и операторы объединения:, или;.
4.
Оператор «минус»
5.
Оператор процента-%.
6.
Оператор возведения в степень
7.
Операторы умножения и деления:* и/.
8.
Операторы сложения и вычитания:+ и-.
9.
Оператор конкатенации текста-&.
1О.
-
( -),
Операторы сравнения:
:.
-
@ и оператор диапазона разлива
-
#.
если указывает на отрицательное число.
-
=, <, >, <=, >=
л.
и
<>.
Если формула содержит операторы с одинаковым приоритетом, то
Excel
вычисляет
их слева направо. Чтобы изменить порядок вычисления, можно использовать круг
лые скобки, поскольку
Excel
вычисляет сначала выражения в круглых скобках,
-
88
1
Глава
3
например, формула
=1+2*3
в то время как формула=
вращая
умножает
(1+2) *З
2
на
3
и добавляет к результату
складывает
2
и
I
1,
возвращая
и умножает результат на
3,
7,
воз
9.
Пояснение
В этом разделе описаны операторы
Excel
и представлен порядок их очередности.
Большинство этих операторов часто используются в формулах
в то время как
Excel,
другие (такие как# и@), менее известны.
Дополнение
В качестве операторов И и ИЛИ в формулах массивов также можно использовать
операторы
3.2.
* и + (см.разд. 7. 6).
Используем
Excel
в различных регионах
и на разных языках
Задача
Вы хотите узнать, как региональные настройки и настройки языка вашей операци
онной системы влияют на работу
Excel.
Решение
Региональные настройки и настройки языка операционной системы могут влиять
на поведение
Excel
несколькими способами.
Настройки языка операционной системы определяют имена, которые
Excel
исполь
зует для обозначения своих функций. Если интерфейс системы настроен на англий
ский язык, вы
-
чтобы сложить числа
будете использовать функцию suм, если
-
на немецкий, воспользуетесь функцией SUММЕ, а если язык русский, то соответствен
но примените функцию СУММ. Разобраться с этим вам поможет переводчик функций
Excel 1 -
дополнение, которое переводит имена функций на различные языки, а
также веб-сайт Ехсе\- Translator2.
Десятичный разделитель, принятый в вашем регионе, также может влиять на напи
сание вами формул, поскольку он определяет, какие символы вы используете для
разделения аргументов функции. Если в вашем регионе в качестве десятичного
разделителя применяют точку, тогда ваш разделитель аргументов
если
в
вашем
регионе
десятичным
разделителем
аргумента для вас будет точка с запятой
1 См.
2
https://oгeil.ly/7CzOA.
См. https://oгeil.ly/d21Fp.
;
(см. разд.
служит
3.1).
-
запятая,
это запятая, но
разделителем
Применение для десятич-
89
Используем формулы
ного разделителя запятой также влияет на то, как вы определяете константы масси
вов (см.разд.
3.3).
Если вы работаете в Excel для Windows, то можете переопределить десятичный
разделитель вашей операционной системы, выполнив команду меню Файл (File) 1
Параметры (Options) 1 Дополнительно (Advanced) и установив в открывшейся
панели флажок Использовать системные разделители (Use System Separators).
ПараметВ Excel для macOS для этого следует выполнить команду меню Excel
ры (Preferences) 1 Правка (Edit) и установить флажок Использовать системные
I
разделители
(Use System Separators).
Ваши региональные настройки влияют в том числе и на то, как
Excel
интерпрети
рует и форматирует любые вводимые вами даты. Например, если вы введете
Excel
=1/12/2025,
l декабря -
интерпретирует эту дату как
12
января в одних регионах и как
в других.
Пояснение
В этом разделе рассказано о том, как настройки языка и региона могут повлиять на
работу
Excel.
Обратите внимание, что если вы обновите свои настройки,
Excel
автоматически применит их ко всем существующим рабочим книгам, которые вы
открываете.
3.3.
Используем константы массивов
Задача
Вы хотите применить жестко заданный набор значений в формуле или использо
вать его для указания значений в столбце и/или строке.
Решение
Предположим, что вам надо найти среднее трех наибольших значений в диапазоне
А1:А\О.
Сделать
можно
это
является
которая
{ 1; 2; з J) ) ,
с
помощью
более
формулы
=СРЗНАЧ(НАИБолыш1й(Аl:АlО;
формулы
вариантом
компактным
=СРЗНАЧ(НАИБОЛЫI!ИЙ(Аl:А10;1);НАИБОЛЫ!!ИЙ(Аl:А10;2);НАИБОЛЬШИЙ(Аl:А10;3))
Фрагмент {1;2;3) в формуле
-
это константа массива, жестко заданный список
числовых, текстовых или логических значений, заключенный в фигурные скобки
{).
При этом
{1; 2; 3 J
является константой массива, содержащей числа
время как {"а";"Ь";"с")
-
1, 2
и
3,
в то
это константа массива, содержащая текстовые значения
а, ь и с. Обратите внимание, что константы массива не могут содержать функции,
формулы, ссылки или другие массивы,
-
например, массив
= {
1; 2; Al) недопустим,
т. к. содержит ссылку на ячейку.
Если региональные настройки
вашей операционной
системы предусматривают
в качестве десятичного разделителя запятую, разделяйте каждое значение в мас
сиве с помощью символа\ вместо запятой. Так, чтобы задать массив, содержащий
значения
1, 2
и
3,
вы должны будете использовать запись
{ 1\2\3)
(см. разд.
3.2).
90
Глава
3
Константы массива обычно применяются для передачи в формулу нескольких зна
чений вместо одного и часто возвращают динамический массив (см. разд.
3.4).
На
пример, формула =НАИБОЛЬШИЙ (Al: Al о; { 1; 2; з) J возвращает массив, содержащий три
наибольших числа в диапазоне
Al:AIO.
Однако формула =СРЗНАЧ(НАИвольший(Аl:АlО;
{1; 2; з) (Al: Al о; {1; 2; з) J I возвращает одно значение, поскольку функция СРЗНАЧ ис
пользует три значения, чтобы вернуть одно число.
Константу массива также можно использовать, чтобы указать значения в горизон
тальном, вертикальном или 2D-массиве. Так, когда вы задаете горизонтальный мас
сив, используя разделитель-запятую, при вводе ={1;2;3} в ячейке отображаются
значения в строке. Когда вы задаете вертикальный массив, используя в качестве
разделителя точку с запятой, при вводе ={1;2;3} отображаются значения в столбце.
И наконец, когда вы задаете двумерный массив, используя разделитель-запятую
для строковых значений и точку с запятой для отделения каждой строки, то при
вводе ={1;2;3;4;5;6} отображаются две строки с числами
с числами
4, 5 и 6 -
и
1, 2
3
в первой строке и
во второй.
Если вы работаете в
Excel 365,
то, чтобы увидеть значения массива, вам доста
точно ввести в ячейку формулу массива (например, ={1;2;3}) и нажать клавишу
<Enter>. В более ранних версиях Excel для этого понадобится выбрать весь вы
ходной диапазон, ввести формулу в верхнюю левую ячейку, а затем нажать комби
нацию клавиш <Ctrl>+<Shift>+<Enter> (см. также разд. 3.4).
Пояснение
Константы массива являются удобным способом жесткого определения числовых,
текстовых или логических значений без необходимости ввода их в диапазон ячеек.
Рекомендуется присваивать имена всем значениям, которые вы собираетесь ис
пользовать повторно (см. разд.
3.4.
2.6).
Используем
динамические и устаревшие формулы массивов
Задача
Вы хотите использовать формулу, которая возвращает в массив несколько зна
чений.
Решение
Предположим, в диапазоне ячеек
жить каждое из них на
2
Al:A4
содержится набор чисел, и вам надо умно
и поместить результаты в диапазон
формулы =А1*2 в ячейку В 1, формулы =А2*2 в ячейку
82
жения того же результата использовать формулу массива
2021
или
Excel 365)
-
Excel 2021
Вместо ввода
динамическую (в
или устаревшую (в более старых версиях
Динамическая формула массива, доступная в
81 :84.
и т. д., можно для дости
или
Excel
Excel).
Excel 365,
возвращает
несколько значений в массив с изменяемым размером и разливает их за границы
Используем формулы
91
ячейки, заполняя несколько соседних ячеек. Например, чтобы в нашем примере
с использованием динамической формулы массива заполнить диапазон В 1: В4 , вы
просто вводите
=Al :А4*2
в ячейку В 1, и по нажатию клавиши
автоматически заполнит результатами диапазон
разлива (рис.
<Enter>
программа
-так называемый диапазон
3.1).
,I
с
в
А
з
4
D
Е
F
-
=А1 : А4*2
1
2
3
4
2
Рис .
Bl :В4
4
6
8
3.1. Динамические формулы массива автоматически разливаются в соседние ячейки
К сожалению, если вы работаете в более старых версиях
Excel,
динамические фор
мулы массива вам недоступны. Однако достичь аналогичных результатов можно,
используя устаревшую
так называемую
-
CSE3 -
формулу массива. Устаревшие
формулы массива работают аналогично динамическим формулам массива, за ис
ключением того, что они автоматически не меняют размер и не разливаются, и вам
понадобится для их ввода нажать комбинацию клавиш
<Ctrl>+<Shift>+<Enter>.
Например, чтобы заполнить диапазон В 1:В4 , используя устаревшую формулу мас
сива:
1.
Выделите диапазон В 1:В4 .
2.
Введите на панели формул формулу
3.
Нажмите
для
+<Enter>.
Когда вы это сделаете,
=Al : А4*2 .
формулы
применения
Excel
комбинацию
клавиш
<Ctrl>+<Shift>+
заключит формулу в фигурные скобки ,
чтобы она приняла вид {=Al :A4 *2J, и заполнит результатами диапазон В 1:В4
(рис .
3.2).
В1
А
1
Рис.
3.2.
х ✓ /х
EJ
V
:
B
{=Al :A4 *2)
С
D
Е
F
1
2
2
з
3
4
4
Устаревшие формулы массива не разливаются автоматически в соседние ячейки,
и вам понадобится нажать комбинацию клавиш
<Ctrl>+<Shift>+<Enter>, чтобы
их применить
Пояснение
В этом разделе мы рассмотрели пример использования динамических и устаревших
формул массива. Как правило , динамические формулы массива проще в использо-
3
CSE означает <Ctrl>+<Shift>+<Enter> -
типа формул ы.
комбинацию клавиш , которую нужно нажать для ввода этого
92
Глава
3
вании, чем устаревшие, т. к. они меняют размер массива, когда вы добавляете или
удаляете данные из исходного диапазона, и автоматически разливаются в соседние
ячейки.
Поведение динамического массива присуще всем функциям
365,
Excel 2021
и
Excel
поэтому любая формула, возвращающая более одного значения, будет авто
матически разливаться.
Дополнение
Если вы используете
Excel 365,
то с помощью вспомогательных лямбда-функций
можете заставить разливаться функцию, которой не свойственно это делать. Под
робнее об этих функциях рассказано в главе
3.5.
17.
Используем ссылки на диапазон разлива
Задача
У вас есть формула динамического массива, и вы хотите сослаться на весь ее диа
пазон разлива.
Решение
Предположим, в ячейке В 1 у вас содержится формула динамического массива
(см. разд.
3.4),
и вам требуется получить ссылку на ее диапазон разлива. Сделать
это можно с помощью оператора диапазона разлива #, введя его в первую ячейку
в диапазоне разлива (в ту, что содержит формулу динамического массива).
Так, чтобы получить ссылку на диапазон разлива ячейки В 1, вы должны ввести
=Bl#, а чтобы добавить, например,
=Вl#+З (рис.
3
к каждому значению
-
дополнить запись до
3.3).
в
А
Рис.
3.3.
1
с
о
Е
F
=В1#+3
2
2
2
4
3
3
6
9
4
4
8
11
1 1
7
Использование оператора диапазона разлива
# для
получения ссылки
на диапазон разлива ячейки
Пояснение
Формулы динамических массивов автоматически изменяют размер своих диапазо
нов разлива, когда данные добавляются в исходный диапазон или удаляются из не
го. Использование оператора
# является удобным способом создания ссылки на
диапазон разлива, поскольку он автоматически подстраивает размер диапазона раз-
Используем формулы
93
лива под размер исходного диапазона, освобождая вас от необходимости вручную
обновлять какие-либо формулы, которые ссылаются на него.
Дополнение
Для создания динамических именованных диапазонов на основе формул динамиче
ского массива можно использовать оператор # (см.разд.
3.6.
2. 7).
Предотвращаем поведение динамического массива
Задача
У вас есть формула динамического массива, которая возвращает несколько значе
ний, и вы хотите предотвратить ее разлив в другие ячейки.
Решение
Если вы работаете в версии
(см. разд.
3.4),
Excel,
которая поддерживает динамические массивы
то любая формула, которая возвращает несколько значений, по
умолчанию разливает свои результаты на соседние ячейки. Однако можно предот
вратить такое поведение, поместив перед именем функции или диапазона оператор
неявного пересечения
@,
который сводит несколько значений к единственному зна
чению.
Оператор
♦
@работает следующим
образом:
если формула возвращает единственный результат, то оператор
@возвращает
этот же результат. Так, если формула динамического массива в ячейке В 1 воз
вращает одно значение, то формула =@Вl# возвращает это значение;
♦
если формула возвращает диапазон, то оператор@ возвращает значение в той же
строке или в том же столбце, что и формула. То есть если формула динамиче
ского массива в ячейке В 1 разливается, чтобы заполнить диапазон В 1:В4, то при
вводе
в ячейку С 1 возвращается значение из ячейки В 1, а при вводе этой
=@Bl#
же формулы в ячейку СЗ возвращается значение из ячейки В3;
♦
если формула возвращает массив, то оператор
массива. То есть при вводе
=@{1;2;3}
@возвращает первое значение
1, поскольку это и есть первое
возвращается
значение массива.
Оператор @ часто используется для обратной совместимости с более старыми
версиями
мер, в
Excel, которые не подцерживают работу динамического массива. Напри
Excel 365 при вводе =Al :A4*Bl :В4 возвращается динамический массив из
четырех значений, в то время как при вводе той же формулы в более старой версии Excel возвращается единственный результат. Поэтому, когда вы открываете
в Excel 365 рабочую книгу, созданную вами в более старой версии программы,
Excel
автоматически добавляет оператор @ в формулы, которые теперь могут воз
вращать несколько значений, чтобы гарантировать, что они вернут единственный
результат.
94
1
Глава
3
Пояснение
Оператор @ обычно используется в таблицах для ссылки на значения в текущей
строке (см. разд.
2.19).
Однако его также можно применить для предотвращения
поведения по умолчанию динамического массива в
Excel 2021 и Excel 365
Excel.
и для
поддержки обратной совместимости с более старыми версиями
3. 7.
Используем Вставку функции
или инструмент Построитель формул
Задача
Вы хотите найти функцию или руководство по ее использованию.
Решение
Когда вы вводите формулу в ячейку, то обычно набираете ее напрямую в ячейке
или в строке формул. По мере ввода формулы
Excel
отображает информацию о ка
ждом аргументе функции, а его функция Автозаполнение
(AutoComplete)
показы
вает список подходящих функций и определенных имен.
(AutoComplete) для формулы
(Options) 1 Формулы
(Formulas) и сняв флажок Автозавершение формул (Formula AutoComplete) в от
крывшейся панели. Если вы используете Excel в macOS, то найдете этот флажок,
выполнив команду меню Excel I Параметры (Preferences) 1 Автозаполнение
(AutoComplete).
В
Excel
для
Windows
отключить Автозаполнение
можно, выполнив команду меню Файл
(File)
1 Параметры
Если вам необходима дополнительная помощь, выберите ячейку, в которую соби
раетесь добавить формулу, щелкните на значке [&] Вставка функции (Insert
Function), расположенном рядом со строкой формул, или выполните команду меню
Формулы (Formulas) 1 Библиотека функций (Function Library) 1 Вставить функ
цию (lnsert Function), после чего откроется диалоговое окно Вставка функции
(lnsert Function) в Excel для Windows (рис. 3.4) или панель Построитель функций
(Function Builder) в Excel для macOS. Эти инструменты дают возможность искать
или выбирать функцию и помогают вводить значения ее аргументов.
Пояснение
Диалоговое окно Вставка функции
функций
(Function Builder)
(lnsert Function)
и инструмент Построитель
полезны, когда вам нужна дополнительная помощь при
вводе функции. Они также позволяют просматривать список доступных функций,
за исключением секретных
-
таких как РАЗНдАТ (см.разд.
6.13).
Используем формулы
Вставка функции
95
х
?
.Ооиск функции.:
Введите краткое о;;-исание действия, которое нужно
[·выполнить,
и нажмите кнопку · найти ·
]!;атегория: [·полный алфавитный nерече~ь
!:!айти
-_J:j
ВЫберите J!!ункцию :
ACOS
ACOSH
АСОТ
АСОТН
ASIN
ASINH
АВS(чиспо)
Возвращает МОдУЛЬ (абсолютную величину) числа.
Справка по этой функции
Рис.
3.8. Добавляем
3.4.
ок
Отмена
Диалоговое окно Вставка функции
заметки в числовые формулы
Задача
У вас есть формула, которая возвращает число, и вы хотите добавить к ней коммен
тарий.
Решение
К формуле, которая возвращает число, можно добавить заметку с помощью функ
ции ч. Эта функция имеет синтаксис =Ч ( значение)
и преобразует свой аргумент
значение в число. При этом если значение является числом, то функция возвращает
значение неизменным, но если это текстовая строка, функция возвращает ноль. Это
значит, что допускается использовать синтаксис =формула+ч ( заметка ) для добавления
заметки к числовой формуле -
например, так: =СУММ (Al :АЗ ) +Ч ( " Суммирует
первые
три
ячейки" ) , поскольку добавление нуля к формуле =СУММ (A l :АЗ ) не изменит ее значения.
•
/
•
Этот метод правильно работает только с функциями, которые возвращают числа,
включая дату и время. Если же вы попытаетесь задействовать ч с текстовой функ-
цией, это приведет к ошибке #ЗНАЧ 1 , а при использовании ее с функцией, возвра-
• щающей логическое значение ИСТИНА или ложь, ИСТИНА преобразуется в 1, а ложь -
в О.
Пояснение
Функция ч предлагает удобный способ добавления комментария к числовой фор
муле. Это более рационально, чем использование решения из разд. 1.16, и она не
ограничена формулами ячеек.
96
Глава
1
3.9.
3
Отображаем формулы
Задача
Вы хотите отобразить формулу, содержащуюся в одной или нескольких ячейках.
Решение
Если вам надо увидеть все формулы рабочего листа вместо их результатов, выпол
ните
команду
Auditing)
1
меню
Формулы
Показать формулы
Зависимости формул (Formula
(Formulas)
(Show Formulas). Эта команда позволяет переклю
1
чаться между просмотром формул и их значений, поэтому выполните ее повторно,
чтобы увидеть результаты расчетов.
Если вам надо увидеть формулу, содержащуюся в какой-либо одной ячейке, то
можете использовать функцию Ф.ТЕКСТ -
ссылка -
она принимает вид =Ф.ТЕКСТ(ссылка}, где
это ячейка или диапазон, формулу которого собираетесь посмотреть.
Таким образом, если ячейка А 1 содержит формулу =СЕrодня (}, то при вводе в ячей
ку А2 формулы =Ф.ТЕКСТ(Аl) в ней отобразится текст =СЕГОДНЯ().
Если вам нужно ввести формулу в ячейку без ее вычисления Excel, то поставьте
перед
формулой
апостроф.
Например,
при
вводе
в
ячейку
АЗ
формулы
'=СЕГОДНЯ() в ней вместо текущей даты отобразится текст =СЕГОДНЯ().
'
Пояснение
Это решение пригодится, если вам надо увидеть формулу ячейки, не выбирая ее
перед этим. Как правило, команду Показать формулы
(Show Formulas)
ют, чтобы увидеть все формулы рабочей книги, а функцию Ф.ТЕкст -
использу
для отобра
жения одной формулы.
3.1 О.
Используем Окно контрольного значения
Задача
Вы хотите отслеживать значения ячеек и формулы, включая находящиеся на дру
гих рабочих листах и в других рабочих книгах.
Решение
Увидеть значение ячейки можно с помощью инструмента Окно контрольного
значения
(Watch) -
он позволяет отслеживать значения ячеек, включая находя
щиеся на других рабочих листах и в других рабочих книгах.
Используем формулы
Чтобы добавить ячейку в инструмент Окно контрольного значения
1.
Выберите ячейку, которую вам надо посмотреть.
2.
Выполните команду меню Формулы
ния
3.
(Formulas)
1
97
(Watch):
Окно контрольного значе
(Watch).
Нажмите в открывшемся окне (рис.
ние
(Add Watch),
а затем
-
3.5)
кнопку Добавить контрольное значе
кнопку Добавить
(Add)
в появившейся панели. Это
действие добавит ячейку в Окно контрольного значения
(Watch).
vx
Окно контрольного значения
J:;, t:lобавить контрольное значение...
'
Книга
Лист
Ячейка
Значение
Используе>1 фор•tулы.хl5Х
Операторы
А1
1
Используе" фор•tулы .х l5х
Операторы
F1
12
=(А1 : Вб Вб:С10)
Используе" фор•tулы.хl5 х
Операторы
D15
#ЗНАЧ!
= · з -s··2
Используем фор•tулы .х l5 х
Массивы
Е1
9
=СРЗНАЧ(НАИБОЛЬШИЙ(А1:А10;{1;2;3}))
Рис.
Имя
3.5.
Фор"ула
Инструмент Окно контрольного значения
Окно контрольного значения
В зависимости от вашей версии
(Watch) допускается перемещать или закреплять.
Excel, его можно закрепить под лентой или помес
тить в середину вашего экрана в виде плавающего окна .
Чтобы удалить ячейку из инструмента Окно контрольного значения
(Watch), вы
(Delete
берите в нем ячейку и нажмите кнопку Удалить контрольное значение
Watch).
Пояснение
Инструмент Окно контрольного значения
(Watch)
предоставляет удобный способ
просмотра значений ячеек без необходимости прокрутки или перехода к ним. Его
полезно использовать в ситуациях, когда у вас объемная электронная таблица, по
скольку это даст возможность просматривать интересующие вас ячейки из одного
места и подтверждать вычисления и результаты.
Дополнение
Оrслеживать значения ячеек можно также, создав связанный рисунок (см.разд.
3.11.
13. 9).
Отображаем взаимозависимости ячеек
Задача
Вы хотите увидеть, на какие ячейки и диапазоны ссылается формула или какие
ячейки ссылаются на определенную ячейку.
98
Глава
3
Решение
Предположим, в одной из ячеек содержится формула, и вам надо узнать, какие зна
чения ячеек она использует. В этом вам поможет инструмент Влияющие ячейки
(Trace Precedents),
который рисует стрелки от ячеек и диапазонов, используемых
формулой, к самой формуле. Чтобы применить этот инструмент, выполните коман
ду меню Формулы
(Fonnulas)
те кнопку Влияющие ячейки
1
Зависимости формул
(Trace Precedents) -
(Fonnula Auditing)
и нажми
инструмент стрелками покажет
непосредственные зависимости формул, нажмите кнопку вновь, чтобы увидеть
зависимости этих зависимостей, и т. д. (рис.
3.6).
D
Рис.
3.6.
Е
F
Инструмент Влияющие ячейки рисует стрелки ко всем ячейкам, от которых зависит формула
lr,.·~
••
Excel, как правило, использует синие стрелки, чтобы изобразить взаимосвязи межi
ду ячейками и диапазонами. Красная же стрелка указывает на то, что ячейка или
!
диапазон передает в другую ссылку значение ошибки. Подробнее об этом расска-
'
зано в разд. 3.13.
Инструмент Зависимые ячейки
работает аналогично инстру
менту Влияющие ячейки
он показывает, где находится
(Trace Dependents)
(Trace Precedents), только
ссылка на конкретную ячейку. Чтобы воспользоваться этим инструментом, выбе
рите ячейку, а затем выполните команду меню Формулы
(Formulas) Зависимости
(Fonnula Auditing) и нажмите кнопку Зависимые ячейки (Trace
Dependents) - инструмент стрелками покажет непосредственные зависимые ячей
1
формул
ки, нажмите кнопку вновь, чтобы увидеть непосредственные зависимости зависи
мых ячеек, и т. д. (рис.
3.7).
D
Е
F
1
2
з
Рис.
3.7.
Инструмент Зависимые ячейки рисует стрелки ко всем ячейкам,
которые ссылаются на выбранную ячейку
Если вам больше не нужно видеть стрелки инструментов, удалите их, выполнив
команду меню Формулы
Убрать стрелки
(Formulas)
(Remove Arrows).
1
Зависимости формул
(Formula Auditing)
1
Пояснение
Это решение предлагает удобный способ визуализации взаимосвязей между ячей
ками или определения того, где используется ячейка в незнакомой рабочей книге.
Используем формулы
1
99
Применить его можно как для одной ячейки, так и для нескольких ячеек сразу, по
этому, если вам надо увидеть все взаимозависимости между ячейками рабочей кни
ги, выделите все ячейки и выполните команду меню Формулы
симости формул
(Formula Auditing) Влияющие
Зависимые ячейки (Trace Dependents).
3.12.
1
ячейки
(Formulas) 1 Зави
(Trace Precedents) или
Выполняем фоновую проверку ошибок
Задача
Вы хотите, чтобы
Excel
добавлял индикатор ошибки к ячейкам, которые могут со
держать ошибки.
Решение
Excel может выполнять фоновую проверку ошибок и помечать ячейки с потенци
альными ошибками. Выявив такую ячейку, он добавляет индикатор ошибки ~ в ее
левый верхний угол и отображает кнопку ошибки [Ж], когда вы эту ячейку выде
ляете.
Нажав на кнопку ошибки ячейки, вы откроете меню с кратким описанием ошибки и
список параметров, которые помогут ее исправить. В их число входят:
♦
Справка по этой ошибке.
Эта справка предоставляет больше информации об ошибке и предлагает полез
ные советы по ее исправлению.
♦ Источник ошибки.
Этот параметр использует инструмент Источник ошибки
(Trace
Еттоr),. чтобы
выделить ссылки ячеек, которые содержат ошибочные значения (см.разд.
3.14).
♦ Показать этапы вычисления.
Этот
параметр
Formula),
откроет диалоговое
окно
Вычисление
формулы
(Evaluate
позволяющее вам оценить различные части формулы и пошагово про
смотреть ее вычисления.
♦ Пропустить ошибку.
Этот параметр удаляет индикатор ошибки ячейки.
♦ Изменить в строке формул.
Этот параметр закрывает меню и смещает фокус на строку формул.
♦ Параметры проверки ошибок.
Этот параметр позволяет обновлять правила проверки ошибок в
Excel
и сбро
сить любые ошибки, которые вы указали программе игнорировать.
Правила проверки ошибок определяют, какие ошибки или потенциальные ошибки
Excel
должен выделять, и позволяют вам выключить их фоновую проверку. Для
Глава
100
3
настройки этих правил выберите из меню ошибок ячейки пункт Параметры про
верки ошибок
(Error Checking Options)
и установите или снимите флажки с пара
метров, отображаемых в разделе Правила поиска ошибок
(Error checking rules).
(File) 1 Параметры
в Excel для Windows, или
Проверка ошибок (Error
Найти этот раздел также можно, выполнив команду меню Файл
(Formulas) - если вы работаете
Параметры (Preferences)
команду меню Excel
Checking) - если используете Excel в macOS.
(Options)
1
Формулы
1
I
Пояснение
В этом разделе рассказано о выполняемых
Excel
фоновых проверках ошибок, кото
рые выделяют ячейки с ошибочными значениями и потенциальными проблемами .
Исправить каждую в отдельности ошибку или просмотреть их все по очереди мож
но с помощью диалогового окна Проверка ошибок
речь пойдет в разд.
3.13.
(Error Checking),
о котором
3.13.
Проверяем ошибки в таблице
Задача
В вашей рабочей книге есть ячейки с ошибками , и вы хотите исправить их одну за
другой .
Решение
Если в вашем рабочем листе выявилось несколько ячеек с ошибкой в значении или
ячеек, которые оказались помечены фоновой проверкой ошибок
Excel,
просмотреть
(Error
(Formulas) Зависи
(Error Checking) 1 Проверка
их одну за другой можно, используя диалоговое окно Проверка ошибок
Checking).
Оrкройте его, выполнив команду меню Формулы
мости формул
ошибок
(Formula Auditing)
(Error Checking) (рис . 3.8).
1
Проверка ошибок
Диалоговое окно Проверка ошибок
1
(Error Checking) содержит параметры , анало
3.12) с удобными ссылками на
гичные параметрам меню кнопки ошибки (см . разд.
?
Проверка ошибок
Ошибка в ячейке В1
Справка
1!0..:~той
ошибке
Показаrь этапы вычисления
Ошибка -деление на ноль
Формула или используемая функция выполняет
деление на ноль или на пустые ячейки .
...
Проnуст_!!ть ошибку
Изменить в строке фор•1ул
Гnара ... ет~
!::!азад
Рис.
3.8. Диалоговое
окно Проверка ошибок
х
Используем формулы
1
101
другие инструменты. Перемещаться по ошибкам рабочего листа здесь можно с по
мощью кнопок Далее
(Next)
и Назад
(Previous).
Пояснение
Инструмент Проверка ошибок
(Error Checking) предоставляет функциональные
Excel, за исключением того, что он
возможности, аналогичные фоновым проверкам
позволяет рассматривать каждую ошибку по отдельности. Обратите внимание, что
в их число не входят ошибки, которые вы указали
Excel
игнорировать,
-
сбросить
эту настройку можно, выполнив в окне Проверка ошибок команду Параметры
(Options)
1
Сброс пропущенных ошибок
(Reset Ignored Errors).
Ищем источники ошибок
3.14.
Задача
У вас есть ячейка с ошибкой в значении, причиной которой может быть ссылка на
другую ячейку.
Решение
Когда в какой-либо ячейке, которая ссылается на другие ячейки или диапазоны,
выявляется ошибка, ее причиной могут стать эти ссылки, а не сама формула. На
пример, если в ячейке В! есть ошибка в значении #дЕЛ/0 1 , а формула для ячей
ки С2
-
это =Вl, то в ячейке С2 также будет ошибка в значении #ДЕЛ/О!, наследуе
мая из ячейки В 1.
В таком случае можно использовать инструмент Источник ошибки
(Trace Error),
который поможет вам отследить, откуда ошибка пришла. Он работает аналогично
инструменту Влияющие ячейки
(Trace Precedents)
(см. разд.3.11), за исключением
того, что отслеживает только ячейки с ошибками в значениях.
Чтобы воспользоваться инструментом Источник ошибки
(Trace Error),
выделите
ячейку, содержащую ошибку, которую вам надо отследить, и выполните команду
меню Формулы
1
ошибок
Источник ошибки
(Formulas)
(Error Checking) 1
Зависимости формул
(Formula Auditing) 1 Проверка
(Trace Error). Инструмент начнет
проверять любые ссылки, от которых зависит формула ячейки, и искать ссылку
с ошибкой в значении. Когда она будет найдена, инструмент нарисует красную
стрелку от этой ссылки к формуле и будет повторять процесс, пока не будет нари
сована иерархия зависимостей ошибок в значении. Пометив синими стрелками
правильные ссылки проблемной ячейки, инструмент остановит процесс поиска
(рис.
3.9).
Вам остается только исправить иерархию ошибок в значениях, начиная с исходной
ошибки. Так, если в ячейках С2 и В 1 есть ошибка в значении #ДЕЛ/О
1,
а С2 зависит
от В 1, вы исправляете ошибку в В 1 и смотрите, исчезнет ли в результате ошибка
в ячейке С2. Если ошибка остается, удалите все оставшиеся стрелки, выполнив
Глава
102
3
команду меню Формулы
(Formulas) 1 Зависимости формул (Formula Auditing) 1
(Remove Arrows), и снова примените инструмент Источник
(Trace Error), чтобы посмотреть, не остались ли еще какие-либо ошибки
Убрать стрелки
ошибки
в значениях.
Синие стрелки
о
Е
F
1
2
3
,,
Красная стрелка
Рис.
3.9. Результат работы инструмента Источник ошибки
Пояснение
В этом разделе приведен пример использования инструмента Источник ошибки
(Trace Error)
для отслеживания трудноуловимых ошибок в ячейках, ссылающихся
на другие ячейки и диапазоны.
3.15.
Исправляем ошибки в значениях
Задача
У вас есть ячейка с ошибкой в значении, и вы хотите узнать, что она означает и как
ее исправить.
Решение
Когда Ехсе\ не может вычислить формулу, он выводит в значении ошибку (напри
мер, #ДЕЛ/О!), указывающую на наличие проблемы. Далее приведен список ошибок
в значениях Ехсе\ и предложения по их исправлению:
•
##
Обычно это означает, что ширины столбца недостаточно для отображения зна
чения ячейки, поэтому попробуйте автоматически настроить их ширину, выпол
нив двойной щелчок мышью на линии, разделяющей заголовки столбцов.
Это также может означать, что ячейка содержит отрицательную дату или время,
что недопустимо,
Общий
♦
-
проверить, так ли это можно, изменив формат ячейки на
(General).
#ЗАБЛОКИРОВАНО!
Такая ошибка возникает, когда невозможно получить доступ к нужному источ
нику. Это может случиться, когда, к примеру, вы приводите недействительные
интернет-адреса
(URL)
в функции ИЗОБРАЖЕНИЕ (см. разд. 13.6) или превышаете
допустимый размер изображения или файла.
Используем формулы
♦
1
103
#ВЫЧИСЛ!
Это неустановленная ошибка вычисления в массиве.
♦
#ДЕЛ/О!
Эта ошибка возникает, когда вы пытаетесь поделить число на ноль или на пус
тую ячейку. Проверьте значение делителя и рассмотрите вариант использования
функции Если для захвата любых ошибок
разд.
♦
-
например: =ЕСЛИ (А2=0; 0;Al/A2) (см.
7.5).
#Н/Д'
Такая ошибка возникает, если значение недоступно для формулы, и обычно слу
чается, когда функция поиска (например, ПРОСМОТРХ) не может найти подходящее
значение. Рассмотрите возможность использования функции Еснд, чтобы заме
нить ошибку более понятным сообщением (см.разд.
♦
7. 7).
#ИМЯ?
Эта ошибка означает, что
Excel
не распознает имя или функцию. Убедитесь, что
все имена и функции написаны правильно.
♦
#ПУСТО!
Эта ошибка возникает, когда вы пытаетесь использовать оператор пересечения
«пробел» (см. разд.
3.1)
для двух диапазонов, которые не пересекаются (напри
мер: =СУММ IAl: AS с1: cs) ). Убедитесь, что вы используете правильные диапазоны
с подходящим оператором.
♦
#ЧИСЛО!
Эта ошибка означает, что формула содержит недействительные числовые значе
ния (например: =КОРЕНЬ 1-2) ). Проверьте значения формулы и рассмотрите вари
ант захвата ошибок с помощью функции ЕСЛИ.
♦
#ССЫЛКА!
Такая ошибка возникает, когда формула содержит недействительную ссьmку,
и обычно это означает, что формула ссылается на строку или столбец, которые
вы впоследствии удалили. Например, если ячейка
D 1 содержит
формулу =В1 +cl,
а вы удаляете столбец С. В подобной ситуации попробуйте изменить формулу.
♦
#ПЕРЕНОС!
Эта ошибка возникает, когда вы используете динамический массив или диапазон
разлива, а заполненная ячейка блокирует его вывод. Попробуйте очистить бло
кирующую ячейку.
♦
#ЗНАЧ!
Такая ошибка возникает, когда вы пытаетесь выполнить операцию с неверным
типом данных
-
например, используя формулу =Аб+Вб, в которой ячейки Аб и
В6 содержат текстовые значения. Исправить этот конкретный пример можно,
изменив формулу на =СУММ (Аб: Вб), поскольку функция СУММ игнорирует текстовые
значения.
104
Глава
3
Пояснение
В этом разделе приведен полезный перечень ошибок в значениях Ехсе\ и указаны
способы их корректировки. Чтобы получить дополнительную помощь по конкрет
ной ошибке, выберите опцию Справка по этой ошибке (Не\р оп
ню кнопки ошибки или из диалогового окна Проверка ошибок
(см.разд.
3.16.
this Error) из ме
(Error Checking)
3.13).
Вычисляем формулы
Задача
У вас в ячейке есть формула, и вы хотите просмотреть ход ее расчета.
Решение
Для просмотра расчета формулы и вычисления ее различных частей удобно вос
пользоваться диалоговым окном Вычисление формулы
(Evaluate Formula).
Чтобы
открыть его, выделите ячейку, которую собираетесь изучить, а затем выполните
команду меню Формулы
(Formulas) 1 Зависимости формул (Formula Auditing) 1
(Evaluate). Можно также выбрать опцию Показать этапы
(Show Calculation Steps) в диалоговом окне Проверка ошибок (Error
Вычислить формулу
вычисления
Checking) (см.разд. 13.3) или
в меню кнопки ошибки.
Открытое диалоговое окно Вычисление формулы
(Evaluate Formula)
будет ото
бражать формулу ячейки и подчеркивать все выражения, которые могут быть вы
числены (рис.
Чтобы
3.10).
оценить выражение,
(Evaluate ).
щелкните на нем и
нажмите кнопку Вычислить
Ехсе\ возвращает результаты, которые могут быть другим выражением
или значением, выделяя их курсивом (рис.
3 .11 ).
?
Вычисление формул ы
~сылка :
х
ВЫ~исление:
'Отслежи.мнке ow.-!SAS6
=
Дn.я просмотра ре 3у11 ьтата вычисления подчеркнутого выражения нажмите
кнопку ·вычислить· . Последний полученный результат отображается курсивом.
1:,.§ычислить.:!
Рис.
3.10.
l Шаг с ;!аходом )
1 Шаг
с 11ыходом
J [ 3gкрыть
Диалоговое окно Вычисление формулы подчеркивает все выражения,
которые можно вычислить
Используем формулы
?
Вычисление формулы
1сылка:
105
х
ВЫ~исление:
'Отслежнванме ow-!SAS6
:
Для просмотра результата вычисления подчеркнутого выражения нажмите
кнопку ·вычислить·. Последний полученный результат отображается курсивом.
Рис.
3.11. Диалоговое
окно Вычисление формулы выделяет курсивом все значения,
которые оно вычислило
Здест также можно нажать кнопку Шаг с заходом
ты выражения в отдельном окне (рис.
нажмите кнопку Шаг с выходом
3.12).
(Step Out).
(Step Into ),
чтобы оценить расче
Чтобы вернуть изначальную формулу,
?
Вычисление формулы
1сылка :
х
Вычисление:
'Отслеживание
ow ... !SASб : 1КОРЕНЬ(Сб)
L'Отслеживание o...!SCSб :
Для просмотра результата вычисления подчеркнутого выражения нажмите
кнопку ·вычислить·, Последний полученный результат отображается курсивом.
Рис.
3.12.
Возвращаемся к выражению в диалоговом окне Вычисление формулы
Закончив пошаговое изучение формулы, нажмите кнопку Начать заново
чтобы вновь ее просмотреть, или Закрыть
(Close),
Другой способ проверки формулы ячейки
-
(Restart),
чтобы закрыть диалоговое окно.
это выбрать в ячейке или в строке
формул часть, которую вы хотите вычислить, и нажать клавишу
заме
нить эту часть вычисленными значениями. Нажатие клавиши
изме
нения. Если вы используете
Excel 365,
<F9>, чтобы
<Esc> отменит
то при выборе части формулы значение
отображается во всплывающей подсказке.
106
Глава
1
3
Пояснение
Диалоговое окно Вычисление формулы
(Evaluate Formula)
предоставляет удоб
ный способ пошагового просмотра сложных формул и обеспечения того, чтобы они
работали должным образом. Особенно оно полезно для исправления любых оши
бок или неожиданных результатов.
Меняем режим вычисления
3.17.
Задача
Ваша рабочая книга работает медленно, и вы хотите ускорить ее работу, управляя
временем вычисления формул в
Excel.
Решение
По умолчанию, когда вы изменяете значение, формулу или имя рабочей книги,
Excel
автоматически пересчитывает все формулы, которые от них зависят. Однако
если строк и/или формул слишком много, такое поведение может привести к за
медлению работы рабочей книги и к ее зависанию.
Изменить характер работы вычислений можно, выполнив команду меню Формулы
(Formulas)
1
Вычисление
метры вычислений
(Calculation) и выбрав из раскрывающегося списка
(Calculations Options) один из доступных вариантов:
Пара
♦ Автоматически
Этот
вариант,
выполняемый
по
умолчанию,
автоматически
пересчитывает
любые зависимые формулы, когда вы меняете значение, формулу или имя.
♦ Автоматически, кроме таблиц данных
Этот вариант выключает автоматический пересчет для всех таблиц данных
(см.разд.
14.1
и
14.3).
♦ Вручную
Этот вариант полностью выключает автоматический пересчет.
Выбирая режим Вручную
(Manual),
укажите, должен ли
Excel
пересчитывать зна
чения рабочей книги перед ее сохранением. Чтобы управлять этим параметром
в
(File) 1 Параметры (Options) 1
(Calculations Options) и установите флажок Пересчиты
вать книгу перед сохранением (Recalculate workbook Ьеfоге saving). Если вы работаете в Excel для macOS, то найдете этот флажок, выполнив команду меню
Excel I Параметры (Preferences) 1 Вычисления (Calculations).
Excel
для
Windows,
выполните команду меню Файл
Параметры вычислений
Режим вычислений является глобальным параметром
Excel,
поэтому его изменение
в одной рабочей книге меняет его и во всех других открытых книгах. Каждый
раз, когда вы сохраняете рабочую книгу,
лений.
Excel
сохраняет текущий режим вычис
Используем формулы
107
Когда вы открываете или создаете рабочую книгу, Ехсе\ решает, какой режим
вычислений использовать:
♦ если вы открываете существующую рабочую книгу, когда все другие остаются
закрытыми,
Excel
использует режим вычислений, с которым он был сохранен
последний раз;
♦
если вы создаете новую рабочую книгу из шаблона, когда все другие остаются
закрытыми,
Excel
использует режим вычислений, с которым был сохранен шаб
лон;
♦
если вы открываете существующую рабочую книгу или создаете новую, в то
время как открыты другие рабочие книги,
Excel
использует текущий режим вы
числений. Обычно это режим вычислений первого открытого или созданного
документа, если вы этот режим не изменяли.
'
Порядок открытия или создания файлов Excel может повлиять на режим вычисле
ний, поэтому, если у вас есть формулы, которые по вашему указанию прекратили
•
автоматический пересчет, то выполните команду меню Формулы (Formulas) 1 Вы
числение (Calculation) и в раскрывающемся списке Параметр~:.~
(Calculations Options) выберите вариант Автоматически (Automatic).
вычислений
Если вы отключили автоматическое вычисление, то можете воспользоваться одним
их следующих вариантов, чтобы принудительно пересчитать формулы в Ехсе\:
♦
выполнить команду меню Формулы (Foпnulas)
Пересчет
(Calculate Now)
или нажать клавишу
1
Вычисление
(Calculation)
1
<F9>.
С помощью этого действия вы пересчитаете все формулы, которые были изме
нены во всех открытых рабочих книгах;
♦
выполнить команду меню Формулы (Foпnulas)
Произвести вычисления
(Ca\culate Sheet)
1
Вычисление
(Calculation)
1
или нажать комбинацию клавиш
<Shift>+<F9>.
С помощью этого действия вы пересчитаете измененные формулы на текущем
рабочем листе;
♦
нажать комбинацию клавиш
<Ctrl>+Alt+<F9>.
Это действие пересчитает все формулы, включая те, что не были изменены, во
всех открытых рабочих книгах.
♦
Нажать комбинацию клавиш
<Ctrl>+<Shift>+Alt+<F9>.
Это действие проверит зависимые формулы и затем пересчитает все формулы во
всех открытых рабочих книгах.
Пояснение
В этом разделе мы рассмотрели параметры вычислений
Excel.
Обратите внимание,
что режим вычислений является глобальной настройкой, которая применяется ко
всем открытым рабочим книгам.
108
3.18.
Глава
3
Настраиваем точность округления
Задача
У вас есть ошибки округления с плавающей точкой, и вы хотите их исправить.
Решение
Когда вы форматируете число,
Excel сохраняет его исходное значение. Так, если
1,64 736, а вы форматируете его до двух десятичных
знаков после запятой, Excel отображает 1,65, но сохраняет исходное значение
1,64736. Поэтому вычисление, к примеру, формулы =Al*lOOO возвращает 1647,36поскольку формула учитывает исходное значение числа в ячейке А 1.
ячейка А
I
содержит значение
В некоторых случаях вам может понадобиться использовать в своих формулах ото
бражаемое значение вместо сохраненного. Этого можно добиться двумя основны
ми способами.
♦
Первый, он же наилучший, заключается в обновлении формул с тем, чтобы они
использовали одну из функций округления
(см. разд.
4. 9).
Excel -
например: =ОКРУГЛ(А1;2)*1ООО
Этот метод является предпочтительным, поскольку он сохраняет
все базовые значения нетронутыми.
♦
Второй способ состоит в настройке точности значения в соответствии с его
форматом, чтобы
Excel
сохранял каждое значение в том виде, в котором оно
отображается. Работая в
Excel для Windows, добиться этого можно, выполнив
(File) 1 Параметры (Options) 1 Дополнительно (Advanced) 1
При пересчете этой книги (When calculating this workbook) 1 Задать точность
как на экране (Set precision as displayed). Если вы используете Excel в macOS,
то найдете эту настройку в разделе Параметры (Preferences) меню Excel I Па
раметры (Preferences) 1 Вычисления (Calculations).
команду меню Файл
Как только вы примените эту настройку, Ехсе1 сохранит значение ячейки А I из
предыдущего примера в виде
вернет
1
,,,
1,65
вместо
1,64 736,
поэтому формула =Al * 1 ооо
1650.
Настройка точности в соответствии с форматом значения
идея, поскольку утрата
Excel
-
это очень плохая
исходного значения числа может легко привести
к необратимой потере данных и вызвать ошибки в расчетах. Так что использовать
эту настройку стоит только в крайнем случае, и перед ее применением обязательно сделать резервную копию своей работы.
Пояснение
В этом разделе рассмотрены два способа работы с точностью: применение функций
округления и настройка точности в соответствии с форматом значения, отображае
мым на экране. Хотя обновление формул для использования функций округления
требует больше работы, этот подход в целом гораздо лучше, чем использование
Используем формулы
настройки Задать точность как на экране
(Set precision as displayed),
1
109
которая по
сути является в~эе~110й рискованной, и лучше ее избегать.
Если в вашей рабочей книге встречаются необычные ошибки округления, которые
не соответствуют вычислениям, производимым вручную, проверьте, не активиро
ван ли флажок Задать точность как на экране
(Set precision as displayed),
по
скольку это может привести к подобным типам ошибок.
Работаем с циклическими ссылками
3.19.
Задача
У вас есть циклическая ссылка, и вы хотите разрешить ее, но не знаете, как это сде
лать.
Решение
Предположим, вам надо заполнить ячейку А 1 сегодняшней датой, если текущее
значение ячейки равно О. Теоретически достичь этого можно, введя в ячейку А 1
формулу =ЕСЛИ (Аl=О;СЕГодня () ;Al), но есть проблема: ячейка содержит ссылку на
саму себя, и по умолчанию
Excel
не может вычислить ее формулу.
Формула, которая прямо или косвенно ссылается на свою собственную ячейку, на
зывается циклической ссылкой. По умолчанию Ехсе\, столкнувшись с такой ссыл
кой, отображает предупреждающее сообщение и может также нарисовать стрелки
Влияющие ячейки
(см. разд.
(Trace Precedents)
3.11 ).
Разрешить некоторые циклические ссылки можно с помощью итеративных вычис
лений
-
расчетов, которые Ехсе\ повторно выполняет до тех пор, пока не встретит
решение или не закончатся итерации. Чтобы переключиться на итеративные вы
числения:
1.
Параметры
(File) 1 Параметры (Options) 1 Формулы
Excel для Windows, или команду меню Excel
(Preferences) 1 Вычисления (Calculations)- в Excel для macOS.
Установите
флажок
Выполните команду меню Файл
(Forrnulas),
2.
если вы работаете в
Включить
1
итеративные вычисления
(ЕnаЫе
iterative
calculation).
3.
Укажите в поле Предельное число итераций
(Maximum lterations)
- чем выше число,
ное количество итераций для ваших вычислений
вероятность, что
4.
Excel
максималь
тем больше
встретит решение, но это может занять больше времени.
чтобы ука
Используйте поле Относительная погрешность
(Maximum Change),
зать, насколько точен должен быть результат
чем меньше число, тем точнее
-
результат, но тем больше времени это может занять.
5.
Когда вы нажмете кнопку ОК,
Excel
попытается вычислить все циклические
ссылки. Он либо встретит решение, либо достигнет максимального числа итера
ций, прежде чем сможет найти решение.
110
1
Глава З
Определить, содержит ли рабочая книга циклические ссылки, можно, отключив
итеративные вычисления и выполнив команду меню Формуль.1 (Formulas) 1 Зави
симости формул
ческие ссылки
(Formula Auditing) 1 Проверка ошибок (Егrог Checking) 1 Цикли
(Circular References). При этом отобразится первая ячейка рабоче
го листа, содержащая циклическую ссылку.
Обсуждение
В этом разделе показано, как использовать итеративные вычисления для разре
шения циклических ссьmок. Как правило, циклические ссылки могут приводить
к решению, отклоняться или чередоваться между двумя возможными результатами.
Итеративные вычисления выключены по умолчанию, поскольку могут замедлить
работу вашей книги. Необходимость активировать их обычно возникает только для
разрешения циклических ссылок.
ГЛАВА4
Математические операции
Математические операции играют ключевую роль при проведении многих вычис
лений, и
Excel
предоставляет обширный набор функций, которые избавят вас от
необходимости выполнения вручную громоздких расчетов.
Эта глава познакомит вас с математическими и инженерными формулами
Excel,
позволяя выйти за рамки операторов +, -, *, / и л. Решения, представленные в этой
главе, включают способы округления чисел, работу с суммами, кратными и дели
телями, использование тригонометрии, вычисление перестановок и комбинаций,
решение задач с матрицами и работу со сложными числами.
4.1.
Генерируем числа
Задача
Вы хотите сгенерировать числа случайным образом или в определенной последова
тельности.
Решение
Чтобы сгенерировать случайное десятичное число, большее или равное О и мень
шее
1,
воспользуйтесь функцией слчис и введите формулу =СЛЧИС о. В общем случае
для возвращения случайного числа, большего или равного а и меньшего Ь, можно
усовершенствовать эту формулу следующим образом: =слчис
() * (Ь-а) +а.
Так, при
вводе =СЛЧИС о •100 возвращается случайное десятичное число, большее или равное О
и меньшее
100.
Чтобы сгенерировать случайное целое число между а и Ь включительно, исполь
зуйте функцию СЛУЧМЕждУ. Обычно ее реализуют в формуле =СЛУЧМЕждУ (а;Ы, и тогда
при вводе =СЛУЧМЕЖW(l;lО) возвращается случайное целое число между
I
и
вклю
10
чительно.
Чтобы сгенерировать динамический массив (см. разд.
3.4)
случайных чисел, ис
пользуйте формулу =СЛМАССИВ (строки; столбцы;мин;макс; целое_ число), где строки (необя
зательный аргумент)
тельный аргумент)
тельный аргумент)
-
-
это число строк (по умолчанию равно
1),
это число столбцов (по умолчанию равно
столбцы (необяза
1),
мин (необяза
это наименьшее возвращаемое число (по умолчанию равно О),
макс (необязательный аргумент)
-
это наибольшее (по умолчанию равно
целое_ число указывает, надо ли вам возвращать целые или десятичные числа,
-
1),
а
ис-
112
Глава
4
пользуйте значение истиНА для целых чисел и ложь (по умолчанию) для десятичных.
Таким образом, при вводе формулы =СЛМАССИВ(б) возвращаются шесть строк случай
ных десятичных чисел между О и
1
(включительно), в то время как при вводе
=СЛМАССИВ(S; ;l;lО;ИСТИНА) возвращаются пять строк случайных целых чисел между
и
10
1
(включительно).
Чтобы сгенерировать динамический массив последовате.1ьных чисел, нужно ис
пользовать формулу =ПОСЛЕД ( строки;столбцы;начало;шаг), где строки (необязательный
аргумент)
аргумент)
-
это число строк (по умолчанию равно
1), столбцы
1), начало
это число столбцов (по умолчанию равно
(необязательный
(необязательный
аргумент)- это первое число в последовательности (по умолчанию равно
(необязательный аргумент)
-
1),
шаг
это число, на которое вам надо увеличивать после
довательные числа (по умолчанию равно
1).
Таким образом, при вводе формулы
=ПОСЛЕД(б) возвращаются шесть строк, содержащих числа от
1
=ПОСЛЕД(S; ;О;О,2) возвращаются пять строк, содержащих числа О,
до 6, а при вводе
0,2, 0,4, 0,6 и 0,8.
~ Фу"'щии СЛМАССИВ ПОСЛЕД дос,упны толs,о, Excel 2021 • Excel 365.
•
Пояснение
В этом разделе предложено несколько методов генерации чисел
от вашей версии
ях
-
Excel.
-
в зависимости
Использовать их можно в самых разнообразных ситуаци
например, при генерировании текстовых символов ( см. ртд.
5. 3 и 5. 4).
Дополнение
Другие способы генерирования случайных чисел представлены в разд.
4.2.
9. 9.
Преобразуем текст или булево выражение в число
Задача
У вас есть значение, сохраненное в виде текста, или значение истиНАlложь, и вы
хотите преобразовать его в число.
Решение
Если числовое значение сохранено в виде текста, его можно преобразовать в число,
записав в виде =текст*l, =текст+О или =-текст. Так, если ячейка
лу =ТЕКСТ(12З;"ООООО"i, которая преобразует число
123
в текст
Al содержит форму
00123 (см.разд. 5.17),
то при вводе =Al*l, =Al+0 или =-Al текст преобразуется обратно в число, возвра
щая
123.
Преобразовать булево значение истиНАlложь в число можно, прибегнув к аналогич
ному методу. Так, если диапазон А
1:AS
содержит значения истиНАlложь, вернуть их
Математические операции
1
113
числовые значения удастся с помощью формул =Al :AS*l, =Al :AS+O или =-Al :AS. При
мер использования этого метода вы найдете в ртд.
7.6.
Пояснение
Математические функции, такие как СУММ, включают в свои расчеты только число
вые значения, что может привести к неожиданным результатам. Если ячейка со
держит, к примеру, формулу ="123", которая в результате вместо числа выдает
текст
123,
то формула =СУММ(Аl) вернет О. В этом разделе предложено удобное ре
шение подобного типа проблем.
Дополнение
Проверить, как сохранено значение
-
в виде числа или в виде текста, можно, при
менив функции ЕЧИСЛО и ЕТЕКСТ (см.разд.
4.3. Узнаем
7. 7).
знак и абсолютное значение числа
Задача
У вас есть число, и вы хотите узнать, положительное оно или отрицательное, а так
же его абсолютное значение.
Решение
Чтобы определить знак числа, следует задействовать функцию ЗНАК. Так, формула
=ЗНАК(число) возвращает число
1,
если число положительное,
-1,
если оно отрицатель
ное, и О, если оно равно О, поэтому ввод, к примеру, формулы =ЗНАК(-10) вернет
Чтобы найти абсолютное значение числа
-
число без знака
лу =АВS I число). Например, если ячейка А I содержит число
возвращается
-1 О,
-1.
используйте форму
то при вводе =АВS (Al)
10.
Пояснение
В этом разделе предложен быстрый способ определения, является ли число поло
жительным, отрицательным или нулем, а также способ получения абсолютного
значения. Они используются, например, в разд.
4.4.
4.1 О.
Подсчитываем, суммируем
и усредняем значения ячеек
Задача
У вас есть диапазон ячеек, содержащий числа, и вы хотите подсчитать их количест
во, а также вычислить их сумму и среднее значение.
114
Глава
4
Решение
Предположим, в диапазоне А2:А5 содержатся числа от
числа от
11
до
14,
а в диапазоне С2:С5
числа от
-
21
1 до 4, в диапазоне В2:В5 24, и вам надо подсчитать
до
количество ячеек, содержащих числа, и вычислить их сумму и среднее значение.
Чтобы
подсчитать количество ячеек,
содержащих числа, можно задействовать
функцию СЧЁТ. Обычно ее используют в формуле =СЧЁТ (диапазон) =СЧЁТ(А2:С5) возвращается
сколько диапазонов
-
12
(рис.
4.1).
например,
при вводе =СЧЁТ(А2:АS;С2:СS)
числа в диапазонах А2:А5 и С2:С5, возвращая
А
--
в
Значения
8 (см.
рис.
подсчитываются
4.1).
Е
D
с
1
тогда при вводе
В функцию СЧЁТ также можно передать не
F
Формула
Результат
12
2
1
11
21
=СЧЁТ(А2:С5)
3
2
12
22
=СЧЁТ(А2:А5;С2:С5)
8
4
3
13
23
=СУММ(А2:А5)
10
5
4
14
24
=СРЗНАЧ(А2:А5)
2,5
·-
б
Рис.
il
4.1. Использование функций СЧЁТ, СУММ и СРЗНАЧ
Функцию счЁтз также можно использовать для подсчета ячеек, содержащих любое
значение (не только числа), а функцию считдтьпУстоты
-
для подсчета количества
пустых ячеек.
Функции СУММ и СРЗНАЧ работают аналогично СЧЁТ, но они возвращают сумму и сред
нее значение числовых значений, поэтому при вводе =СУЖ(А2 :AS) возвращается
а при вводе =СРЗНАЧ(А2:АS) возвращается
1О,
2,5.
Пояснение
В этом разделе показано использование базовых математических функций СЧЁТ, СУММ
и СРЗНАЧ для подсчета чисел в одном и более диапазонах и вычисления их суммы
и среднего значения.
Обратите внимание, что если вы передаете в функции СЧЁТ, СУММ и СРЗНАЧ два пересе
кающихся диапазона, они будут включать все числа пересечения дважды
-
по
одному разу для каждого диапазона. Так, если диапазон А2:С5 содержит числа, то
формула =CЧЁT(A2:AS;AS:cs1
ячейки
А5
дважды.
вернет
Чтобы
7
обойти
вместо
6,
поскольку она сосчитает значение
эту проблему,
можно
применить формулу
=СЧЁТ (диапазон]; диапазон2) -СЧЁТ (диапазон] диапазон2), где функция СЧЁТ использует для
подсчета ячеек в пересечении оператор «пробел» (см.разд.
3.1).
Дополнение
Более
подробно вычисление
в разд.
8.4.
различных типов средних значений
представлено
Математические операции
4.5.
115
Используем критерии для подсчета, суммирования
и среднего значения
Задача
У вас есть диапазон ячеек, содержащий числа, и вы хотите подсчитать количество
чисел , соответствующих определенному критерию, а также вычислить их сумму и
среднее значение.
Решение
Предположим, диапазон А2:А8 содержит список продуктов питания, и вам нужно
найти количество, сумму и среднее ячеек, отвечающих определенным условиям.
Если условие одно, можно использовать функции СЧЁТЕСЛИ, СУММЕСЛИ и СРЗНАЧ ЕСЛИ
(рис.
4.2):
СЧЁТЕСЛИ
♦
Функция СЧЁТЕСЛИ подсчитывает значения, удовлетворяющие одному условию .
это
Обычно ее используют в формуле =СЧЁТЕСЛИ ( диапаз он ; условие ) , где диапа з он -
диапазон ячеек, к которому вы собираетесь применить условие. Так, при вводе
=СЧЁТЕСЛИ(В2:В8;">10") подсчитывается, сколько значений больше
10,
а при вводе
=СЧЁТЕСЛИ (А2 :AS; "ПИцца") подсчитывается количество наименований Пицца .
СУММЕСЛИ
♦
Функция СУММЕСЛИ работает аналогично функции СЧ Ё ТЕСЛИ -
за исключением то
го, что она суммирует значения, удовлетворяющие условию . Как правило, ее
используют
диапазон -
В
формуле
=СУММЕСЛИ ( диа па з он; условие ; диа паз он_ суммирования ) ,
где
это диапазон ячеек, к которому вы собираетесь применить условие,
а диапа з он_ суммирования (необязательный аргумент)
-
это диапазон ячеек, кото
рый вам нужно суммировать (если он отличается от диапазон). Так , при вводе
=~СЛИ(А2:А8;"ПИцца" ;В2:В8) возвращается сумма значений пи цца .
С Р ЗНАЧЕСЛИ
♦
Функция С РЗНАЧЕСЛИ работает аналогично функции СУММЕСЛИ, но при этом она вы
числяет среднее значение . Так, при вводе формулы =СРЗНАЧЕСЛИ (А2 :AS ; "ПИцца" ; В2 : ВВ)
возвращается среднее всех значений пицца .
1
2
!
в
А
о
с
ПозициR Количество
Е
Формула
Результат
3
Пицца
15
=СЧЁТЕСЛИ{В2:В8;">10")
3
Салат
5
=СЧЁТЕСЛИ(А2:А8;"Пицца")
3
4
Суп
б
=СУММЕСЛИ(А2:А8;"Пицца";В2:В8)
39
13
5
Пицца
9
=СРЗНАЧЕСЛИ(А2:А8;"Пицца";В2:В8)
б
бутерброд
12
=СЧЁТЕСЛИМН{А2:А8;"Пицца";В2:В8;">10")
2
7
бутерброд
9
=СУММЕСЛИМН(В2:В8;А2:А8;"Пицца";В2:В8;" > 10")
30
8
Пицца
15
=СРЗНАЧЕСЛИМН(В2:В8;А2:А8;"Пицца";В2:В8; "> 10")
15
9
Рис.
4.2.
Использование критерия для подсчета наименований и вычисления суммы и среднего
Глава
116
4
Если условий несколько,
СРЗНАЧЕСЛИМН (см. рис.
♦
можно использовать функции СЧЁТЕслимн, СУММЕслимн и
4.2):
СЧЕТЕСЛИМН
Функция СЧЁТЕслимн подсчитывает число ячеек, удовлетворяющих нескольким
условиям. Обычно ее используют в формуле вида: =СЧЁТЕСЛИМН (диапазон_условияl;
условиеl;диапазон_условия2; условие2;
... ),
когда хотят применить условие] к диапа
зон_условияl, условие2 к диапазон_условия2 и т. д. Так, чтобы подсчитать количество
наименований
пицца
с
количеством
больше
I О,
вы
вводите
формулу
=СЧЁТЕСЛИМН (А2:А8; "Пицца" ;В2 :В8; ">10").
♦
СУММЕСЛИМН
Функция СУММЕслимн работает аналогично функции СЧЁТЕслимн -
за исключением
того, что она вычисляет сумму. Как правило, ее используют в формуле вида:
=СУММЕСЛИМН(диапазон_суммирования,
диапазон_условияl;условиеl;диапазон_условия2;
условие2; ... ) , где диапазон_ суммирования (необязательный)
это диапазон ячеек,
-
которые вам надо суммировать, причем вы должны применить условиеl к диапа
-
зон_словияl, условие2 К диапазон_условия2 И т. д. Так, формула =~СЛИМН(В2:В8;
А2:АВ;"Пицца";В2:В8;">10")
с количеством больше
♦
возвращает общую сумму всех наименований пицца
I О.
СРЗНАЧЕСЛИМН
Функция СРЗНАЧЕслимн работает аналогично функции СУММЕСЛИМН, но при этом она
вычисляет среднее значе11ие, поэтому при вводе формулы =СРЗНАЧЕСЛИМН(В2:В8;
А2:АВ;"Пицца";В2:В8;">10") возвращается среднее всех наименований пицца, в ко
торых количество превышает
I О.
Пояснение
В этом разделе дополняется информация, приведенная в разд.
счета
количества,
суммы
и
среднего,
удовлетворяющих
4. 4,
одному
касательно под
или
нескольким
условиям. Альтернативными подходами было бы добавить эти значения в таб
лицу
(см.
(см. разд.
4.6.
разд.
2.18)
и применить фильтр либо использовать функцию ФИЛЬТР
7.3).
Складываем и вычитаем значения в квадрате
Задача
У вас есть диапазон чисел, и вы хотите выполнить вычисления, используя сумму
или разницу их значений в квадрате.
Решение
Предположим, в диапазоне А2:А6 приведены значения х от
А2:А6
-
значения у от
I
до
5,
I
до
5,
а в диапазоне
и вам надо выполнить вычисления, используя квад-
Математические операции
117
раты их значений. Ехсе\ содержит несколько функций, которые можно использо
вать для этого следующим образом (рис.
♦
4.3):
СУММКВ
Функция СУММКВ вычисляет Lcx2 -
сумму квадратов значений х. Обычно эту
функцию используют в формуле вида =СУММКВ ( х_ значения) =СУМ-!КВ(А2:Аб)
возвращается
сколько диапазонов
-
55.
тогда при вводе
В функцию СУММКВ также можно передать не
например,
при
вводе =СУМ-!КВ(А2:Аб;ВЗ:В5)
квадраты значений х в диапазонах А2:А6 и В3:В5, возвращая
♦
суммируются
564.
СУММСУММКВ
Функция СУММСУММКВ вычисляет Дх 2 + у2) Обычно
эту
функцию
используют
в
сумму квадратов значений х и у.
формуле
вида
=СУММСУММКВ(х_значения;
у_ значения) -тогда при вводе ~(А2:Аб;ВЗ:Вб) возвращается
♦
СУММРАЗНКВ
Функция СУММРАзнкв вычисляет Дх2
чений х
и
у.
Обычно
эту
=СУММРАЗНКВ (х_значения; у_ значения)
вращается
♦
91 О.
у2) -
-
функцию
-
сумму разностей квадратов зна
используют
в
формуле
вида
тогда при вводе =СУМ4>АЗНКВ (А2 :Аб ;ВЗ: Вб) воз
-800.
СУММКВРАЗН
Функция СУММКВРАЗН вычисляет I:(x - у)2 -
сумму разностей значений х и у
в
используют
квадрате.
Обычно
эту
=СУММКВРАЗН (х_ значения ;у_ значения)
вращается
функцию
-
в
формуле
вида
тогда при вводе =~РАЗИ (А2 :Аб ;ВЗ: Вб) воз
500.
А
1
2
1
1
~,
з
с
в
х
у
1
11
12
13
14
15
2
4
з
5
4
5
Рис.
4.3.
Е
D
Формула
Результат
=СУММКВ(А2:Аб)
55
=СУММКВ(А2 :Аб ; ВЗ:В5)
564
=СУММСУММКВ(А2:Аб;В2:В6)
910
=СУММРАЗНКВ(А2:Аб;В2:Вб)
-800
=СУММКВРАЗН(А2:А6 ; 82:В6)
500
-
Сложение и вычитание сумм квадратов значений
~ ! Функции СУММСУММКВ, СУММРАЗНКВ и СУММКВРАЗН ожидают одинакового количества
l~
,начений х и у. Если это не та,, фун,ции во,вращают ошиб,у в зsачеа,и #Н/д.
Пояснение
В этом разделе представлен гибкий способ выполнения различных расчетов с ис
пользованием
значений
в
квадрате.
Обратите
внимание,
что
если
два диапа
зона содержат одинаковые значения, то формулы =СУММКВ (диапазонl ;диапазон2)
=СУММСУММКВ (диапазонl ;диапазон2) возвращают одно и то же значение.
и
Глава
118
4.7.
4
Используем умножение и кратные значения
Задача
У вас есть диапазон чисел, и вы хотите перемножить их, вычислить сумму их про
изведений для каждой строки и найти наибольшее или наименьшее общее кратное.
Решение
Предположим, в диапазоне ячеек А2:А4 содержатся числа
ячеек
82:84 -
числа
4, 8
и
16.
1, 2
и
6,
а в диапазоне
Вам надо найти их произведение, сумму произведе
ний для каждой строки и их наименьшее общее кратное.
Чтобы перемножить все ячейки, содержащие числа, можно задействовать функцию
ПРОИЗВЕд. Обычно ее используют в формуле =ПРОИЗВЕд (диапазон) =ПРОИЗВЕд (А2: В4) возвращается
6144
(рис.
тогда при вводе
4.4 ).
Чтобы вычислить сумму произведений двух или более соответствующих диапазо
нов
-
например, двух столбцов, используйте функцию СУММПРоизв. Обычно ее при
меняют в формуле =СУММПРОИЗВ (диапазонl;диапазон2), где диапазонl И диапазон2 -
это
два диапазона, значения которых вам надо перемножить, а затем сложить резуль
таты. Чтобы перемножить значения в каждой строке, а затем сложить результаты,
вы, например, вводите формулу =С»КIЮИЗВ(А2:А4;В2:В4), что возвращает
А
1
2
В
....______с_ _ _ __..._
rзначения
З
4
5
6
Рис.
1
2
6
4.4.
4
8
16
о
116.
Е
Формула Результат
=ПРОИЗВЕД(А2:В4)
=СУММПРОИЗВ(А2:А4;В2:В4)
=НОК(А2:В4)
6144
116
48
Использование функций ПРОИЗВЕД, СУММПРОИЗВ и нок
Функцию СУММПРОИЗВ также можно использовать для выполнения перед суммирова
нием значений других операций
-
таких как деление, вычитание и т. п. Для этого
замените в формуле точку с запятой на оператор, который вы собираетесь приме
нить для вычисления
(*, /, + или -), -
например: =СУММПРОИЗВ (А2: А4/В2: В4).
Чтобы найти наименьшее общее кратное набора целых чисел, т. е. наименьшее
положительное целое число, кратное каждому числу, используйте функцию нок.
Обычно ее применяют в формуле =НОК(диапазон) вращается
тогда при вводе =НОК(А2:В4) воз
48.
Пояснение
В этом разделе представлены несколько функций, которые можно использовать
при умножении чисел. Обратите внимание, что функция СУММПРоизв часто применя-
Математические операции
119
ется в статистике для вычисления средних взвешенных значений (подробнее об
этом рассказано в разд.
8.4).
Находим частные, остатки и делители
4.8.
Задача
У вас есть два числа, и вы хотите найти целое и остатки при делении одного числа
на другое, а также наибольший общий делитель для двух чисел.
Решение
Предположим, ячейка А2 содержит число
а ячейка АЗ
26,
-
число
6.
Вам надо по
делить ячейку А2 на ячейку АЗ и разбить результат на целое и остаток.
Чтобы найти целую часть, используйте формулу ЧАСТНОЕ. Обычно ее применяют
в формуле вида =ЧАСТНОЕ (число;делитель), где вам надо поделить аргумент число
на делитель. Так, для нахождения целой части при делении А2 на АЗ введите
=ЧАСТНОЕ (А2;АЗ) -
это вернет
4,
если А2 равно
26,
а АЗ
-
6.
Получить требуемый результат также можно, введя формулу =ОТБР(А2/АЗ). Под-
робнее функция ОТЕР рассмотрена в разд.
4.9.
1
Чтобы найти остаток, используйте функцию остАТ. Обычно ее применяют в форму
ле =ОСТАТ (число;делитель), где аргумент число делится на делитель. Так, для нахожде
ния остатка при делении ячейки А2 на ячейку АЗ введите =ОСТАТ(А2;А3) -
нет
2,
если ячейка А2 равна
26,
а ячейка АЗ
это вер
- 6.
Функцию ОСТАТ также можно задействовать для возвращения дробной части числа,
использовав ее в формуле =ОСТАТ (число;
1).
1
Чтобы найти наибольшее общее кратное, т. е. наибольшее число, на которое делят
ся все числа без остатка, используйте функцию нод в формуле вида =нод (числа). Так,
для нахождения наибольшего общего кратного для чисел из ячеек диапазона А2:АЗ
введите =НОД(А2 :АЗ) -это возвращает
2,
если ячейка А2 равна
26,
а АЗ
- 6.
Пояснение
В этом разделе показано, как находить частное, остатки и наибольшее общее крат
ное. Он также знакомит вас с функцией остАт, у которой множество применений
(см.,
например, разд.
6. 8).
120
Глава
4
Округляем до десятичных разрядов и целых чисел
4.9.
Задача
У вас есть число, и вы хотите округлить его до заданного количества десятичных
разрядов или до целого числа.
Решение
Excel
в
содержит различные функции
зависимости
от того,
надо
ли
вам
округления,
округлить
которые
можно
положительные
и
использовать
отрицательные
числа в большую или меньшую сторону или до ближайшего числа. На рис.
4.5
представлено краткое описание работы этих функций.
Положи
тельные
числа
Рис.
4.5.
ОКРУГ.ПВВЕРХ
ОКРВВЕРХ.Ю'.Т
ОКРВНИЗ . Ю'.Т
ОКРУГ.ПВНИЗ
ЦЕ.ПОЕ
ОТБР
Способы округления положительных и отрицательных чисел различными функциями
Чтобы округлить число до ближайшего целого или десятичного числа, используйте
функцию ОКРУГЛ. Обычно ее применяют в формуле =ОКРУГЛ ( число;число_разрядов), где
число_разрядов
определяет количество десятичных
разрядов,
до
которых
вам
надо
округлить аргумент число. Положительное значение аргумента число_разрядов просто
указывает на количество десятичных разрядов, если оно равно нулю, функция
округляет число до ближайшего целого, а если оно отрицательно
во от десятичной точки. Так, при вводе ~КРУГЛ(S,б;О) число
ближайшего целого числа (возвращая
6),
5,6
округляет вле
округляется до
а при вводе ~КРУГЛ(-5,673;2) число
округляется до двух десятичных разрядов (возвращая
5,673
-5,67).
Чтобы округлить положительные и отрицательные числа от нуля, используйте
функцию ОКРУГЛВВЕРХ. Она работает аналогично функции ОКРУГЛ, за исключением
того, что округляет положительные числа в большую сторону от нуля, а отрица
тельные
-
в меньшую сторону от нуля. «Под капотом» она сначала округляет аб
солютное значение числа, увеличивая его значение, а затем применяет знак. Так,
при
вводе ~КРУГЛВВЕРХ(S,321;2)
~КРУГЛВВЕРХ(-5,З;О) число
-5,3
число
5,321
округляется до
5,33,
а при вводе
округляется до~-
Чтобы округлить положительные числа от нуля, а отрицательные числа к нулю,
используйте
=ОКРВВЕРХ. МАТ
функцию
ОКРВВЕРХ.МАТ.
( число; кратное),
где
число
-
Обычно
ее
применяют
это число, которое вам
кратное (необязательный аргумент) указывает кратное, до
в
формуле
надо округлить, а
которого вам
нужно
Математические операции
округлять числа,
по умолчанию оно равно
-
1 для
положительных чисел и
отрицательных. Так, при вводе =ОКРВВЕРХ.МАТ (5,321; о, 1)
до
5,4,
число
5,321
121
-1
для
округляется
а =ОКРВВЕРХ.МАТ(-5,3) округляет число-5,3 до-5.
Чтобы округлить положительные и отрицательные числа к нулю, используйте
функцию ОКРУГЛВНИЗ. Она работает аналогично функциям ОКРУГЛ и ОКРУГЛВВЕРХ, за ис
ключением того, что округляет положительные числа в меньшую сторону, а отри
цательные числа к нулю. «Под капотом» она сначала округляет абсолютное значе
ние
числа,
уменьшая
его
значение,
=ОКРУГЛВНИЗ(5,32;1) число
число
-5,3
округляется
5,32
до -5.
а затем
округляется до
применяет
5,3,
знак.
Так,
при
вводе
а при вводе =ОКРУГЛВНИЗ(-5,3;0)
Если вам надо округлить число до целого, то можно использовать функцию ОТЕР
вместо ОКРУГлвниз. Функция ОТЕР работает так же, как и ОКРУГЛВНИЗ, и использует те
же аргументы, но ее аргумент число _разрядов необязателен и по умолчанию равен
нулю. Так, при вводе =ОТБР(5,3) число
число
-5,3
округляется до
5,3
округляется до
5,
а при вводе =ОТБР(-5,3)
-5.
Чтобы округлить положительные числа к нулю, а отрицательные числа от нуля,
используйте
функцию
окРвниз.мАТ,
которая
работает
аналогично
функции
ОКРВВЕРХ. МАТ. Обычно ее применяют в формуле =ОКРВНИЗ. МАТ I число; кратное), где число это число, которое вам надо округлить, а кратное (необязательный аргумент) указы
вает кратное, до которого вам нужно округлять числа,
но
1
для
положительных
=ОКРВНИЗ.МАТ(5,321;0,1) число
число
-5,3
округляется до
чисел
5,321
и
-1
для
-
по умолчанию оно рав
отрицательных.
округляется до
5,3,
Так,
при
вводе
а при вводе =ОКРВНИЗ.МАТ(-5,3)
-6.
Если вам надо округлить число до целого, то можно использовать функцию ЦЕЛОЕ
вместо ОКРВНИЗ.МАТ. Эта функция принимает один аргумент
-
число, которое вы
собираетесь округлить до целого, поэтому при вводе =ЦЕЛОЕ (5, 3) число
ляется до
5,
а при вводе =ЦЕЛОЕ(-5,3) число
-5,3
5,3
округ
округляется до--6.
Обсуждение
Как видите,
Excel
предлагает несколько функций, которые округляют числа немно
го отличающимися друг от друга способами
-
в то время как функция ОКРУГЛ
округляет значения до ближайшего числа, все остальные округляют положитель
ные или отрицательные значения от нуля или к нулю. Сравнение поведения функ
ций округления показано на рис.
4.1 О.
4.5.
Округляем до значащих цифр и кратных значений
Задача
У вас есть число, и вы хотите округлить его до кратного другого числа или до
заданного количества значащих цифр.
Глава
122
4
Решение
Функции ОКРУГЛ, ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ и ОТБР (см. разд.
4.9)
позволяют округлять
число до кратного 10-й степени. Например, при вводе =ОКРУГЛ(2З4,5;-1) число
округляется до ближайшего кратного
I О,
234,5
230, а при вводе =ОКРУГЛ (234, s; -2)
кратного 100, возвращая 200.
возвращая
это же число округляется до ближайшего
Вы можете задействовать эти функции для округления числа до заданного количе
ства значащих цифр. Обычно используют формулу =ОКРУГЛ(число;значаПI;1е_цифры,
ДЛСТР (ОТБР (АВS ( число) 1 1 1, округляющую число до заданного числа значаПI;1е_ цифры. Так,
если ячейка А
I
содержит число
23 456,789,
вы округлите ее до двух значащих
цифр, введя формулу =ОКРУГЛ(А1;2-ДЛСТР(ОТБР(АБS (Al))) ), что вернет
Чтобы округлить число до кратного степени не выше
I О,
23
ООО.
используйте функции
ОКРУГЛТ, ОКРВВЕРХ.МАТ И ОКРВНИЗ.МАТ.
Функция ОКРУГЛТ округляет число до ближайшего кратного и применяется в форму
ле =ОКРУГЛТ (число;кратное). Так, чтобы округлить число
ного
5, введите =ОКРУГЛТ(2З456;5),
-23 456 до ближайшего кратного 5,
23 456 до ближайшего крат
23 455, а чтобы округлить число
введите =ОКРУГЛТ(-23456;-5), что вернет-23 455.
что вернет
' Аргументы число и кратное функции ОКРУГЛТ должны быть одного знака, в противном случае она вернет ошибку в значении #Н/д ! . Если вам необходимо округлить
'
. положительные
вместо
и отрицательные числа до ближайшего кратного,
формулы
кратное*ЗНАК
=ОКРУГЛТ ( число; кратное)
формулу
используйте
=ОКРУГЛТ ( число;
I число) ) .
Чтобы округлить положительное число в большую сторону до ближайшего кратного,
используйте функцию ОКРВВЕРХ.МАТ в формуле =ОКРВВЕРХ.МАТ (число;кратное;мода), где
мода (необязательный аргумент) указывает, как вам надо округлять число, если оно
отрицательное,
-
используйте
чтобы округлить его от нуля. Так, при вводе -ОI<РВВЕРХ.МАТ(-234;5)
число
-234
1,
опустите мода, чтобы округлить отрицательное число к нулю, и
округляется до ближайшего кратного пяти к нулю, возвращая
230,
а при
вводе =ОКРВВЕРХ.МАТ(-234;5;1) число округляется до ближайшего кратного от нуля и
возвращает
-235.
Чтобы округлить положительное число в меньшую сторону до ближайшего кратно
го, используйте функцию ОКРВНИЗ.МАТ в формуле =ОКРВНИЗ.МАТ (число;кратное;мода).
В этом случае вы опускаете необязательный аргумент мода, чтобы округлить отри
цательное число от нуля, и используете
=ОКРВНИЗ.МАТ(-234;5) число
возвращая
-235,
-234
I
для округления к нулю. Так, при вводе
округляется до ближайшего кратного пяти от нуля,
а при вводе =ОКРВНИЗ.МАТ(-234;5;-1) число округляется до ближай
шего кратного к нулю и возвращает
230.
И наконец, чтобы округлить число до ближайшего четного или нечетного числа
от нуля, используйте функции ЧЁТН и НЕЧЁТ. Например, при вводе =ЧЁТН(2,З) возвра
щается
4,
в то время как при вводе =НЕЧЁТ(2,З) возвращается
3.
Математические операции
1
123
Пояснение
В этом разделе дополняются рекомендации разд.
4.9
в том, что касается округления
числа до заданного количества значащих цифр или до кратного другого числа.
4.11.
Используем степени, экспоненты,
квадратные корни и логарифмы
Задача
У вас есть число, и вы хотите возвести его в степень или найти его квадратный
корень.
Решение
Для возведения числа в степень можно применить оператор л или функцию СТЕПЕНЬ.
Например, при вводе =2"4 или =СТЕПЕНЬ(2;4) вычисляется 24 и возвращается 16.
Чтобы с помощью функции СТЕПЕНЬ охватить диапазоны чисел, можно задейство
вать ее в формуле =СТЕПЕНЬ (числа;степени). Так, если диапазон А2:А5 содержит числа
от
1 до 4, то, к примеру, при вводе формулы =СТЕПЕНЬ (А2 :AS; 2) в Excel 2021 или
Excel 365 возвращается динамический массив (см. разд. 3.4), содержащий каждое
число в квадрате, а при вводе =СТЕПЕНЬ(А2:АS;А2:А5) для каждого значения вычисля
ется х': 11, 22 и т. д. (рис. 4.6).
А
в
с
1
1
Значения
=СТЕПЕНЬ(А2:А5 ; 2)
=СТЕПЕНЬ(А2:АS;А2:АS)
2
3
1
2
1
4
1
4
4
5
3
4
9
16
256
D
27
6
J
Рис.
4.6.
Использование функции СТЕПЕНЬ
Чтобы найти квадратный корень числа, используйте функцию КОРЕНЬ. Например,
при вводе =КОРЕНЬ(4) возвращается
Excel 365
2,
а при вводе =КОРЕНЬ(А2:АS) в
Excel 2021
или
возвращается динамический массив, содержащий квадратный корень ка
ждого числа из диапазона А2:А5.
Чтобы возвести е в степень числа, используйте формулу =ЕХР I число). Так, при вводе
=ЕХР (5) вычисляется е 5 и возвращается 148,4132.
Обратной функции ЕХР является функция LN, возвращающая натуральный логарифм
числа. Обычно ее используют в формуле =LN I число), которая возвращает степень,
в которую необходимо возвести е, чтобы получить нужное число. Так, при вводе
=LN(З) возвращается 1,0986, поскольку е'· 0986 примерно равно 3, а при вводе
=LN(EXP(S)) возвращается
5.
124
Глава
4
Найти логарифм числа по основанию
поможет функция LOGl0. Как правило, ее
IО
используют в формуле =LOGl0 (число), возвращающей степень, в которую вам необ
ходимо возвести
I О,
чтобы получить нужное число. Так, при вводе =LOGl0 (1000) воз
вращается 3, потому что 103 равно I ООО.
Чтобы найти логарифм числа по заданному вами основанию, задействуйте функ
цию LOG. Обычно ее используют в формуле =LOG ( число;основание), где она возвращает
степень, в которую необходимо возвести основание, чтобы получить нужное число.
Так, при вводе
=LOG(16;2)
возвращается 4, потому что 24 равно 16.
Пояснение
В этом разделе более подробно рассмотрены некоторые функции, которые можно
использовать при работе со степенями, экспонентами и логарифмами, включая по-
'
иск квадратного корня числа.
4.12.
Суммируем степенной ряд
Задача
У вас есть степенной ряд (например, 5х3 + 4х 2 + 3х + 2), и вы хотите узнать его ре
зультат для какого-либо значениях.
Решение
Сумму степенного ряда возвращает функция Ряд.СУММ. Она применяется в формуле
вида =РЯД.СУММ(х;n;m;а), аргументы которой представляют собой параметры уравне
ния alx" + а2х 1 "'" 1 + a,x 1'"lm) + д4Х(rнЗт) и т. Д. Аргумент х вая степень х в ряду, т
-
это значение х, п -
это пер
это размер шага, который используется для увеличения
для каждой последующей степени х, а а
-
n
это массив коэффициентов, используе
мых для умножения х. Так, вычислить выражение 5х3 + 4х2 + 3х + 2, где х равно,
к примеру
2,
можно, введя =Ряд.СУММ(2;З;-1; (5;4;3;2}), что вернет
64.
Пояснение
В этом разделе предлагается способ вычисления суммы степенного ряда. Вместо
ввода формулы с помощью операторов* ил можно использовать функцию Ряд.СУММ
и получить тот же результат.
4.13.
Используем факториалы,
перестановки и комбинации
Задача
Вы хотите найти факториал числа или возможные комбинации и перестановки
чисел при выборе
r элементов
из п.
Математические операции
125
Решение
Чтобы найти факториал числа п!
сел от
1
произведение всех положительных целых чи
-
до п, применяйте функцию ФАКТР. Обычно ее используют в формуле
=ФАКТР (nl, которая возвращает п!
-
так, при вводе =ФАКТР(S) возвращается
120.
:,~····· В Excel также есть функция дВФАКТР, которая возвращает двойной факториал чис,
ла, или п 1 ! произведение всех положительных целых чисел от 1 до п с той же
•
четностью (нечетное или четное), что и п.
Чтобы найти количество способов расположения п элементов, часть которых явля
ются дубликатами, задействуйте функцию мультином. Предположим, что вы, к при
меру, решили найти количество способов расположения букв в слове
Muccucunu,
содержащего всего четыре уникальные буквы. Поскольку в нем одна буква М,
одна
-
П, три
-
С и четыре
И, можно вычислить количество способов их рас
-
положения, для чего обычно используют формулу вида =МУЛЬТИНОМ(число_элементов),
где число_элементов указывает количество каждого элемента. Так, введя формулу
=WЛЬТИНСМ(1;1;3;4), вы получите
2520.
Чтобы найти количество перестановок при выборе
r
элементов из п
количества
-
способов расположения элементов, если важен порядок, и выбрать каждый элемент
только один раз, используйте функцию ПЕРЕСТ. Обычно ее применяют в формуле
=ПЕРЕСТ (n; rl, поэтому, если, например, вам надо узнать, сколько портфелей вы
можете создать, выбрав
приходилось
60%
2
акции из
20,
и при этом нужно, чтобы на одну акцию
распределения, а на другую
=ПЕРЕСТ (20; 2), что возвращает
-
оставшиеся
40%,
вы вводите
3 80.
Чтобы найти количество комбинаций (когда порядок не имеет значения) при выбо
ре
r
элементов из п и выбрать каждый элемент только один раз, используйте функ
цию числкомв. Обычно ее применяют в формуле =числкомв (п; rl, поэтому, если, на
пример, вам надо узнать, сколько портфелей вы можете создать, выбрав
взвешенные акции из
20,
вы вводите =числксю,(20;2), что возвращает
2
равно
190.
Функции ПЕРЕСТ и числкомв предполагают, что выбрать каждый элемент допускает
ся только один раз. Если вам нужно выбрать каждый элемент более одного раза,
используйте функции ПЕРЕСТА и ЧИСЛКОМБА. Так, чтобы найти количество возможных
пятизначных паролей, которые используют числа от нуля до девяти, вы вводите
=ПЕРЕСТА(10;5), ЧТО возвращает
100 ООО.
Пояснение
В этом разделе представлено описание функций комбинаторики
Excel,
которые
включают подсчет количества возможных способов расположения элементов. Эти
функции полезны в таких областях, как теория вероятности, и лежат в основе
биномиального распределения (см.разд.
8.14).
126
Глава
1
4.14.
4
Используем тригонометрию
Задача
У вас есть тригонометрическая задача, и вы хотите узнать, какие функции доступны.
Решение
Ехсе\ предлагает следующие тригонометрические функции:
♦
пи
Эта функция возвращает константу 7t (число пи) до
♦
15
знаков.
РАдИАНЫ И ГРАдУСЫ
Функция РАдИАНЫ преобразует угол из градусов в радианы, а функция ГРАдУСЫ пре
образует угол из радиан в градусы.
♦
SIN, COS И TAN
Эти функции возвращают синус, косинус и тангенс угла, заданного в радианах.
Так, чтобы вычислить синус тт/2 радиан, введите =SIN (ПИ о /2), что вернет
♦
1.
CSC, SEC И СОТ
Эти функции возвращают косеканс, секанс и котангенс угла, заданного в радиа
нах. Так, чтобы вычислить секанс тт/3 радиан, введите =SEC (ПИ о /3), что вернет
♦
2.
ASIN, ACOS, ATAN И АТАN2
Функции ASIN, Acos и АТАN вычисляют арксинус, арккосинус и арктангенс и воз
вращают угол в радианах. Функция АТАN2 возвращает арктангенс заданных коор
динат х иу.
♦
SINH, COSH, TANH, CSCH, SECH, СОТН, ASINH, ACOSH И ATANH
Эти функции возвращают гиперболический синус, косинус, тангенс и т. д.
Пояснение
Как видите,
Excel
предлагает изобилие функций, которые можно задействовать для
решения тригонометрических задач. Большинство из них принимают и возвращают
угол
в
радианах,
поэтому
при
необходимости
используйте
функции
и ГРАдУСЫ для переключения между радианами и градусами.
4.15.
Работаем с матрицами
Задача
Вы хотите решить задачу в
Excel
с помощью матриц, но не знаете как.
РАдИАНЫ
Математические операции
1
127
Решение
Предположим, три покупателя решили приобрести различное количество двух про
дуктов. Вы знаете цену и вес каждой единицы продукции и собираетесь вычислить
общую сумму и вес для каждого покупателя. Пусть в диапазоне В2:С4 указано ко
личество товаров для каждого покупателя, а в диапазоне
вес каждой единицы продукции (рис.
F2:G3
приведены цена и
4.7).
Решить эту задачу можно, представив купленное количество товаров, цену и вес
каждой единицы продукции в виде двух матриц и перемножив их. Это можно сде
лать с помощью функции МУМНОЖ, которая перемножает две матрицы и возвращает
динамический массив. В рассматриваемом примере при вводе ;МУМJiОЖ(В2:С4;F2:GЗ)
возвращается динамический массив, который рассчитывает общую цену и вес то
варов для каждого покупателя.
А
1
Клиент
2
Аня
8
с
Количество
тарелок
кружек
3
Борис
4
Каролина
6
7
l клиент
Стоимость
•
;]
10
4
5
6
о
Количество
Е
F
Товар
Цена
Тарелки
Кружки
400
1
300
н
G
Вес
•
1,51
0,7.
Общий вес
=MYMHOЖ( B2:C4;F2:GЗ)I
Аня
8
Борис
4000
11,6
9
Каролина
3600
11,8
10
Рис.
4. 7.
Использование функции МУМНОЖ для перемножения двух матриц
Предположим, вы знаете цену и вес единицы продукции и общую сумму товаров
для каждого покупателя. В этом случае вы вычисляете количество купленных каж
дым покупателем товаров, умножив матрицу общей суммы покупателя на обрат
ную матрицу цены и веса единицы продукции. Обратную матрицу (если она суще
ствует) можно получить с помощью функции МОБР. Так, если в диапазоне В2:С4
указаны общие суммы товаров для каждого покупателя, а в диапазоне
F2:G3
при
ведены цена и вес единицы продукции, то при вводе =-МУМНОЖ (В2: С4 ;ЮБР
(F2: GЗ))
воз
вращается матрица покупок покупателей (рис.
4.8).
Существуют и другие функции для работы с матрицами:
♦ МЕДИН
Эта функция возвращает единичную матрицу для заданного размера. Например,
формула =МЕдин (З) возвращает единичную матрицу из трех строк и столбцов.
♦
МОПРЕД
Эта функция возвращает определитель матрицы.
♦
ТРАНСП
Эта функция транспонирует диапазон ячеек, преобразуя строки в столбцы
и столбцы в строки (см. разд.
7.4).
Глава
128
4
1
Клиент
2
Аня
з
Борис
4
Каролина
.
Стоимость
Общий вес.
58
40
19,21
11,6
36
11,8
Количество
Количество
тарелок
кружек
1
Е
D
с
в
А
Цена
Товар
Тарелки
Кружки
4
з
1
н
G
F
.
Вес
1,51
0,7
5
б
Клиент
7
Аня
8
9
Борис
4
8
Каролина
б
4
=МУМНОЖ{ В2:С4; МОБР {F2:GЗ) )
10
Рис .
4.8. Использование функций МУМНОЖ и МОБ Р
Функции мумн ож, М ОБР, М Един и Т РАНСП возвращают динамические массивы (см .
,
разд.
3.4).
. Excel 365,
Excel, чем Excel 2021 или
то перед вводом формулы выберит~ весь диапазон выходных данных. а
Если вы используете более раннюю версию
затем нажмите комбинацию клавиш
<Ctrl>+<Sh1ft>+<Enter>.
Пояснение
В этом разделе описан ряд матричных функций
Excel, использовать которые мож
но, например, для решения систем линейных уравнений .
4.16.
Преобразуем одну систему счисления в друrую
Задача
У вас есть число, и вы хотите преобразовать его в другую систему счисления (на
пример , десятичную в двоичную , восьмеричную или шестнадцатеричную).
Решение
Чтобы преобразовать числа из одной системы в другую, используйте функции
ДЕС . В . ДВ,
ДЕС.В.ВОСЬМ,
ДЕС.В.ШЕСТН ,
ДВ.В. ДЕ С,
ДВ.В.ВОСЬМ,
ДВ.В. ШЕ С ТН,
ВОСЬМ .В . ДЕС,
восьм.в. дв, ВОСЬМ .В. ШЕСТН, ШЕСТН. В .ДЕС, ШЕСТН.В. ДВ и ШЕСТН. В. ВОСЬМ . Так, чтобы преобра
9, например, в двоичное, введите =дЕс . в . дв(9), что вернет
1001 . Аналогично для преобразования шестнадцатеричного числа из ячейки А2
в десятичное вы вводите =IПЕСТН . В.дЕС ("А2"), что возвращает 162.
зовать десятичное число
Пояснение
В этом разделе рассматривается преобразование чисел между десятичными , двоич
ными, восьмеричными и шестнадцатеричными системами счисления . Это полезно,
например, если вам надо выполнить побитовые операции с двоичным битовым по
лем (см.разд.
4.17).
Математические операции
4.17.
129
Выполняем побитовые операции
Задача
У вас есть двоичное битовое поле, и вы хотите выполнять с ним побитовые опера
ции.
Решение
Предположим, у вас есть набор десятичных табличных данных системы управле
ния грузовиком, посыпающим солью улицы в морозную погоду, в которых каждое
число представляет текущее состояние его четырех датчиков в виде двоичного би
тового поля. Первый бит соответствует датчику клапана давления, второй
пределителю, третий
-
подаче соли, четвертый
бит датчика принимает значение
1,
-
рас
-
сигнальной лампочке. Каждый
если он включен, и О, если он выключен, поэто
му, если клапан давления и распределитель включены, а подача соли и сигнальная
лампочка отключены, система управления записывает значение
формате или десятичное число
в двоичном
0011
3.
Чтобы определить, включен ли тот или иной датчик, можно применить для таблич
ных данных системы управления функцию БИТ. и. Эта функция принимает вид
=БИТ. и (числоl ;число2), где числоl и число2 -
десятичные числа, и возвращает побито
вое И своих аргументов в виде десятичного числа. Так, если система управления
записывает, к примеру, значение
6,
то выяснить, включен ли клапан давления (пер
вый датчик), можно, введя =БИТ.И(б;l)>О, что вернет значение ложь. Аналогичным
образом
можно выяснить,
включен ли
распределитель (второй датчик),
введя
=БИТ.И(б;дв.В.дЕС(lО))>О, что вернет значение истиНА. И наконец, если в диапазоне
А2:А6 приведен список табличных данных системы управления и вы используете
Excel 2021
или
отобразив
состояние
Excel 365,
то можете вернуть динамический массив (см. разд.
каждого
дв.В.дЕС({l;lО;100;1000}) )>О (рис.
__
А
Контоольное значение
1
2
датчика
путем
ввода
1
в
с
D
Е
давление
Распределитель
Подача соли
Маячон
ложь
ложь
ложь
4
4
5
11
6
2
ИСТИНА
3.4),
=БИТ.И(А2:Аб;
4.9).
6 =БИТ. И{А2:Аб;ДВ.В.!3ЕС(11;10;100;1000}))>q
1
з
формулы
-
F
ложь
ложь
ложь
ИСТИНА
ложь
ИСТИНА
ИСТИНА
ложь
ИСТИНА
ложь
ИСТИНА
ложь
ложь
: 1
Рис.
4.9.
Использование функции БИТ. И с двоичным битовым полем
К другим побитовым функциям относятся:
♦
БИТ . ИЛИ И БИТ . ИСК.ПИЛИ
Эти функции возвращают побитовое ИЛИ и ИСКЛИЛИ (исключая ИЛИ) своих
аргументов.
130
♦
Глава
4
БИТ. СДВИГЛ И БИТ. СДВИГП
Эти функции возвращают число, сдвинутое влево или вправо на заданное коли
чество битов.
Пояснение
Побитовые операции позволяют вам выполнять операции на уровне битов и рабо
тать с двоичным представлением числа вместо собственно значения числа. Они
будут полезны при работе с таким структурами, как битовые поля, что и показано
в примере, рассмотренном в этом разделе.
Дополнение
Более подробно преобразование чисел между десятичными и двоичными система
ми счисления представлено в разд.
4.18.
4.16.
Работаем с комплексными числами
Задача
Вы хотите поработать в Ехсе\ с комплексными числами, и вам надо узнать, какие
функции будут доступны.
Решение
Комплексное число - это число вида а + Ьi, где а и Ь являются реальными числа
ми, а i - это квадратный корень числа -1.
Чтобы поместить комплексное число в ячейку, можно ввести его туда напрямую
или передать его реальные и мнимые коэффициенты в функции комплЕксн. Так, для
ввода комплексного числа 6 + 2i, например, в ячейку А2, надо либо ввести в нее
6+2i, либо формулу =КСЮIЛЕКСН(6;2).
ii!J·
•
Excel
также подцерживает использование для записи комплексных чисел j вместо i.
То есть допускается ввести в ячейку
6+2j
или формулу =КСЮIЛЕКСН(6;2;"j").
Чтобы извлечь реальные и мнимые коэффициенты комплексного числа, используй
те функции мним. ВЕЩ и мним. ЧАСТЬ. Так, если ячейка А 1 содержит комплексное число
6 + 2i, то при вводе =МНИМ.ВЕЩ(Аl) возвращается б, а при вводе =МНИМ.ЧАСТЬ(Аl) воз
вращается
2.
Чтобы найти сопряженное, аргумент и абсолютное значение комплексного числа,
используйте функции МНИМ.СОПРЯЖ, МНИМ.АРГУМЕНТ и МНИМ.АВS. Так, если ячейка А} со
держит, к примеру, значение
6+2i, то
при вводе =МНИМ.СОПРЯЖ(Аl) возвращается
6-2i.
Для выполнения арифметических операций с комплексными числами используйте
функцию мним.СУММ- чтобы суммировать их, мним.РАЗН- чтобы вычесть одно чис-
Мвтвмвтичвские операции
ло из другого, мним. ПРОИЗВЕд -
чтобы вычислить произведение и мним. дЕЛ -
1
1З 1
чтобы
разделить одно число на другое. Например, при вводе =МНИМ.СУЖ("б+2i" ;"5-4i") воз
вращается
l 1-2i, а при
вводе =МНИМ.ПРОИЗВЕд("б+2i"; "S-4i") возвращается
Убедитесь, что вы постоянно используете либо
i,
либо
j
38-14i.
для обозначения ком
плексного числа, а не оба сразу. Например, при вводе =МНИМ.СУЖ("б+2j";
возвращается
-
Excel
••
11-2j,
но при вводе =МНИМ.СУЖ("б+2i"
"S-4j")
;"S-4j") возвращается ошиб-
ка в значении #ЗНАЧ!.
также включает и другие версии функций для работы с комплексными чис
лами, перед каждой из которых вводится префикс мним. Например, используйте
мним.КОРЕНЬ -
чтобы найти квадратный корень комплексного числа, мним.LN -
бы найти натуральный логарифм комплексного числа, мним.srN -
что
чтобы найти си
нус комплексного числа и т. д.
Пояснение
В этом разделе представлен обзор наиболее важных функций комплексных чисел
в
Excel.
Они могут использоваться, например, с выходными данными инструмента
Анализ Фурье
(см. разд.
9.19).
(Fourier Analysis)
надстройки Пакет анализа
(Analysis ToolPak)
ГЛАВАS
Работа с текстом
Программа
Excel -
не текстовый редактор, хотя во многих ситуациях вам придется
с его помощью обрабатывать текстовые строки и преобразовывать данные в соот
ветствии с определенной моделью.
В этой главе рассказывается о том, как использовать формулы для выполнения
обычных задач по преобразованию текста, включая объединение текста, извлече
ние числовых кодов, удаление лишних пробелов и символов и применение тексто
вых форматов к денежным и числовым значениям, а также меткам даты и времени.
~
]
ж
5.1.
Множество операций, описанных этой главе, также можно выполнить с помощью
инструмента
Excel Power Query
(см. главу
15).
Объединяем текст
Задача
У вас есть две и более текстовые строки, и вы хотите их объединить.
Решение
Предположим, что ячейка А 1 содержит текст Петр, В 1 -
текст Иванов, и вам требу
ется соединить эти две текстовые строки.
Один из возможных методов использует оператор &, который связывает две тексто
вые строки. Так, при вводе в ячейку С 1 формулы =Al&Вl в нее вставляется текст из
ячейки А 1, а в конец этого текста добавляется текст из ячейки В 1, в результате чего
возвращается текст петрИванов. Если вам надо вставить между двумя текстовыми
строками пробел и вернуть Петр Иванов, введите формулу =Al&" "&Вl -
так вы доба
вите пробел в конец текста из ячейки А 1, прежде чем добавить текст из ячейки В 1.
Любой статический текст
-
такой как, например, пробелы
-
необходимо заклю
чить в двойные кавычки, и опустить их, если вам надо, чтобы
Excel
расценивал
что-либо как ссылки на ячейки. К примеру, формула =Al&Bl объединяет содержи
мое ячеек А 1 и В1, в то время как формула
="Al " & "Вl" возвращает текст AlВl.
Альтернативный подход заключается в использовании функции СЦЕП. Обычно ее
применяют в формуле =СЦЕП ( текстl ;текст2;
... ),
где
текст 1,
текст2 и т. д.
-
это
134
1
Глава
5
текстовые значения, которые вам надо соединить. Например, ввод =СЦЕП (Al;" ";Bl)
эквивалентен формуле =Al &" " &Bl и возвращает Петр Ивано в.
Если вы работаете с
Excel 2019
или более поздней его версией, то можете задейст
вовать функцию ОБЪЕдинить, которая позволяет указать разделитель и игнориро
пустые
любые
вать
запросы .
Обычно
ее
применяют
=ОБЪЕДИНИТ Ь (ра зделитель; игнориров ать_ текст ; текс т ов ое_ зна чение),
в
вида:
формуле
разделит ель
где
-
ЭТО
разделитель между каждым текстовым значением, игнориров а ть_ текст указывает, иг
норировать ли пустые ячейки, а т екстов ое_ значение ссылается на текст, который вам
надо объединить ,
-
например, на ячейки или диапазон ячеек. Так, чтобы объеди
нить тексты ячеек А! и В! , разделив их пробелом , введите =ОБЪЕДИНИТЬ(" " ; ИСТИНА;
Al;Bl)
";ИСТИНА;Аl : Вl)
или =ОБЪЕДИНИТЬ("
(рис.
5.1).
Аналогично , чтобы соединить
текст в диапазоне А 1:А5, разделив каждое значение запятой и пробелом , введите
=Ою.ЕДИНИТЬ
(";" ; ИСТИНА; А1: А5) .
,---
Петр
2
Клава
с
в
А
1
1=ОБЪЕДИНИТЬ("
т Иванов
Е
D
";И СТИНА ;Аl;В1)
·---·------------Иванова
Клава Иванова
3
Рис.
5.1.
Использование функции ОБЪЕДИНИТ Ь для соединения текста
Пояснение
В этом разделе описаны удобные способы объединения текста с помощью операто
ра & и функций СЦЕП и ОБЪЕдинить. Обратитесь также к разд.
5.15 -
чтобы научиться
преобразовывать в текстовую строку массив (например, диапазон ячеек) , или
к разд. 5. 7, где рассказано об извлечении части текста (например, инициалов) .
5.2.
Используем символьный код
Задача
У вас есть две или более текстовые строки , и вы хотите вставить между ними сим
вол
-
например, разрыв строки.
Решение
Предположим , что вам надо объединить текст из диапазона ячеек А 1:А5 , используя
разделитель разрыв строки.
Решить эту задачу можно с помощью функции символ, которая возвращает символ
по его числовому коду. Например , формула символ110) возвращает разрыв строки,
принятый в Windows, а также в macOS (если вы работаете в Excel 365), поэтому,
чтобы объединить текст в диапазоне ячеек А 1:А5, используя в качестве разделите
ля разрыв строки, вам следует ввести формулу =ОБЪЕДИНИТЬ(СИНВОЛ(lО) ; ИСТИНА;Аl : АS)
(для более ранних версий
Excel
в
macOS
введите символ 113) вместо символ 110) ).
Работа с текстом
1
135
Разрывы строк видимы только в ячейках, способных отражать переносы текста.
Настройте этот параметр, выделив ячейку и выполнив команду меню Главная
(Home)
1 Выравнивание
(Alignment)
1 Переносить текст
Чтобы вруч
Excel для
клавиш <Ctrl>+
CNrap Text).
ную вставить в содержащийся в ячейке текст разрыв строки, нажмите в
Windows комбинацию клавиш <Alt>+<Enter> и комбинацию
+<Option>+<Enter> или <Option>+<Enter> в Excel для macOS.
Можно также использовать и функцию кодсимв, помогающую найти числовой код,
соответствующий первому символу в текстовой строке. Так, чтобы найти числовой
код буквы А, введите формулу =КОДСИМВ("А"), которая вернет
Если вам нужно использовать символы
чтобы вставить символ
Unicode,
Unicode,
65.
примените функцию юнисимв
и функцию UNICODE -
чтобы вернуть число
-
Unicode
символа.
Пояснение
Числовые коды, возвращаемые функциями символ и кодсимв, берутся из набора сим
волов,
в
принятого
Windows
в
вашей
операционной системе,
и набора символов
для числовых кодов вплоть до
macOS в macOS. Эти
127 включительно.
-
набора символов
Диапазон использования символьных кодов достаточно широк
меры приведены в разд.
5.3.
5.3, 5.4
и
ANSI
наборы символов идентичны
-
некоторые при
5.14.
Генерируем последовательность символов
Задача
Вы хотите сгенерировать последовательность символов.
Решение
Ехсе\
2021
и Ехсе\
365
позволяют для генерации последовательности символов ис
пользовать функции символ и послЕд.
Чтобы сгенерировать список символов, возвращаемых функцией символ, введите
формулу =СИМВОЛ(ПОСЛЕД(255))
25 5 символов,
Чтобы
-
это вернет динамический массив (см. разд.
3.4)
из
начиная с символ (1).
сгенерировать
-СИМВОЛ(ПОСЛЕд(26;1;65))
список
-
заглавных
это вернет
26
букв
от
А
до
Z,
введите
формулу
символов, начиная с символ (65), что соот
ветствует А. Чтобы сгенерировать список строчных букв от а до
z,
введите
=СИНВОЛ(ПОСЛЕД(26;1;97)).
Пояснение
В этом разделе предложен удобный способ генерирования динамического массива,
содержащего последовательность символов, которую можно использовать, напри
мер, с решениями из разд.
5. 7.
Глава
136
1
5.4.
Генерируем случайные буквы
5
Задача
Вы хотите сгенерировать случайную букву из списка от А до
Z.
Решение
Сгенерировать случайную заглавную букву из списка от А до
Z
включительно
можно, введя =СИМВОЛ(СЛУЧНЕЖДУ(65;90)). Эта формула использует функцию СЛУЧМЕ)IЩУ
(см.разд.
4. 1) -
чтобы сгенерировать случайное число между
но, которое затем функция символ преобразует в буквы от А до
65
Z.
и
90
включитель
А чтобы сгенери
ровать случайную строчную букву, введите =СИМВОЛ(СЛУЧНЕЖДУ(97 ;122)).
Пояснение
В этом разделе предложен быстрый способ генерирования случайных букв латини
цы. Использовать этот подход также можно и для генерирования других случайных
символов.
5.5.
Определяем длину текстовой строки
Задача
У вас есть текстовая строка, и вы хотите определить ее длину.
Решение
Предположим, что вам надо узнать, сколько символов содержит текст в ячейке А 1.
Определить это можно, введя формулу =длСТР(Аl), которая и вернет длину текста
в ячейке А 1. Или использовать формулу вида =ДПСТР (текст), которая при вводе,
к примеру, =ДЛСТР("Привет всем!"), вернет
12.
Пояснение
Функция дпстР предоставляет удобный способ возврата длины текстовой строки,
который допускается сочетать с другими решениями, предлагаемыми в этой книге.
Например, использование дпстР в одном из решений разд.
5. 7 позволит
вернуть все
символы в текстовой строке, за исключением первого.
5.6. Определяем
местоположение текста в текстовой строке
Задача
У вас есть текстовая строка, и вы хотите найти местоположение конкретного текста
внутри нее.
Работа с текстом
137
Решение
Предположим, что вам надо найти в тексте из ячейки А 1 местоположение первого
пробела. Сделать это можно, введя формулу =НАЙТИ(" ";Al). Функцию НАЙТИ обычно
используют В формуле вида: =НАЙТИ (искомый_ текст; просматриваемый_ текст; нач_ позиция),
где искомый_ текст -
это текст, который нужно найти, просматриваемый_ текст -
текстовая строка, в которой
аргумент)
это
-
Excel
это номер символа, с которого должен начаться поиск. По умолчанию
начинается
с
=НАЙТИ ("";"Привет всем!") возвращает
7-
1,
это
будет его искать, а нач_ позиция (необязательный
поэтому
поиск
начала текстовой
строки.
Так,
формула
позицию символа пробела. Если функция
НАЙТИ не может найти указанный текст, она возвращает ошибку #ЗНАЧ!, которая под
робно описана в разд.
7. 7.
Функция НАЙТИ чувствительна к регистру. Так, формула =НАЙТИ ("А"; "Аарон") воз
вращает
1
для позиции первой заглавной буквы А, в то время как формула
=НАЙТИ ("а"; "Аарон") возвращает
2-
позицию первой сточной буквы а.
Альтернативу функции НАЙТИ составляет функция поиск -
она работает аналогично
НАЙТИ, однако нечувствительна к регистру. Так, формула =ПОИСК("а";"Аарон") возвра
щает
1.
Функция поиск может также принимать специальные символы, которые допускается
использовать для замены других символов. Обычно символ ? применяют для заме
ны одного символа, а символ * -
для замены нескольких символов. Например,
формула =ПОИСК("?м"; "Привет всем!") возвращает
10 -
т. е. позицию перед буквой м.
Аналогичным образом формула =ПОИСК("е*м";"Привет всем!") возвращает
5-
пози
цию первой буквы е. Это отличается от результата формулы =поиск ( "е"; "Привет
всем!"); -
поскольку первая формула также проверяет, включает ли текст следую
щую букву м. Если вам надо найти в текстовой строке знак вопроса или звездочку,
то
это
можно
сделать,
введя
=поиск ("~?";"Привет?") возвращает
перед
7-
ними
символ
-.
Например,
формула
позицию знака вопроса.
Функции НАЙТИ и поиск также можно использовать для поиска в массиве символов
и возвращения позиции первого символа. Например, чтобы проверить, включает ли
ячейка
AI
число,
примените
формулу =СЧЁТ(НАЙТИ({О;1;2;3;4;5;6;7;8;9J;Аl) )>О, а
чтобы найти местоположение первого числа
6;7;8;9);А1&"0123456789")
-
формулу =МИН (НАЙТИ ( {о; 1; 2; з; 4; 5;
).
Фрагмент Al&"0l23456789" гарантирует, что функция найдет хотя бы одно вхождение
каждого числа и не вернет ошибку (рис.
А
.
В
5.2).
C _ _ _D
____ __
Е
F
G
))
1 NY1234 1=МИН(НАЙТИ({О;1;2;3;4;5;6;7;8;9};А1&"0123456789"
.......__
2 LON7854
4
3
Рис. 5.2. Использование функции НАЙТИ для поиска первого числа
..i
Глава
138
5
Пояснение
В этом разделе представлен полезный способ поиска местоположения текста в тек
стовой строке. Сочетать этот способ можно и с другими решениями. Например,
применение его вместе с решением из разд.
5. 7 поможет
извлечь часть подстроки,
не зная ее начальной позиции.
5.7.
Извлекаем текст фиксированной ширины
из текстовой строки
Задача
У вас есть текстовая строка, и вы хотите вернуть ее первые, последние или средние
символы.
Решение
Предположим, что вам надо вернуть первые, последние или средние символы тек
ста из ячейки А 1.
Чтобы
вернуть
первые
символы
текстовой
строки,
=ЛЕВСИМВ ( текст;количество_ знаков), где количество_ знаков
-
используют
формулу
это ЧИСЛО СИМВОЛОВ (не
обязательный аргумент), по умолчанию его значение равно
1.
Чтобы вернуть,
к примеру, первый символ из ячейки А 1, введите =ЛЕВСИНВ (Al) , а если ячейки А 1 и
В1 содержат чье-то имя или фамилию, соединить их инициалы удастся, введя
=ЛЕВСИНВ
(Al)
Чтобы
&ЛЕВСИМВ
вернуть
(Bl) .
последние
символы,
используйте
формулу
=ПРАВСИМВ (текст;
количество_знаков). Так, для возвращения, к примеру, последнего символа из ячейки
А 1 введите =ПРАВСИМВ (Al), а для возвращения всех символов, кроме первого, введите
=ПРАВСИМВ
(Al;
ДЛСТР
(Al) -1) .
Чтобы вернуть символы из середины текстовой строки, используйте формулу
=ПСТР (текст; начальная_ позиция; количество_ знаков), где начальная_ позиция
символа, с которого поиск должен начаться, а количество_ знаков
-
-
ЭТО позиция
это число знаков,
которое надо вернуть. Так, для возвращения, к примеру, второго, третьего и чет
вертого знаков из ячейки А 1 введите =ПСТР (Al; 2; З).
[~
• · · Если начальная позиция превышает длину аргумента текст, то функция ПСТР воэI. . . . .
вращает пустую строку"". Если сумма начальная_позиция и количество_знаков пре1
вышает длину аргумента
текст, то функция возвращает символы вплоть до конца
текста.
Использовать функцию ПСТР можно вместе с решениями из разд.
5. 6 -
чтобы из
влечь символы из текста, который будет найден в текстовой строке. Например,
чтобы вернуть первые два символа из ячейки А 1, за которыми следует пробел, вве
дите =ПСТР(Аl;НАЙТИ(" ";А1)+1;2). В этом примере фрагмент НАЙТИ(" ";Al) возвращает
Работа с текстом
1
139
позицию первого пробела, а добавление к нему фрагмента + 1; 2) позволяет извлечь
позицию следующего символа.
Пояснение
Советы из этого раздела пригодятся, когда понадобится извлечь подстроку фикси
рованной ширины из некоторого текста. Обратите внимание на то, как можно ис
пользовать это решение в сочетании с другими
например, из разд.
-
5. 5
и
5. 6, -
чтобы адаптировать свой подход.
5.8.
Извлекаем текст из текстовой строки
с помощью разделителя
Задача
У вас есть текстовая строка, и вы хотите извлечь текст перед или после определен
ного символа.
Решение
Предположим, что ячейка А 1 содержит чье-то имя и фамилию, разделенные пробе
лом, и вам надо разбить текст на имя и фамилию.
Чтобы вернуть текст перед разделителем
функцию
тЕкстдо
(она
доступна
-
например, перед пробелом, примените
пользователям
=ТЕКСТДО(Аl;" ") возвращается текст из ячейки
Al
Excel 365).
Так,
при
вводе
до первого пробела. Обычно эту
функцию используют в формуле:
=ТЕКСТДО(текст;разделитель;номер_вхождения;учет_регистра;сопоставлять_с_концом;
совпадение_ не_ найдено)
со следующими аргументами:
♦
текст
Это текстовая строка, из которой будут извлекаться символы.
♦ разделитель
Разделитель, который требуется использовать.
♦
номер_вхождения
Экземпляр разделителя, до которого вам надо извлечь текст (по умолчанию
равен
1).
Если нужно начать поиск разделителя с конца текста, установите ему
отрицательное значение.
♦
учет_регистра (необязательный аргумент)
Если разделитель
-
фрагмент текста, то этот аргумент указывает, должен ли
текстовый поиск быть чувствительным к регистру. По умолчанию он к нему
чувствителен, и чтобы сделать его нечувствительным, нужно установить его
в значение
1.
140
♦
Глава
5
сопоставлять с концом (необязательный)
Этот аргумент указывает, надо ли рассматривать конец текста как разделитель.
По умолчанию он предполагает, что этого делать не надо, и чтобы отменить
такой подход, установите его в значение
♦
1.
совпадение_ не_ найдено (необязательный)
Это значение, которое вам надо вернуть, если совпадений не найдено (по умол
чанию возвращает #Н/д 1 ).
Если разделителей несколько, указать их можно с помощью массива. Так, чтобы
вернуть, к примеру, текст в ячейке А
I
до пробела или до точки с запятой, исполь
зуйте формулу =ТЕкстдо (Al; {" ";";"}),где
{" "; ";"} -
это массив разделителей.
Чтобы вернуть текст после разделителя, можно использовать функцию тЕкспослЕ
(она доступна пользователям
исключением
того,
что
Excel 365).
возвращает
Функция работает аналогично ТЕкстдо, за
текст
после
разделителя.
Так,
при
вводе
=ТЕКСТПОСЛЕ (Al;" ") возвращается текст из ячейки А I после первого пробела.
Чтобы вернуть текст между двумя символами или строками, можно использовать
функции ТЕКСТДО и ТЕКСПОСЛЕ. Так, если ячейка А1 содержит текст начало
Конец
15:ОО
16:00, вернуть текст между начало и конец удастся с помощью формулы
=ТЕКСТДО(ТЕКСТПОСЛЕ(Аl;"Начало") ;"Конец").
Разместить разбитый с помощью разделителя текст по столбцам (и при необходи
мости по строкам) можно с помощью функции ТЕКСТРАЗд. Так, например, при вводе
формулы =ТЕКСТРАЗД (Al;" ") текст из ячейки А I разбивается по пробелу в качестве
разделителя, и каждая подстрока добавляется в отдельный столбец (рис.
А
1
2
В
С
5.3).
D
[петр Иванов !=ТЕКСТРАЗД(Аl;" ")
Клава И ванова Клава
И ванова
з
Рис.
5.3.
Использование функции ТЕКСТРАЗД для разбивки текста
Обычно функцию ТЕКСТРАЗд используют в формуле:
=ТЕКСТРАЗД(текст;разделитель_столбцов;разделитель_строк;игнорировать_пустые;
учет_регистра; заполняющее_ значение)
со следующими аргументами:
♦
текст
Это текстовая строка, которую вам надо разбить.
♦
разделитель_ столбцов
Разделитель, который нужно использовать для разнесения текста по столбцам.
♦ разделитель_ строк (необязательный аргумент)
Разделитель, который нужно использовать для разнесения текста по строкам.
Работа с текстом
♦
1
141
игнорировать_ пустые (необязательный)
Чтобы проигнорировать последовательно стоящие разделители, установите этот
аргумент в значение ИСТИНА. По умолчанию его значение равно ложь, что создает
пустую ячейку.
♦
учет_регистра (необязательный)
Если разделитель
-
фрагмент текста, то этот аргумент указывает, должен ли
текстовый поиск быть чувствительным к регистру. По умолчанию он чувствите
лен к регистру, и чтобы сделать его нечувствительным к регистру, нужно уста
новить его в значение
♦
1.
заполняющее_ значение (необязательный)
Значение, которым нужно дополнить результат (по умолчанию равно #Н/д!).
Функции ТЕКСТДО, ТЕКСТПОСЛЕ и ТЕКСТРАЗД доступны только в Ехсе\
В более ран
365.
них версиях Ехсе\ вместо тЕкстдо допускается использовать формулу =ЛЕвсимв ( текст;
формулу
ТЕКСТПОСЛЕ
вместо
и
НАЙТИ (разделитель; текст) -1)
=ПРАВСИМВ ( текст;
ДЛСТР ( текст) -НАЙТИ (разделитель; текст) -1)).
Пояснение
Это решение является обратным по отношению к решению из разд.
вместо
5.1 -
объединения текста здесь используется разделитель, чтобы извлечь части текста.
Для подобного типа операций вместо формул можно использовать инструмент
Power Query (более
5.9.
подробно об этом рассказано в разд.
15.14 и 15. 15).
Разбиваем текст в текстовой строке
на цифровой и нецифровой
Задача
У вас есть текстовая строка с числовыми и нечисловыми символами, и вам надо
разбить ее на цифровую и нецифровую части.
Решение
Если вы работаете в Ехсе\
(см. разд.
5.8)-
365,
то можете применить функции тЕкстдо и тЕкстпослЕ
чтобы разделить текст на основании позиции его числовых и не
числовых символов.
Чтобы
вернуть
послЕд(lО;l;О) ).
текст
до
Например,
первого
если
числа,
ячейка
=ТЕКСТДО(Аl;ПОСЛЕД(lО;l;О)) возвращается
Чтобы
вернуть
текст
до
первой
примените
Al
формулу
содержит
NY1234,
=ТЕКСТДО(текст;
то
при
вводе
NY.
заглавной
буквы,
используйте
формулу
=ТЕКСТДО(текст;СИМВОЛ(ПОСЛЕД(26;1;65)) ). Так, если ячейка А4 содержит 1234NY, то при
вводе =ТЕКСТДО(А4;СИМВОЛ(ПОСЛЕД(26;1;65))) возвращается 1234.
Глава
142
Чтобы
5
вернуть
текст
после
=ТЕКСТПОСЛЕ ( текст ;ПОСЛЕД ( 1 о; 1; о) ; -1) .
1234NY,
последнего
Например,
числа,
если
то при вводе =ТЕКСТПОСЛЕ(А4;ПОСЛЕД(10;1;0)
;-1)
примените
ячейка
А4
возвращается
формулу
содержит
текст
NY.
Чтобы вернуть текст после последней заглавной буквы, используйте формулу
=ТЕКСТПОСЛЕ (текст;СИМВОЛ (ПОСЛЕД (26; 1; 65)) ;-1). Так, если ячейка
то при вводе =ТЕКСТПОСЛЕ (Аl;СИМВОЛ(ПОСЛЕД(26;1;
В более ранних версиях
Excel,
чем
365,
65)) ;-1)
Al
содержит NY1234,
возвращается
1234.
вместо функций тЕкстдо и тЕкстпослЕ допус
кается применять функции лЕвсимв и ПРАВСИМВ. Например, чтобы вернуть текст до
первого
числа,
используйте
формулу
=ЛЕВСИМВ ( текст;МИН (НАЙТИ ( { О; 1; 2; 3; 4; 5; 6; 7;
8;91; текст&"О123456789") )-1), а чтобы вернуть текст после последнего числа
-
форму
лу =ПРАВСИМВ ( текст; ДЛСТР ( текст) -МИН (НАЙТИ ( ( О; 1; 2; 3; 4; 5; 6; 7; 8; 9}; текст& "0123456789") ) +1).
Пояснение
Это решение похоже на решение из разд.
за исключением того, что здесь мы
5. 8,
разбиваем текст по типу символа, а не по определенному разделителю. Как видите,
при использовании
Excel 365
решение получается более простым.
Альтернативным подходом является применение инструмента
Power Query,
в кото
ром есть встроенная функция для разбивки столбцов на цифровые и нецифровые
(более подробно об этом рассказано в разд.
5.1 О. Заменяем,
15.14 и 15.15).
вставляем и удаляем текст
Задача
У вас есть текстовая строка, и вам надо заменить в ней один или несколько симво
лов.
Решение
Функция ЗАМЕНИТЬ заменяет в текстовой строке символы на основании их позиции
и возвращает результат. Обычно ее используют в формуле =ЗАМЕНИТЬ ( стар_ текст;
начальная_ позиция;число_ знаков; нов_ текст),
строка, начальная_ позиция нить, число_ знаков
текст,
на
-
стар_ текст
-
это
исходная
текстовая
это число символов, которые придется заменить, а нов_ текст
который
=ЗАМЕНИТЬ ( "снегових";
где
это позиция первого символа, который вам надо заме
требуется
6; З; "пад")
заменить
строка
вик в
символы.
Например,
снеговик заменяется
на
пад,
при
-
вводе
возвращая
снегопад.
Использовать функцию ЗАМЕНИТЬ можно и для того, чтобы вставлять или удалять
символы. Так, при вводе =ЗАМЕНИТЬ("кошка";4;0;"еч")
вводе =ЗАМЕНИТЬ("снегоуб~"
;2;5; "") -
возвращается кошечка, а при
сборщик.
Если вам надо заменить в текстовой строке определенный текст вне зависимости от
его позиции, примените функцию подстАВить. Обычно ее используют в формуле
Работа с текстом
=ПОДСТАВИТЬ (текст; стар_ текст; нов_ текст; номер_ вхождения)
текстовая строка, стар_текст -
где
,
текст
это
-
143
исходная
это текст, который вам надо заменить, нов_текст
это текст, на который требуется заменить старый, а номер_ вхождения (необязательный
аргумент) указывает, какие вхождения стар_текст необходимо заменить (по умолча
нию заменяется каждое вхождение). Например, при вводе =ПОДСТАВИТЬ("Саша купил
лесеюсу"; "купил пе"; "спел пе") возвращается Саша
Чтобы
осуществить
ПОДСТАВИТЬ,.
Так,
несколько
при
вводе
замен,
спел песенку.
можно
использовать
=ПОДСТАВИТЬ(ПОДСТАВИТЬ("Не
вызовы
ешь
функции
зеленую
мали
ну"; "зеле"; "крае"); "м"; "к") возвращается не ешь красную калину.
Пояснение
Функции ЗАМЕНИТЬ и подстАВить удобно использовать для замены символов в тексто
вой строке и возвращения результата. Обратите внимание, что функции возвраща
ют обновленную версию текстовой строки, оставляя исходный текст нетронутым,
поэтому ввод, например, формулы =ПОДСТАВИТЬ(Аl;"миг";"МиГ") в ячейку В1 не изме
нит текст в ячейке А 1. Однако обновить текст в ячейке А 1 можно, скопировав текст
в ячейке В 1, выделив ячейку А 1 и выбрав в меню кнопки Вставить
Главная (Ноте) пункт Вставить значения
5.11. Удаляем
(Paste)
вкладки
(Paste Values).
лишние символы
Задача
У вас есть текстовая строка, и вам надо удалить из нее лишние пробелы и непеча
таемые символы.
Решение
Из текстовой строки, содержащей лишние пробелы,
-
например, начальные или
конечные пробелы или более одного пробела между словами, их можно удалить
с ПОМОЩЬЮ функции СЖПРОБЕЛЫ. Обычно ее используют в формуле =СЖПРОБЕЛЫ ( текст) .
Так, при вводе, к примеру, =CЖIIPOSEJIЬl(Al)
возвращается текст из ячейки А 1 без
каких-либо лишних пробелов.
Функция СЖПРОБЕЛЫ удаляет только лишние вхождения символа «пробел» символ (32)
и игнорирует символы неразрывного пробела юнисимв ( 160). Чтобы удалить лишние
вхождения
обоих
юнисимв(lбО) ;" ")
символов,
используйте
формулу
=СЖПРОБЕЛЫ (ПОДСТАВИТЬ I текст;
1, которая перед удалением из текста символов пробела заменяет
символ неразрывного пробела на простой пробел.
Если ваша текстовая строка содержит непечатаемые символы, удалить большую их
часть
можно с
помощью функции
пЕчсимв.
Обычно ее
используют в формуле
=ПЕЧСИМВ I текст). Так, при вводе, к примеру, =ПЕЧСИМВ (Al) возвращается очищенная
версия текста ячейки А 1.
144
Глава
5
Функция пЕчсимв не удаляет символ клавиши
символ(127), который мо
<Delete> -
жет присутствовать в тексте, импортированном из другого места. Используйте то
гда формулу =ПЕУСИМВ(ПОДСТАВИТЬ(текст;СИМВ(127) ;" ")),заменяющую символ клавиши
<Delete>
на простой пробел перед удалением из текста непечатаемых символов.
Чтобы проверить, включает ли текстовая строка лишние пробелы или непечатае
мые символы, можно использовать функцию совмд. Функция принимает две тек
стовые строки
ложь,
если
и
возвращает значение
они
отличаются.
ИСТИНА,
Таким
если
образом,
они
если
одинаковы,
и значение
формула
=СОВПАд (Al;
ПЕУСИМВ (СЖПРОБЕЛЫ (Al) ) ) выдает значение ложь, это означает, что текст в ячейке А 1
содержит лишние пробелы или символы.
Пояснение
Импортированный из другого места текст (например, веб-страницы) часто может
включать лишние непечатаемые символы, и в этом разделе представлен удобный
способ их удаления.
Точно так же, как и в решении из разд.
5.1 О,
функции СЖПРОБЕJIЫ и пЕчсимв возвраща
ют обновленную версию текстовой строки, оставляя исходный текст нетронутым,
поэтому ввод, например, формулы =СЖПЮБЕЛЬI(Аl)
в ячейку
81
не изменит текст
в ячейке А 1. Однако обновить текст в ячейке А I можно, скопировав текст в ячей
ке
81,
выделив ячейку А
Главная
5.12.
(Home)
I
и выбрав в меню кнопки Вставить
пункт Вставить значения
(Paste)
вкладки
(Paste Values).
Подсчитываем слова или конкретные символы
Задача
У вас в ячейке есть текст, и вы хотите узнать, сколько слов он содержит и как часто
в нем встречаются определенные символы.
Решение
Предположим, что ячейка А I содержит некоторый текст, и вам надо узнать, сколь
ко в нем слов. Это можно выяснить, введя формулу =ДЛСТР (СЖПРОБЕЛЬ\(Аl)) длстР (ПОДСТАВИТЬ (Al;" 11 ;" ")) +1, которая берет длину текста ячейки, очищенную от
лишних пробелов, и сравнивает ее с длиной текста, вообще не содержащего ника
кие пробелы.
Использовать аналогичный подход можно и для подсчета количества вхождений
одного символа в текст, содержащийся в ячейке. Так, чтобы, например, подсчитать
число вхождений заглавной буквы Е в тексте из ячейки А 1, введите формулу
=ДЛСТР(Аl)-ДЛСТР(ПОДСТАВИТЬ
(Al; 11 Е 11 ; 11 ")).
Пояснение
8
этом разделе для возвращения количества слов в ячейке или числа вхождений
в текст конкретного символа используются формулы из разд.
5.5, 5.10
и
5.11.
Работа с текстом
1
145
Меняем регистр текста
5.13.
Задача
У вас есть текстовая строка, и вам надо поменять ее регистр.
Решение
Функция стючн возвращает строчную версию текстовой строки. Обычно ее исполь
зуют в формуле =СТРОЧН (текст), поэтому при вводе, например, =СТРОЧИ (Al) возвраща
ется строчная версия текста из ячейки А 1.
Функция пrописн аналогична функции стrочн, за исключением того, что она возвра
щает прописную версию текстовой строки. Например, при вводе =ПРОПИСИ (Al) воз
вращается прописная версия текста из ячейки А 1.
Функция ПРОПНАЧ меняет на прописные первые буквы текстовой строки, а также
каждую букву, следующую сразу за символом, не являющимся буквой, после чего
преобразует все остальные символы в строчные. Так, при вводе =ПРОПНАЧ("=арый
макдонапьд на ферме жил") возвращается текст Старый Макдональд На Ферме Жил.
При вводе =ПРОПНАЧ("макдонапьд")
мак.дональд.
Поэтому,
чтобы
возвращается текст Макдональд, хотя надо бы
вернуть
=ПОДС'U.ВИТЬ (ПРОПНАЧ ( "макдонапьд")
;
МакДональд,
''Ма!с,ц"; ''махд")
,
используйте
формулу
которая после изменения ре
гистра текста заменит макд на макД.
Пояснение
Excel
предлагает функции, которые возвращают нижнюю, верхнюю и подходящую
версии регистров текстовой строки. Но, как и в решении из разд.
5.1 О,
функции
строчн, пюписн и пrопНАч возвращают обновленную версию текстовой строки, остав
ляя исходный текст нетронутым, поэтому ввод, например, =СТРОЧИ (Al) в ячейку В 1
не изменит текст в ячейке А 1. Однако обновить текст в ячейке А 1 можно, скопиро
вав текст в ячейке В 1, выделив ячейку А
I
и выбрав в меню кнопки Вставить
(Paste)
вкладки Главная (Ноте) пункт Вставить значения
5.14.
Повторяем символы
(Paste Values).
Задача
У вас есть символ или текстовая строка, которые вы хотите повторить несколько
раз.
Решение
Функция повтор повторяет заданный символ или текстовую строку указанное коли
чество раз. Например, при вводе =ПОВТОР("-" ;10) возвращаются
IО
символов тире.
Обычно функцию ПОВТОР используют в формуле ~ПОВТОР(текст;число_повторений), где
Глава
146
текст -
5
это текст, который вам надо повторить, а число_ повторений -
определяет,
сколько раз нужно его повторить.
Пояснение
Другое применение решения из этого раздела
создание точечных диаграмм или
-
пиктограмм, в которых количество повторений символа отражает частоту исполь
зования
элемента
( см.
разд.
8.1).
Например,
можно
использовать
символы
юнисимвIв226I или юнисимвI11О44I для отображения закрашенных кружков (рис.
юнисимв
А
1
Имя
2
!Петя
З Эдик
4 Соня
5 Люся
б
Рис.
5.15.
5.4),
и
196061 для показа столбцов данных.
5.4.
В
D
С
Е
F
G
озраст_ _ __
!
10J=ПОВТОР(~НИСИМВ( 11044); В2)1
20 888888••••••••••••••
14 • • • • • • • • • • • • • •
12 ••••••••••••
Использование функции ПОВТОР для создания точечных диаграмм
Преобразуем массив в текст
Задача
У вас есть диапазон ячеек, и вы хотите преобразовать его содержимое в одну тек
стовую строку.
Решение
Работая в
Excel 365,
для преобразования массива (например, диапазона ячеек)
в текст можно применить функцию МАссиввтЕкст. Обычно ее используют в формуле
=МАССИВВТЕКСТ (массив;формат), где массив -
это массив, который вам нужно преобра
зовать в текст, а формат (необязательный аргумент)
-
это формат, который вам тре
буется применить. Установите формат в значение О (по умолчанию)
нуть краткий перечень значений, или в значение
1-
-
чтобы вер
чтобы вернуть данные в стро
гом формате, который потом можно будет применить в других формулах.
Предположим, например, что диапазон А2:А4 содержит значения Андрей, Кристина
и КИрилл, а диапазон В2:В4
=МАССИВВТЕКСТ (А2 :В4)
-
значения 34, 56 и 27. Тогда при вводе формулы
возвращается Андрей;
формулы =МАССИВВТЕКСТ(А2:В4;1) -
5 7;
Кристина;
45;
КИрилл;
35,
а при вводе
{"Андрей";57:"Кристина";45:"КИрилл";35} (рис.
5.5).
Пояснение
В этом разделе предлагаются лаконичные и строгие методы преобразования масси
ва в текстовую строку. В то время как сжатый формат более удобен для чтения,
Работа с текстом
в
А
1
:2
3
Значения
4
с
F
Е
D
Формула
14 7
G
Результат
Андрей
57
=МАССИВВТЕКСТ(Аl:В3) Андрей;
Кристина
45
=МАССИВВТЕКСТ(Аl:В3;1 {"Андрей";57:"Кристина";45:"Кирилл";35}
Кирилл
35
57;
Кристина;
45;
Кирилл;
35
5
Рис.
5.5.
Использование функции МАССИВВТЕКСТ для преобразования массива в текст
строгий формат возвращает текстовую строку, которую могут анализировать фор
мулы.
5.16. Форматируем
текст в формат валюты
Задача
У вас есть числовое значение, и вам надо отформатировать его в текстовой строке
как валюту.
Решение
Предположим, что в ячейке А 1 содержится число, которое вам надо включить
в текстовую строку, отформатированную как валюта.
Чтобы отформатировать число с помощью символа валюты своего региона, можно
использовать функцию РУБЛЬ. Если ваш регион
к примеру, число
65674, 701'. Если ваш регион
$65,674.70, а если
-
-
Россия, а ячейка А\ содержит,
то при вводе =РУЕЛЬ(Аl) возвращается текстовая строка
65674,7,
-
США, то при вводе той же самой формулы вернется
Великобритания, то L65, 674. 70. Обычно функцию РУБЛЬ приме
няют в формуле =РУБЛЬ (число;число_знаков), где число- это число, которое вам нуж
но отформатировать в виде валюты, а число_знаков (необязательный аргумент)
это число цифр справа от десятичной точки (по умолчанию равно
2).
Изменить региональную валюту по умолчанию можно, изменив регион в настрой
ках своей операционной системы. Так, работая в Windows, выполните команду Па
раметры
(Region) и выбери
Regional Format).
В macOS откройте окно Системные настройки (System Preferences) и в разделе
Язык и регион (Language & Region) выберите вариант в поле Регион (Region).
(Settings)
1
Время и язь1к
(Time & Language)
1
Регион
те нужный вариант в разделе Формат региона (Формат региона
Чтобы использовать другой символ валюты или представить ее в ином виде, можно
задействовать функцию ТЕКСТ -
она позволит вам прямо указать, как вам надо
отформатировать текст. Так, при вводе =ТЕКСТ(Аl;"#
ется 65675 1' (если ячейка А\ содержит число
число
-65674,7).
65674,7)
##О
1';-# ##О 1'") возвраща
и -65675 1' (если она содержит
Обычно функцию ТЕКСТ используют в формуле =ТЕКСТ (значение;
формат), где значение -
это значение, которое вам нужно отформатировать как тек
стовую строку, а формат- это формат, который требуется применить (см. разд.
1.5).
148
Глава
1
5
Пояснение
Когда, к примеру, используется оператор & для присоединения значения валюты
ячейки к текстовой строке,
Excel
сбрасывает форматирование ячейки. Решение,
предлагаемое в этом разделе, позволяет форматировать вашу валюту подходящим
вам способом.
1
•
Чтобы изменить внешний вид значения валюты в ячейке, вам стоит применить
форматирование, а не использовать функции РУБЛЬ и ТЕКСТ -
они преобразуют
значения валюты в текстовую строку, которую такие функции, как СУММ и СРЗНАЧ,
игнорируют.
5.17.
Включаем числовые значения в текстовую строку
Задача
У вас есть числовое значение, и вы хотите включить его в текстовую строку.
Решение
Предположим, что в ячейке А 1 содержится число, которое вам надо включить
в текстовую строку.
Если вам не требуется применить какой-либо специальный формат, добавить число
к текстовой строке можно с помощью формулы из разд.
содержит, к примеру, число
5.1.
Так, если ячейка А 1
то при вводе ="Чисnо: "&Al возвращается число:
65674,7,
65674, 7.
Если вам надо отформатировать число с фиксированным количеством знаков после
десятичной запятой и дополнительно включить разделители тысяч, можно исполь
зовать функцию ФИКСИРОВАННЫЙ. Обычно ее применяют в формуле =ФИКСИРОВАННЫЙ ( число;
число_знаков;без_разделителей), где число- это число, которое вам нужно преобразо
вать в текст, число_знаков (необязательный аргумент)
справа от десятичной запятой (по умолчанию
2),
-
это количество знаков
а аргумент без_разделителей при
нимает значение ИСТИНА, если включать разделители тысяч не требуется, и значение
ложь, если их включить нужно (по умолчанию). Так, если ячейка
к примеру, число
65674,7,
AI
содержит,
то при вводе =ФИКСИЮВАННЫЙ(Аl) возвращается текстовая
строка 65 674, 70, при вводе =ФИКСИЮВАННЫЙ(Аl;О) вводе =ФИКСИЮВАННЫЙ(Аl;О;ИСТИНА) -
текстовая строка 65 675, а при
текстовая строка 65675.
С помощью функции ТЕКСТ (см. разд.
5.16)
можно применить к числам и другие
форматы. Так, чтобы отформатировать числа в виде, например, процентов, исполь
зуйте формулу =ТЕКСТ (значение;"О%") А I содержит, к примеру, значение
тогда при вводе =ТЕКСТ(А1;"0%"), где ячейка
0,84,
возвращается текстовая строка 84%. Эту
функцию можно применить и для того, чтобы заполнить число нулями слева. Так,
если ячейка
AI
содержит число
текстовая строка
00656.
656,
то при вводе =ТЕКСТ(Аl;"ООООО") возвращается
Работа с текстом
Заполнить текстовую строку нулями справа можно, применив
лишних символов
-
=ЛЕВСИМВ("NУ"&"ООООО"
функцию ЛЕВСИМВ.
;5)
Так,
при
вводе,
возвращается текстовая строка
к
1
149
для
удаления
примеру,
формулы
-
NYOOO.
Пояснение
При добавлении числового значения ячейки в текстовую строку
Excel
сбрасывает
форматирование ячейки. Предлагаемое в этом разделе решение позволяет форма
тировать числа любым необходимым способом.
•
Если вам просто нужно изменить внешний вид числового значения ячейки, то стоит
применить форматирование, а не использовать функции ФИКСИРОВАННЫЙ и ТЕКСТ, -
,·
они преобразуют число в текстовую строку, которую такие функции, как СУММ и
'
5.18.
СРЗНАЧ, игнорируют.
Включаем дату/время в текстовую строку
Задача
У вас есть значения даты/времени, и вы хотите отформатировать его в виде тексто
вой строки.
Решение
Предположим, что в ячейке А I содержится значение даты/времени, которое вам
надо включить в текстовую строку.
В этом случае следует форматировать значение даты/времени с помощью функции
ТЕКСТ, иначе дата будет отображаться как число. Так, если ячейка А 1 содержит,
к примеру, значение
12
ется текстовая строка
ноября
2024 r.,
11/12/2024,
то при вводе =ТЕКСТ(Аl;"М/д/ГГГГ") возвраща
а при вводе =ТЕКСТ(Аl;"дддд,
дд ~ ГГГГ")
ник, 12 Ноябрь 2024. Аналогичным образом, если ячейка А 1 содержит время
-
втор
8: 15:00,
то при вводе =ТЕКСТ(Аl;"ч:ммАМ/1:'М") возвращается текстовая строка 8:15 АМ.
Пояснение
«Под капотом» значение даты/времени является в
ние» в разд.
6. 7).
ния даты/время
Excel
числом (см. разд. «Поясне
Предлагаемое здесь решение позволяет вам форматировать значе
-
когда вам надо включить их в текстовую строку
-
любым
удобным для вас способом. Если же вам просто нужно изменить внешний вид зна
чения даты/времени ячейки, то следует применить форматирование вместо исполь
зования функции ТЕКСТ.
ГЛАВА
6
Дата и время
Дата и время
-
чрезвычайно важные данные для многих вычислений в электрон
ных таблицах, однако работа с ними может оказаться на удивление сложной и уто
мительной.
Из этой главы вы узнаете, как использовать формулы для решения многих задач,
связанных с датой и временем,
-
таких как извлечение частей даты, расчет кален
дарных и финансовых кварталов, выполнение вычислений даты и времени и обра
ботка рабочих дней. Кроме всего прочего, эта глава также поможет вам понять, что
такое порядковые номера даты/времени, раскрывая тайны работы с подобным
типом данных.
6.1.
Возвращаем текущие дату и время
Задача
Вы хотите ввести в ячейку текущую дату или время или использовать их в фор
мулах.
Решение
Чтобы ввести в ячейку текущую дату, можно воспользоваться комбинацией клавиш
<Ctrl>+<;>,
которая вводит статическую дату, необновляемую автоматически. Для
ввода текущего времени нажмите комбинацию клавиш
<Ctrl>+<Shift>+<;> в Excel
Windows или <Cmd>+<;> в Ехсе\ для macOS. То есть, чтобы ввести в Ехсе\ для
Windows текущую дату и время в одну ячейку, нажмите комбинацию клавиш
<Ctrl>+<;>, затем клавишу <Пробел>, а потом комбинацию клавиш <Ctrl>+
+<Shift>+<;>.
для
Если же вам надо, чтобы дата и время динамически обновлялись или нужно ис
пользовать их в других формулах, то можно применить функции сЕгодня и ТДАТА.
Так, при вводе =СЕГОДНЯ() возвращается текущая дата, а при вводе =ТДАТА() -
теку
щая дата и время.
Пояснение
Функции СЕГОДНЯ и ТдАТА часто используются в разного рода формулах, поскольку
динамически возвращают текущие дату и время. Например, в разд.
6.13
функция
152
1
Глава
6
сЕгодня применяется для подсчета текущего возраста человека на основе даты его
рождения.
6.2.
Получаем часть значения даты/времени
Задача
У вас есть значение даты/времени, и вы хотите получить год, месяц, день, часы,
минуты или секунды.
Решение
Предположим, ячейка А2 содержит следующие дату/время:
29
Ноябрь
2024 10:45
РМ.
Для извлечения из этой ячейки компонентов даты, введите в любую ячейку форму
лу =ГОД(А2) -
чтобы получить год
и =ДЕНЬ(А2) -
чтобы получить день
=МЕСЯЦ(А2) -
(2024),
(29).
чтобы получить месяц
(11)
Для извлечения из ячейки А2 компонентов времени введите в любую ячейку фор
мулу =ЧАС (А2) -
чтобы получить часы в 24-часовом формате
чтобы получить минуты
(45)
и =СЕКУНДЫ(А2) -
(22),
=МИНУТЫ(А2) -
чтобы получить секунды (О).
Пояснение
Это решение позволяет разбить дату на компоненты. Приведенные здесь функции
обычно используются в сочетании с другими функциями для вычисления даты (на
пример, как в разд.
6.3.
6.4).
Получаем день недели и неделю года
Задача
У вас есть значение даты, и вы хотите извлечь день недели и номер недели года,
которые ей соответствуют.
Решение
Предположим, ячейка А2 содержит дату
27
марта
2023
г., и вам надо узнать день
недели и номер недели года для этой даты.
Для
получения
дня
недели
в
виде
целого
числа
=ДЕНЬНЕД (дата ;тип), где тип (необязательный аргумент)
-
используйте
формулу
это числовой код, указы
вающий, как целые числа присваиваются дням недели: если его опустить, воскре
сенье считается первым днем недели, т. е. воскресенье возвращает
ник
27
-
2
марта
и т. д. Например, при вводе =ДЕНЬНЕД(А2)
2023
года
-
это понедельник.
возвращается
2,
1,
понедель
потому что
Дата и время
1
153
Использовать функцию ТЕКСТ можно, чтобы получить название дня. При этом фор
мула =ТЕКСТ (дата;" дддд") возвращает полное название дня
-
например, понедель
ник, а формула = ТЕКСТ (дата;" дцд") возвращает сокращенный вариант
например,
-
Пон.
Чтобы получить номер недели года, используйте формулу =НОМНЕДЕЛИ (дата;тип), где
тип (необязательный аргумент)
-
это числовой код, определяющий первый день
недели и систему обозначений номеров недель года:
с 11-го по
17-й
обозначают систему
недели года неделю, содержащую
тему
2,
1,
1 или 2.
При этом коды
1, 2
и
которая интерпретирует в качестве первой
1 января,
в то время как код
21
обозначает сис
которая интерпретирует в качестве первой недели года неделю, содержа
щую первый четверг. По умолчанию функция номнЕдЕли ориентируется на систему
1
с неделей, начинающейся в понедельник.
Систему
который
2
иногда называют системой
можно
вычислить,
ISO
применив
или европейским номером недели,
формулу
=НОМНЕДЕЛИ.
rso (дата)
вместо
НОМНЕДЕЛИ (дата ;21).
Пояснение
В этом разделе предложен гибкий способ вычисления дня недели и номера недели
года с помощью различных систем. При построении формул можно указать, какую
систему использовать.
6.4.
Получаем календарный или финансовый квартал
Задача
У вас есть значение даты, и вы хотите выяснить, основана она на календарном или
финансовом квартале.
Решение
Чтобы вернуть квартал даты на основе календарного года, где первым кварталом
считается квартал, содержащий месяцы с января по март, используйте формулу
=ОКРУГЛВВЕРХ (МЕСЯЦ (дата) /3; о), которая делит номер месяца даты на три
в
квартале три
(см. разд.
4.9).
месяца)
и
округляет результат до
Так, если ячейка А2 содержит дату
=ОКРУГЛВБЕРХ(МЕСЯЦ(да!l'а) /3;0) возвращается
в
А
1
27
1 (рис. 6.1 ).
Дата
ближайшего
марта
2023
Квартал
2
27 марта 2023
г.
=ОКРУГЛВВЕРХ(МЕСЯЦ(А2)/З,О)
1
з
21 ИЮНR 2024
Г.
=ОКРУГЛВВЕРХ(МЕСЯЦ(АЗ)/3,0)
2
4
Рис.
6.1.
Вычисление календарного квартала даты
числа
г., то при вводе
о
с
Формула
( поскольку
целого
-
154
Глава б
1
Формула, которую используют для вычисления финансового квартш~а даты , зави
сит от начальной даты финансового года . Например , если финансовый год начина
1 октября ,
ется
то первый квартал приходится на октябрь-декабрь и можно приме
нить форм улу =ВЫБОР (МЕСЯЦ (дата) ; 2 ; 2; 2 ; 3 ; 3 ; 3 ; 4; 4; 4; 1; 1 ; 1 ), которая выбирает квартал
на основании месяца даты (см . разд.
7. 8) .
Аналогично, если финансовый год начи
нается в апреле, следует применить формулу =ВЫБОР(МЕСЯЦ(дата) ; 4 ;4;4 ; 1 ; 1 ;1; 2 ; 2 ; 2;3 ;
чтобы
3 ; 3)
-
(рис .
6.2).
определить
первый квартал
как приходящийся
с
в
А
на апрель-июнь
D
1
Дата
Формула
Финанс. Квартал
2
27 марта 2023 г.
21 июня 2024 г.
=ВЫБОР(МЕСЯЦ{А2},4,4,4,1,1,1,2,2,2,З,З,З}
4
1
З
=ВЫБОР(МЕСЯЦ(АЗ},4,4,4,1,1,1,2,2,2,З,З,З}
4
Рис.
6.2.
Вычисление финансового квартала даты
Чтобы учесть финансовые кварталы, которые начинаются не с первого дня месяца,
формулу можно соответственным образом изменить . Например, если финансовый
год начинается
с
6
апреля по
6
6 апреля ,
и вам надо определить в качестве первого квартала период
июня, для возвращения финансовых кварталов примените формулу
=ВЫБОР( МЕСЯЦ ( дата - 5)
; 4; 4;4;1;1; 1 ;2 ; 2 ; 2;3;3;3) .
Для определения финансового года даты можно использовать функции г од и
МЕСЯЦ. Так, если финансовый год начинается
.
1
октября , вам поможет формула
= ГОД (дата) - (МЕСЯЦ ( дата) <1 О) &" / " & Г ОД (да та )+ (МЕСЯЦ ( да та) >=1 0).
Пояснение
Поскольку
Excel
нет встроенных функций для вычисления кварталов даты , можно
воспользоваться предлагаемыми в этом разделе подходами, позволяющими решить
стоящие перед вами задачи такого рода . Вычисление финансовых кварталов осо
бенн о удобно при использовании сводных таблиц (PivotTaЫes) для суммирования
финансовых данных (с м . главу
6.5.
11).
Создаем даты с помощью дня, месяца и года
Задача
У вас есть день , месяц и год, и вы хотите использовать их для создания даты.
Решение
Создать значение даты можно с помощью функции дАТА. Например, при вводе фор
мулы =дАТА(202З;З;27) возвращается дата
27
марта
2023
г . (рис.
6.3).
Обычно приме-
Дата и время
няют формулу =дАТА(год;месяц;день), где год, месяц и день -
1
155
это целые числа, кото
рые используются следующим образом:
♦
год
Если значение аргумента год попадает в диапазон от
до
1900
9999,
то
Excel
при
нимает его в качестве года. Но если значение аргумента год находится в преде
лах от О до
добавляет вычисленное количество лет к
1899, Excel
1900
и прини
мает в качестве года полученный результат. Таким образом, он интерпретирует
формулу =дATAllB00;l;l) как
1
января
3700
не понимает значений даты/времени ранее
в разд.
♦
года. Это связано с тем, что
1900
Excel
года (см. разд. «Пояснение»
6. 7).
месяц
Если значение аргумента месяц находится в пределах от
1 до 12,
то
мает его в качестве месяца. Если значение аргумента месяц больше
Excel прини
12, то он до
бавляет это число месяцев к первому месяцу года, интерпретируя формулу
=дАТА(2023;13;1) как
1
января
2024
года. Если значение аргумента месяц меньше
или равно О, программа вычитает это число из месяцев года и прибавляет еди
ницу к дате полученного месяца, интерпретируя формулу =дАТА(2023;-1;1) как
1 ноября 2022
♦
года.
день
Если значение аргумента день действительно для месяца,
Excel
использует его
в качестве дня. Если значение аргумента день больше количества дней в месяце,
Excel
добавляет это число к первому дню следующего месяца, интерпретируя
формулу =дАТА 1 2023;2;29) как
1 марта 2023
года. Если же значение аргумента день
меньше или равно О, программа вычитает это число дней из числа дней месяца и
прибавляет единицу к полученной дате, интерпретируя формулу =дАТА12023;2;-1)
как
30
января
2023
года.
в
А
~1
с
Дата
Формула
3
=ДАТА(2023, 3, 27)
4
=ДАТА(1800, 1, 1)
5
=ДАТА{2023,
б
=ДАТА(2023, 2, 29)
;1
=ДАТА(2023,
Рис.
6.3.
13, 1)
2, -1)
о
27 марта 2023
г.
1 января 3700 г.
1 января 2024 г.
1 марта 2023
г.
30 января 2023
г.
Создание дат с помощью функции дАТА
Пояснение
Функция дАТА является одной из важнейших функций дат в
Excel,
поскольку ее
можно использовать для выполнения вычислений и создания дат. Тем не менее она
является также распространенным источником ошибок, поскольку
только те даты, которые начинаются с
1 января 1900
года.
Excel
понимает
Глава
156
6
чтобы избежать двусмыс-
Всегда используйте четырехзначное значение года -
•
ленности и гарантировать, что год, который вы имеете в виду , попадет в диапазон
между годами с 1900 по 9999. Дело в том, что при вводе формулы =дАТА(15 ; 1;1)
.
'····· • • Excel интерпретирует год как 1915, а если ввести дату 1/1/15 в ячейку напрямую ,
Excel - в зависимости от региональных настроек - может интерпретировать год
как 2015.
6.6.
Создаем время с помощью часов, минут и секунд
Задача
У вас есть часы , минуты и секунды, и вы хотите использовать их для создания зна
чения времени.
Решение
Для
создания значения времени используется функция В РЕМЯ -
формулы =ВРЕМЯ(lЗ ; ЗО;О)
возвращается время
13 :30
(рис.
6.4).
так, при вводе
Обычно функцию
ВРЕМЯ применяют в формуле =ВРЕМЯ( часы;минуты; секунды), где часы, минуты и секунды
32 767, которые
это целые числа от О до
♦
используются следующим образом:
часы
Если значение аргумента часы находится в пределах от О до
23, Ехсе\ использует
23 , Ехсе\ делит его
его в качестве часов . Если значение аргумента часы больше
на
24
и
использует
=ВРЕМЯ (30;0;0) как
♦
остаток
для
интерпретируя
часов,
значения
6:00 .
минуты
Если значение аргумента минуты находится в пределах от О до
59,
ет его в качестве минут. Если значение аргумента минуты больше
Ехсе\ использу
59,
Ехсе\ преоб
разует его в часы и минуты , интерпретируя формулу =ВРЕМЯ (О; 120;0) как
♦
формулу
2:00.
секунды
Если значение аргумента секунды находится в пределах от О до
59,
то Ехсе\ ис
пользует его з начение в качестве секунд. Если значение аргумента секунды боль
ше
59,
Ехсе\ преобразует его в часы , минуты и секунды, интерпретируя формулу
=ВРЕМЯ( 0 ; 0;120) ка к
0:02 .
А
в
с
D
1
2
Формула
Время
з
=ВРЕМЯ(lЗ , 30,0)
13:30
4
=ВРЕМЯ(ЗО,0,0)
б:00
5
=ВРЕМЯ(О,UО,О)
2:00
б
=ВРЕМЯ(О, 0,120)
0:02
7
Рис.
6.4.
Создание времени с помощью функции ВРЕМЯ
Дата и время
157
1
Пояснение
Функция ВРЕМЯ работает аналогично функции ДАТА (см. разд.
может возвращать время, превышающее
24
6.5).
Однако она не
часа, поэтому удаляет лишнюю часть
даты.
6. 7.
Преобразуем текстовое значение
в порядковый номер даты/времени
Задача
У
вас
есть значение даты/времени,
сохраненное в
виде текста,
и
вы
хотите
отфильтровать, отсортировать или отформатировать его по дате/времени или ис
пользовать его в расчетах даты/времени.
Решение
Предположим, в какой-либо ячейке хранятся дата и время
27
марта
2023
г.
6:00,
отформатированные в виде текста, и вам надо отфильтровать или отсортировать
это значение по дате/времени, отформатировать его по-другому или использовать
его в расчетах даты/времени. Сделать это можно, преобразовав имеющееся тексто
вое значение даты и времени в порядковый номер, который Ехсе\ распознает как
дату/время.
Для преобразования компонента даты в порядковый номер применяется формула
=ДАТАЗНАЧ(текст). Так, при вводе формулы =ДАТА9НАЧ("27-МАР-202З 6:00") возвращается
порядковый номер
45012
(рис.
(см. разд. «Пояснение» в разд.
6.5),
6. 7).
который соответствует дате
в
А
с
1
2
Формула
з
=ДАТАЗНАЧ("27- МАР- 202З б:00")
4
=ВРЕМЗНАЧ("27-МАР-202З б:00")
27
D
Код
марта
2023
г.
Е
Дата/время
45012 27 марта 2023
0,25
г.
б:00:00
5
Рис.
•
6.5.
Использование функций ДАТАЗНАЧ и ВРЕМЗНАЧ
Функция ДАТАЗНАЧ для интерпретации любых вводимых вами дат использует регио
нальные настройки вашей системы (см. разд.
•
3.2),
поэтому, чтобы избежать сюр-
призов, вводите дату максимально недвусмысленно. Например, Excel интерпрети
рует формулу =ДАТАЗНАЧ ("1/12/2023") как
12
января в одних регионах и как
1
де-
кабря в других. Аналогично во избежание любой двусмысленности рекомендуется
использовать только четырехзначное значение года.
Для преобразования компонента времени применяется формула =ВРЕМЗНАЧ (текст).
Так, при вводе формулы =ВРЕМЗНАЧ("27-МАР-202З 6:00") возвращается
ветствует
6:00.
0,25,
что соот
Глава
158
6
Чтобы получить порядковый номер, который включает компоненты даты и вре
мени, используйте формулу =дАТАЗНАЧ ( текст) +ВРЕМЗНАЧ (текст). Так, при вводе форму
лы =дАТАЭНАЧ ( "27-МАРТ-2023
ковый номер
~
j
45012,25,
б:
00 11 )
+ВРЕМЗНАЧ
( "27-МАРТ-2023
б:
что соответствует дате и времени
00 11 )
возвращается поряд
марта
27
2023
г.
6:00.
Если ячейка содержит порядковый номер даты/времени, увидеть соответствующие
дату и время можно, изменив ее формат на дату или время.
-
Пояснение
Когда в ячейку вводятся значение даты или времени,
Excel
автоматически сохраня
ет его в виде порядкового номера. Программа использует этот порядковый номер
для выполнения расчетов даты/времени и для сортировки и фильтрации данных.
Поэтому, если на рабочем листе имеются дата и время в текстовом формате, то для
правильной работы программы вам нужно преобразовать их в порядковые номера
даты/времени.
Компонент даты порядкового номера представляет собой последовательное целое
число, которое увеличивается на единицу каждый день. Самая ранняя дата, которая
может быть сохранена в
Компонент времени
-
это
Excel, -
отсюда порядковый номер даты
27
1 января 1900, порядковый
2023 r. -45012.
это
0,5,
1,
это дробная (десятичная) часть порядкового номера, кото
рая хранит время в виде долей суток. Она сохраняет время
12:00 -
номер которой
марта
поскольку
12
часов
-
00:00
как О, отсюда
это половина дня.
В большинстве значений даты/времени есть как компоненты даты, так и компо
ненты времени, поэтому, к примеру, у значения
номер
27
марта
2023 r. 18:00
порядковый
45012,75 .
• Если вы попробуете отформатировать в качестве даты значение только времени,
;.~
.. .
. Excel отобразит его как О января 1900 года. Также Excel ошибочно предполагает,
что 1900 - это високосный год, поэтому некоторые функции (например, дЕНЬНЕд)
:
• возвращают неверные результаты для дат до 1 марта 1900 года.
6.8.
Извлекаем дату и время из порядкового номера
Проблема
У вас есть значение даты/времени, и вы хотите извлечь его компоненты: дату
и время.
Решение
Предположим, ячейка А2 содержит значение даты/времени
порядковый номер которого
45012,75
27
марта
(см. разд. «Пояснение» в разд.
2023 r. 18:00,
6. 7), и вам на-
Дата и время
159
1
до получить его отдельные компоненты: дату и время. Это можно сделать, разбив
порядковый номер даты/времени на целую и дробную части.
Чтобы получить компонент даты, нужно извлечь целую часть порядкового номера,
что можно сделать с помощью функции ЦЕЛОЕ. Так, при вводе в какую-либо ячейку
формулы =ЦЕЛОЕ (А2) возвращается компонент даты значения даты/времени
который Ехсе\ интерпретирует как
27
марта
- 45012,
года.
2023
Чтобы получить компонент времени, извлеките дробную часть порядкового номе
ра. Так, при вводе формулы =ОСТАТ(А2;1) возвращается компонент времени значе
ния
-
0,75,
который Ехсе\ интерпретирует как
18:00.
Пояснение
В этом разделе представлен быстрый способ извлечения компонентов даты и вре
мени из значения даты/времени, который можно использовать в сочетании с реше
ниями из других разделов (например, из разд.
6.9. Добавляем
6.13).
к дате дни, месяцы и годы
Задача
У вас есть значение даты/времени, и вы хотите добавить к нему заданное количест
во дней, месяцев и лет.
Решение
Предположим, что ячейка А2 содержит дату
27
марта
г., и вам надо найти
2023
дату спустя заданное количество дней, месяцев или лет.
Для нахождения даты, которая наступит через заданное количество дней, обычно
используют формулу =дата+дни, где дни -
это количество дней, которые вам надо
прибавить или вычесть. Так, чтобы найти дату через семь дней после даты, содер
жащейся
в ячейке А2,
(рис.
который Ехсе\ интерпретирует как
6.6),
ние» в разд.
введите =А2+7 -
это вернет порядковый
3
апреля
2023
г.
(см.
номер
45019
разд. «Поясне
6. 7).
Для нахождения даты через определенное количество месяцев после даты, содер
жащейся в ячейке А2, можно использовать функцию дАТАМЕС. Обычно ее применяют
в формуле =дАТАМЕС (дата ;месяцы), где аргумент месяцы указывает количество месяцев,
А
1
Дата
D
с
в
Формула
Номер
Дата
2 27 марта 2023 r.
=А2+7
3
=ДАТАМЕС(А2,
:1
=ДАТА(ГОД(А2)+1;МЕСЯЦ(А2) ;ДЕНЬ(А2))
45378
27 марта 2024 r.
=ДАТА(ГОД(А2)+1;МЕСЯЦ(А2)+б;ДЕНЬ(А2)+7)
45569
4 октября 2024 r.
7)
45019
3 апреля 2023 r.
4522б
27 октября 2023 r.
б
Рис.
6.6.
Формулы для добавления к датам дней, месяцев и лет
Е
Глава б
160
которое нужно добавить или вычесть. Так, чтобы найти дату семь месяцев спустя
после даты в ячейке А2, введите в какую-либо ячейку формулу =дАТАМЕС(А2;7), что
вернет порядковый номер
октября
45226 (27
2023 r.).
Для нахождения даты спустя заданное количество лет после даты, содержащейся
в ячейке А2, можно использовать формулу из разд.
6.2 -
чтобы получить день,
месяц и год даты, а затем применить функцию ДАТА, чтобы создать новую дату
(см. разд.
6.5).
Так,
чтобы добавить один год к дате из ячейки А2, введите
=ДАТА(rод(А2)+1;МЕСЯЦ(А2) ;ДЕНЬ(А2) ), что вернет порядковый номер
45378 (27
марта
2024 r.).
Функцию ДАТА также можно использовать
и
дней.
Обычно
ее
применяют
в
для добавления сочетания лет, месяцев
формуле
=ДАТА(ГОД(дата) +дни;МЕСЯЦ(дата) +дни;
ДЕНЬ (дата) +дни).
Так, чтобы найти, к примеру, дату через один год, шесть месяцев и семь дней после
даты,
содержащейся
в
ячейке
А2,
введите
МЕСЯЦ(А2)+6;ДЕНЬ(А2)+7), что вернет порядковый номер
формулу
45569 (4
=ДАТА(rод(А2)+1;
октября
2024 r.).
Пояснение
В этом разделе предлагается несколько способов добавления дней, месяцев и лет
к указанной дате. Наиболее гибкий подход заключается в использовании функции
ДАТА.
Если же вам надо добавить рабочие дни к дате, исключая выходные и возможные
праздничные дни, обратитесь к решению из разд.
6.10. Добавляем
6.14.
ко времени часы, минуты и секунды
Проблема
У вас есть значение даты/времени, и вы хотите добавить к нему заданное количест
во часов, минут и секунд.
Решение
Способ решения этой задачи зависит от того, надо ли вам добавить часы, минуты
или
секунды
к чистому
значению
времени
или
к значению,
включающему также
и дату.
Если у вас есть чистое значение времени, можно воспользоваться решением из
разд.
6.2,
чтобы извлечь его часы, минуты и секунды, а затем задействовать функ
цию ВРЕМЯ, чтобы создать новое время (см. разд.
муле
6.5).
Обычно ее применяют в фор
=ВРЕМЯ (ЧАС (время) +часы,МИНУТЫ(время) +минуты, СЕКУНДЫ(время) +секунды),
это исходное время, а часы, минуты и
секунды
-
где
это соответственно часы,
время
минуты и
секунды, которые вам нужно добавить.
Так,
если ячейка А2
содержит время
(см. разд. «Поясне11ие» в разд.
6. 7),
6:00,
порядковый
номер
которого
0,25
результат добавления трех часов к этому време-
Дата и время
1
161
ни вы найдете, введя формулу =ВРЕМЯ(ЧАС(А2)+З;МИНУТЫ(А21 ;СЕКУНДЫ(А2)), которая воз
вращает
09:00 (порядковый
номер
0,375).
Если же вам нужно добавить время к значению, которое включает даты, следует
убедиться, что дата увеличивается, если время переходит за полночь, и использо
вать в этом случае формулу =дата_ время+ (часы/24) + (минуты/1440) + (секунды/86400).
Эта формула преобразует часы, минуты и секунды в десятичное число, а затем
добавляет его к значению даты/времени. Так, если ячейка А2 содержит значение
даты/времени
27
бавления к нему
марта
12
2023
г.
18:00
(порядковый номер
45012,75),
результат до
часов вы найдете, введя формулу =А2+0,5 (поскольку
это половина дня), что вернет
28
марта
2023
г.
6:00 (порядковый
номер
12 часов 45013,24).
Пояснение
При использовании этого решения подумайте, следует ли увеличивать целую часть
порядкового номера даты/времени, когда время переходит за полночь.
Если значение даты/времени включает дату, нужно убедиться, что при каждом до
бавлении времени целая часть порядкового номера увеличивается правильно, по
скольку целая часть соответствует дате. Например, при добавлении
Март
27, 2023
(порядковый номер
(порядковый номер
45012) должно
24
часов к дате
вернуться значение Март
28, 2023
45013).
Если значение даты/времени не включает дату, надо убедиться, что целая часть его
порядкового номера, когда к нему добавляется время, остается равной нулю. На
пример, у времени
18:00 порядковый номер равен 0,75, поэтому при добавлении
12 часов (0,5) должен возвращаться порядковый номер 0,25 (6:00), а не 1,25
(Январь 1, 1900 6:00).
к нему
6.11.
Получаем последний день месяца
Задача
У вас есть значение даты, и вы хотите найти последний день текущего месяца или
день через указанное количество месяцев до или после нее.
Решение
Предположим, в ячейке А2 содержится дата
27
марта
2023
г., и вам надо найти по
следний день месяца через шесть месяцев после нее. Обычно для этого используют
формулу =КОНМЕСЯЦА (дата ;месяцы), где месяцы- это количество месяцев до или после
аргумента дата. При этом положительное значение возвращает будущую дату, а от
рицательное
-
прошедшую. Так, найти решение задачи можно, введя формулу
=КОНМЕСЯЦА(А2;6), -
она вернет порядковый номер даты
будет отформатировать вручную как дату
ние» в разд.
6. 7).
30
сентября
45199, который достаточно
2023 г. (см. разд. «Поясне
Глава б
162
Пояснение
В этом разделе предлагается удобный способ вычисления последней даты текущего
месяца , прошедшего или будущего месяца . Этот способ также пригодится для рас
чета срока погашения долга или срока платежа.
Если же вам надо вычислить последний рабочий день месяца, обратитесь к реше
нию из разд.
6.12.
6.14.
Вычисляем долю года
Задача
У вас есть значение даты , и вы хотите вычислить прошедшую и оставшуюся часть
года.
Решение
Вычислить долю года можно с помощью функции долягодА -
она принимает два
аргумента даты и вычисляет долю года между ними в виде целых дней. Обычно ее
используют в формуле =ДОЛЯГОдА(да та_ l ; дата_2;6азис ) , где базис (необязательный ар
гумент)
это тип основы для подсчета дней (если этот аргумент опускается , счи
-
тается, что в месяце
30 дней) .
Так, если в ячейках А2 и В2 содержатся два значения
даты , рассчитать долю года между ними можно, введя формулу =дОЛЯГОдА(А2 ;В2).
Вычислить
прошедшую
( ГОД ( дата ) ; 1; 11; дата 1 Январь
1
часть
года
формулу
применив
можно,
=долягодА ( дАТА
она задействует функции дАТА и год для создания даты
для года даты, и эту дату затем использует функция долягодА. Так, если
ячейка А2 содержит значение даты
27
марта
2023
г ., получить прошедшую долю
года можно, введя формулу =дОЛЯГОдА(дАТА(ГОд(А2) ;1;1) ;А2) , которая возвращает
0,24, или 24%
(рис.
6.7).
в
А
с
D _....
1 t-----~Д~ат_а_ _ _ _ _ _ _ _ _Фо~р_м~1ул_а_~Д~о_л_я_го~д~а
0,24
27 марта 2023 г. ДОЛЯГОДА(ДАТА(ГОД(А2) , 1, 1), А2)
2
0,76
=1-ДОЛЯГОДА{ДАТА(ГОД{А2), 1, 1), А2)
З
4
Рис.
6.7. Расчет
прошедшей и оставшейся доли года
Чтобы рассчитать оставшуюся часть года, можно вычесть прошедшую долю года
из
1.
Так, если ячейка А2 содержит значение даты
=1-дОЛЯГОдА(дАТА(ГОд(А21 ;1;1) ;А2), что возвращает
0,76,
27 марта 2023
76%.
г., введите
или
Обсуждение
Функция долягодА является удобным способом расчета доли года между двумя
датами, включая прошедшую и оставшуюся доли года.
Дата и время
6.13.
1
163
Вычисляем разницу
между значениями дат и времени
Задача
У вас есть два значения дат или времени, и вы хотите рассчитать разницу между
ними.
Решение
Для расчета разницы между двумя значениями даты/времени можно использовать
формулу =конечная_дата-начальная_дата, которая возвращает разницу в днях, включая
время. Так, если ячейка А2 содержит значение
значение
30
27 Март 2023 8:00:00, а ячейка В2 2023 20:00:00, разницу между ними можно вычислить, введя
которая вернет 187,5 (рис. 6.8).
Сентябрь
формулу =В2-А2,
А
в
с
1
Начальная
Конечная
2
27 Март 2023 8:00:00
30 Сентябрь 2023 20:00:00
3
Е
D
Формула
Результат
=В2- А2
187,5
=ДН И( В2, А2 )
187
л
Рис.
6.8.
Вычисление разницы между датами
Для расчета разницы между двумя значениями времени можно применить форму
лу =ОСТАТ (время_1-время_2;1)
в часы, умножив его на
(см. разд.
6.8),
после чего преобразовать результат
24.
Для вычисления разницы в днях можно использовать формулу =ДНИ(конечная_дата;
начальная_дата). Так, при вводе, к примеру, формулы =ДНИ(В2;А2) возвращается
187.
Вычислить разницу в днях, месяцах или годах поможет функция РАЗНДАТ. Обычно ее
применяют в формуле =РАЗНдАТ (конечная_дата;начальная_дата;единица), где единица ука
зывает единицу измерения времени: значение "д" даст разницу в днях; "м"
ных месяцах; "г"
ды; а "гд" -
-
-
в пол
в полных годах; "гм"- в полных месяцах, игнорируя дни и го
в днях, игнорируя годы. Так, если ячейка А2 содержит, к примеру,
чью-то дату рождения,
=РАЭНдАТ (А2; СЕГОДНЯ
найти его (ее) текущий
возраст будет можно,
введя
() ; "r") .
У аргумента единица функции РАЗНдАТ есть также параметр "мд", который возвра
щает разницу в днях, игнорируя месяцы и годы. Однако этот параметр выдает не
точные результаты.
Пояснение
В этом разделе предложено несколько способов вычисления разницы между двумя
значениями даты/времени
-
в зависимости от того, какую разницу вам нужно
узнать: в годах, месяцах, днях или времени.
164
Глава б
6.14. Обрабатываем
рабочие дни
Задача
Вы хотите добавить рабочие дни к дате или найти разницу между двумя датами
в рабочих днях.
Решение
Добавить рабочие дни к дате, исключая выходные и праздники, позволяет функция
РАБДЕНЬ.
Обычно
ее
используют
праздники), где нач_дата -
в
формуле
=РАБДЕНЬ (нач_дата; количество_дней;
это дата, к которой вам надо добавить рабочие дни, коли
чество_дней- это число рабочих дней, которое нужно добавить или вычесть, а
праздники (необязательный аргумент)- это диапазон или массив, содержащий даты
выходных дней и праздников, которые требуется исключить. Так, если ячейка А2
содержит значение
27
марта
2023 r.,
введите формулу =РАБДЕНЬ(А2;20) -
то, чтобы добавить к ней
20 рабочих дней,
24 апреля 2023 г. Аналогично
2023 r., а диапазон С2:С5 - даты
это вернет дату
если ячейка А2 содержит значение
27 марта
2023 r., и вы вводите
с
3 апреля 2023 r. по 5 апреля
формулу =РАБДЕНЬ(А2;2О;С2:С5),
20 рабочих дней к дате из ячейки А2, исключая даты диапазона
С2:С5, то это вернет дату 27 апреля 2023 r. (рис. 6.9).
чтобы добавить
А
с
в
Начальная
2 / 27 марта 2023 г.
1
!
31 октября 2023 г.
о
Е
В1,jходные
Конечная
Формула
=РАБДЕНЬ(А2,
F
Результат
20)
24 апреля 2023
г.
20, С2:С5)
27 апреля 2023
г.
9 мая 2023
г.
3
3 апреля 2023
г.
4
4 апреля 2023
г.
=ЧИСТРАБДНИ(А2, В2)
157
5 апреля 2023
г. =ЧИСТРАБДНИ(А2, В2, С2:С5)
153
sl
=РАБДЕНЬ(А2,
6 !
Рис.
6.9.
Обработка рабочих дней
Если арrумент количество_дней функции РАБДЕНЬ является положительным числом,
функция возвращает будущие дни, а если у него отрицательное значение
-
то
прошедшие. Применить эту особенность можно, к примеру, для поиска последнего
рабочего дня месяца, используя формулу =РАБДЕНЬ(КОНМЕСЯЦА(дата;О)+l;-1) (см.
разд
6.11).
Функция чистРАБдни позволяет рассчитать количество полных рабочих дней между
двумя датами.
Ее обычно используют в формуле =ЧИСТРАБДНИ (нач_дата;кон_дата;
праздники), где аргумент праздники необязательный. Так, если ячейка А2 содержит
значение
- значение 31 октября 2023 г., то при вводе
157. Аналогично если ячейка А2 содержит
значение 27 марта 2023 r., а диапазон С2:С5 - даты с 3 апреля 2023 r. по 5 апреля
2023 г., то при вводе формулы =ЧИСТРАБДНИ(А2;В2;С2:С5) вернется 153.
27
марта
2023 r.,
а ячейка В2
формулы =ЧИСТРАБДНИ(А2;В2)
вернется
Функции РАБДЕНЬ и ЧИСТРАБдни учитывают субботу и воскресенье как выходные дни.
Для
других
задач
обработки
рабочих
дней
можно
использовать
функции
РАБДЕНЬ. МЕЖД и чистРАБдни. МЕЖД, которые позволяют указывать выходные дни.
Дата и время
1
165
Пояснение
В этом разделе представлены удобные способы работы с рабочими днями. Вы мо
жете использовать функцию РАБдЕнь для расчета, к примеру, сроков оплаты счетов
фактур или ожидаемых сроков доставки, а функцию чистРАБдни- для расчета коли
чества рабочих дней, оставшихся до завершения проекта, или выплат сотрудникам
на основе количества отработанных дней.
Если вам надо исключить заданную последовательность праздничных дней, то
можно использовать формулу из разд.
6.15,
позволяющую сгенерировать последо
вательность. Например, формула =ЧИСТРАБДНИ(А2;В2;ПОСЛЕД(14;С2)) вычисляет количе
ство рабочих дней между датами в ячейках А2 и В2, исключая
14
последователь
ных дат начиная от даты, содержащейся в ячейке С2.
6.15.
Получаем последовательность дат
Задача
Вы хотите получить динамический массив дат, начиная с конкретной даты.
Решение
Предположим, вам надо сгенерировать массив порядковых номеров дат, начиная
с конкретной даты. Если вы работаете в
мощью формулы =ПОСЛЕД (n; ;дата), где п держать массив, а дата -
27
марта
массив из
Microsoft 365,
то сделать это можно с по
это количество дат, которое должен со
это первая дата. Так, если ячейка А2 содержит значение
2023 г., введите формулу =ПОСЛЕД(lО; ;А2), чтобы создать динамический
I О порядковых номеров дат начиная с этой даты, который потом можно
будет отформатировать в виде дат.
Пояснение
Поскольку значения даты/времени сохраняются в виде порядковых номеров, их
можно использовать в математических функциях и операциях
показано в разд.
4.1,
-
например так, как
где применялась функция послЕд. Генерирование совокупности
дат будет полезным, если вам, к примеру, понадобится передать последовательные
праздничные даты в функции РАБДЕНЬ, ЧИСТРАБДНИ или ЧИСТРАБДНИ.МЕЖД (см. разд.
6.14).
ГЛАВА
7
Массивы, логика
и функции поиска
Решения этой главы охватывают три основные области, необходимые для взаимо
действия со многими типами электронных таблиц:
♦
работу с массивами или диапазонами как с частью формулы;
♦
выполнение логических тестов;
♦
поиск значений по имени и индексу.
В этой главе рассматриваются фильтрация, сортировка и объединение массивов
с помощью функций, а не команд меню, захват или исправление ошибок и приме
нение функций пРосмотРх, индЕкс и поискпоз для поиска значений. Здесь также опи
сываются способы работы с функциями двссыл и смЕщ для создания динамических
ссылок на ячейки и диапазоны.
7.1.
Получаем уникальные значения
Задача
У вас есть массив или диапазон, и вы хотите извлечь список его уникальных значе
ний или тех, которые появляются только один раз.
Решение
Предположим, что в диапазоне А2:А6 приведены имена покупателей, а в диапазоне
В2:В6- их фамилии, и вам надо исходя из этих данных получить два списка:
один, содержащий уникальные имена, и другой, содержащий имена, которые появ
ляются лишь ОДИН раз.
Если вы работаете в
Excel 2021
или
Excel 365,
то можете решить эту задачу, ис
пользуя функцию Уник, возвращающую динамический массив значений. Обычно ее
применяют в формуле =УНИК(массив;по_столбцам;один_раз), где массив -
это диапазон
или массив, значения которого собираетесь обработать, по_столбцам (необязатель
ный аргумент)
(опустите
-
определяет, возвращать ли уникальные строки или столбцы
его для возврата уникальных строк или установите в значение истиНА для
возврата уникальных столбцов), а один_раз (необязательный аргумент)
ливает,
возвращать ли уникальные
значения или те,
которые
-
устанав
появляются только
один раз (опустите его для возврата уникальных значений или установите в значе
ние истиНА для возврата значений, которые появляются лишь один раз). Таким обра
зом, при вводе формулы •УИИК(А2:Вб) возвращаются уникальные строки диапазо-
Глава
168
7
в
А
1
Имя
2 j дня
З
Рита
4
Женя
F
=УНИК(А2:Вб)
Пряникова
r:--------i
,Калачева
Е
D
с
Фамилия
,
Аня
Пряникова
Рита
Калачева
Рита
Калачева
Женя
Калачева
Дина
Свистунова
Калачева
Женя
Калачева
5 ! дина
Свистунова
Дина
Свистунова
б
Пряникова
Аня
н
G
=УНИК{А2:Вб;;ИСТИНА)
7
Рис.
7.1.
Использование функции УНИК
на А2:В6, а при вводе =УНИК(А2:В6; ;ИСТИНА) -
один раз (рис.
строки , которые появляются только
7.1) .
Функция УНИК возвращает уникальные значения в смежных столбцах или строках.
Если в вашем случае они не являются смежными , можно использовать функцию
ВЫБО РСТОЛБЦ или ВЫБО РС ТРОК, чтобы переставить их (см . разд. 7.4), а уже затем при
менить к результату функцию УНИК.
Пояснение
Это решение предоставляет удобный способ получения списка уникальных строк и
столбцов массива, который рекомендуется использовать для создания списка поку
пателей или продуктов . С его помощью также можно получить, к примеру, список
разовых покупателей, с которыми, возможно, потребуется связаться для налажива
ния дальнейших отношений.
Подсчитать количество строк или столбцов, возвращенных функцией Уник , можно
с помощью функций
ЧСТРОК или ЧИСЛСТОЛБ,
которые ВЫВОДЯТ число строк или
столбцов в массиве . Так, при вводе =ЧСТЮК(УНИК(А2:В6)) подсчитывается число
уникальных строк в диапазоне А2 : 86 .
7.2.
Сортируем массив
Задача
У вас есть массив или диапазон , и вам нужен динамический массив его значений,
отсортированный в порядке возрастания или убывания .
Решение
Предположим, что в диапазоне А2 : А6 приведены имена покупателей, а в диапазоне
В2:В6
-
их фамилии, и вам надо исходя из этих данных получить два списка:
один, в котором данные отсортированы по фамилии, и другой, в котором данные
отсортированы сначала по фамилии, а затем по имени. Если вы работаете в Ехсе\
или Ехсе\
365, то
2021
можете решить эту задачу с помощью функций СОРТ и соРт по.
Дnя получения динамического массива, который сортирует данные по одному
столбцу или строке
-
например, по фамилиям, можно использовать функцию СОРТ.
Массивы, логика и функции поиска
169
Обычно ее применяют в формуле =СОРТ (массив; индекс_ сортировки; порядок_ сортировки;
по_ столбцу), где индекс_ сортировки (необязательный аргумент)
-
это индекс строки
или столбца, по которым вы собираетесь отсортировать массив (по умолчанию
порядок_сортировки (необязательный аргумент),
задает порядок сортировки (опус
-
тите его для восходящего порядка и используйте значение
рядка), а по_ столбцу (необязательный аргумент)
1),
- 1 для
убывающего по
определяет, сортировать ли массив
-
по строкам (по умолчанию) или по столбцам (установите его для этого в значение
истиНА). Так, чтобы получить динамический массив, который сортирует данные
в диапазоне А2:86 по фамилии, введите =СОРТ(А2:В6;2) (рис.
А
в
! имя
с
Е
D
Фамилия
=СОРТ(А2:В6;
2 \ Римма
Пряникова
Рита
1
....L
2)
Калачева
7.2).
н
G
=СОРТПО(А2:В6; В2:В6;; А2:А6;
Женя
)
Калачева
з
Рита
Калачева
Женя
Калачева
Рита
Калачева
4
Женя
Калачева
Римма
Пряникова
Аня
Пряникова
5
Дина
Свис,унова
Аня
Пряникова
Римма
Пряникова
6
Аня
Пряникова
Дина
Свис,унова
Дина
Свис,унова
7
Рис.
7.2.
Применение функций СОРТ и СОРТПО
Чтобы получить динамический массив, который сортирует данные по нескольким
столбцам или строкам, используйте функцию СОРТПО. Обычно ее применяют в фор
муле
=СОРТПО (массив; по_массив у1 ; порядок_ сортировки1; по_ма ссиву2; порядок_ сортировки2;
где массив -
... ) ,
это диапазон или массив, которые вы собираетесь отсортировать,
по_массивуl, по_массиву2 и т. д.
отсортировать
-
это диапазоны или массивы, по которым вам надо
массив, а необязательные аргументы порядок_ сортировки] и порядок_
сортировки2 задают собственно порядок сортировки
( опустите
в восходящем порядке или используйте значение
для сортировки в убывающем
-1
их для сортировки
порядке). Так, чтобы получить динамический массив, который сортирует данные
в диапазоне А2:86 по фамилии, а затем по имени в возрастающем порядке, введите
формулу =СОРТПО(А2:Вб;В2:Вб; ;А2:Аб; ) .
Пояснение
В этом разделе представлен удобный способ получения динамического массива
отсортированных значений. Наиболее полезен он в сочетании с другими способами
(например, из разд.
7.1) -
чтобы получить, к примеру, динамический массив уни
кальных строк в диапазоне А2:В6, отсортированных по фамилии, введите формулу
=СОРТ (УНИК (А2: Вб)
; 2) .
7.3. Фильтруем
массив
Задача
У вас есть массив или диапазон, и вам нужен динамический массив значений,
удовлетворяющих определенному условию.
Глава
170
7
Решение
Предположим, что в диапазоне А2:А6 приведены имена покупателей, а в диапазоне
В2:В6- их фамилии, и вам надо исходя из этих данных получить список всех по
купателей, фамилия которых Калачева.
Если вы работаете в
или
Excel 202 l
Excel 365,
то можете решить эту задачу,
используя функцию ФИЛЬТР, возвращающую динамический массив значений, от
вечающих конкретному критерию. Обычно ее применяют в формуле =ФИЛЬТР (массив;
это массив, который вы собираетесь отфильтро
критерий;если_ пусто), где массив критерий,
это
критерий -
вать,
если_ пусто (необязательный аргумент)
ничего
вернет
не
фильтр
если
которому вам
по
надо его
отфильтровать,
а
это значение, которое вам нужно вернуть,
-
(по
умолчанию,
он
ошибку
возвращает
в значении #вычисл !). Так, чтобы получить динамический массив, который возвра
щает только строки, в которых содержится фамилия Калачева, введите формулу
=ФИЛЬТР(А2:Вб;В2:Вб="I<а.пачева") (рис.
в
А
с
7.3).
Е
D
Н
G
F
I
J
К
1
Имя
Фамилия
=ФИЛЬТР(А2: Вб;В2: Вб="Калачева") =ФИЛЫР(А2:Вб; (В2 :Вб="Калачева")*(А2:Аб="Жен~
2
3
4
5
Аня
Пряникова
Рита
Калачева
Рита
Калачева
Женя
Калачева
Женя
Калачева
Дина
Свистунова
б
Аня
Пряников а
Женя
Калачева
7
Рис.
7.3.
Использование функции ФИЛЬТР
Вы также можете с помощью операторов
•
и + применить в функции ФИЛЬТР не
сколько критериев (аналогично решению из разд.
7.6).
«Под капотом» аргумент
критерий представляет собой массив булевых значений ИСТИНА/ЛОЖЬ с шириной или
высотой, идентичными массиву, который вам надо отфильтровать, поэтому здесь
можно использовать булеву алгебру для управления тем, какие строки (или столб
цы) должна возвращать функция. Обычно используют оператор
•
(если данные
должны отвечать всем критериям) или оператор + (если они могут соответствовать
любому из них), поэтому для получения динамического массива, возвращающего
каждую строку, в которой есть имя женя И фамилия Калачева, введите форму
лу
=ФИЛЬТР(А2:Вб;
(В2:Вб="Калачева")
=ФИЛЬТР (А2: В6; (В2: Вб="Калачева")
* (А2:Аб="Женя")).
+ (А2 :Аб="Женя") )
Аналогично
при
вводе
возвращаются все строки, в которых
есть имя Женя ИЛИ фамилия Калачева.
Пояснение
В этом разделе предлагается гибкий способ фильтрации массива или диапазона
с использованием определенного критерия. Обратите внимание на то, как можно
применять операторы
ные условия.
•
и +, чтобы сцепить несколько критериев и построить слож
Массивы, логика и функции поиска
7.4.
171
Преобразовываем массивы
Задача
У вас есть массив или диапазон, и вы хотите выбрать, какие из его столбцов вер
нуть и в каком порядке, присоединить его данные к другому массиву или преобра
зовать массив другими способами.
Решение
Ехсе\
365
приобрел несколько новых функций, которые можно использовать для
преобразования массивов:
♦
ВЫБОРСТОЛБЦ И ВЫБОРСТРОК
Функция вывоrстолвц создает динамический массив, который возвращает некото
рые столбцы массива или меняет их порядок. Обычно ее используют в формуле
=ВЫБОРСТОЛБЦ (массив; номер_ столбца 1; номер_ столбца2;
. .. ) ,
которого вам надо вернуть столбцы, номер_столбцаl -
ца, номер_ столбца2 -
где массив
-
это массив, из
это индекс первого столб
это индекс второго столбца и т. д. Поэтому при вводе фор
мулы =:ВЫSОРСТОЛЕЦ (А2: ElO; 2; 1; З)
возвращается динамический массив, содержа
щий второй, первый и третий столбцы из диапазона А2:Е\О. Функция ВЫБОРСТРОК
работает аналогично функции вывоrстолвц, за исключением того, что она возвра
щает строки.
Если вы работаете в более ранней версии
Excel,
то можете воспроизвести функ
цию ВЫБОРСТОЛБЦ с помощью формулы =ВЫБОР (массив;диапазон_l;диапазон_2; ... ).
Она возвращает массив, содержащий диапазон_l, если массив включает
зон_2, если он включает
2,
возвращает массив, содержащий диапазоны
♦
1,
диапа
и т. д. Например, формула =ВЫБОР((1;2);В1:Вб;А1:Аб)
81 :86
и А1 :А6 (см. разд.
7.8).
ВСТОЛБИК И ГСТОЛБИК
Функция встолвик добавляет строки одного массива в конец другого, возвращая
вертикальный
стек.
Обычно
массив2; . .. ) , где массивl -
ее
используют
в
формуле
это первый массив, массив2 -
=ВСТОЛБИК (массивl;
второй и т. д. Поэтому
при вводе =ВСТОЛЕИК (А2: в10 ;АlЗ: Вlб) возвращается динамический массив, добав
ляющий строки диапазона А13:В16 к концу строк диапазона А2:В10. Применять
функцию встолвик можно и с 3D-ссылками
-
чтобы создать динамический мас
сив из значений с одинаковой ссьmкой на ячейку в смежных листах (см.разд.
2. 5).
Так, при вводе формулы =ВСТОЛЕИК(НR:Продажи! Bl) возвращается динамический
массив, содержащий значения ячейки В 1 с листов
HR,
Продажи и всех проме
жуточных. Функция гстолвик работает аналогично встолвик, за исключением того,
что она добавляет столбцы одного массива справа от другого.
♦
DROP
Функция DROP возвращает динамический массив, исключая указанное количество
строк и столбцов с начала или с конца массива. Обычно ее используют в форму
ле
=DROP
(массив;строки;столбцы), где массив
-
это массив, данные из которого вы
Глава
172
7
собираетесь вернуть, а необязательные аргументы с'IТ)оки и столбцы -
определя
ют, сколько строк и столбцов вам надо исключить с начала или с конца массива
(используйте положительное число для исключения их с начала и отрицатель
ное
для исключения их с конца). Так, при вводе формулы =DROP(A2:B10;2) воз
-
вращаются все строки из диапазона А2:В 1О, за исключением первых двух, а при
вводе =DROP(A2:ElO; ;-3) возвращаются все столбцы из диапазона А2:Е I О, за ис
ключением последних трех.
♦
ТАКЕ
Функция ТАКЕ возвращает динамический массив, включающий указанное коли
чество строк и столбцов с начала или с конца массива. Эта функция выглядит
аналогично DROP, но в ней вы указываете, какие строки и столбцы включать, а не
исключать. Так, при вводе формулы =ТАКЕ(А2:В10;2) возвращаются первые две
строки диапазона А2:В10, а при вводе =ТАКЕ(А2:Е10;;-З) ца диапазона
♦
последние три столб
A2:EI О.
ПОСТРОК И ПОСТОЛБЦ
Функция постРок возвращает массив в виде одной строки. Обычно ее используют
в формуле =ПОСТРОК(массив;игнорировать;по столбцу), где массив -
это массив, дан
ные из которого вам надо вернуть в виде строки, игнорировать (необязательный
аргумент) указывает, игнорировать ли пустые ячейки и/или ошибки (по умолча
нию они включаются), а по_столбцу (необязательный аргумент) указывает, как
упорядочивать значения: по строке (по умолчанию) или по столбцу (установите
этот аргумент в значение истиНА, чтобы упорядочить значения по столбцу). Так,
при
вводе
формулы
=ПОСТРОК (А2: BlO)
возвращаются
все
значения
диапазо
на А2:В I О в виде одной строки. Функция постолвц работает аналогично постРок,
за исключением того, что она возвращает массив в виде столбца, а не строки.
Поэтому
при
вводе
=ПОСТОЛБЦ(А2:В10)
возвращаются
все
значения
диапазона
А2:В 1О в виде одного столбца.
Более ранние версии
Excel
включают также функцию ТРАНСП, которая транспониру
ет строки и столбцы массива, преобразуя строки в столбцы, а столбцы в строки.
Обычно ее используют в формуле =ТРАНСП (массив).
Пояснение
Excel 365
содержит новые функции для преобразования массивов, которые можно
использовать в сочетании с функциями из разд.
7.1-7.3.
Вы можете, к примеру,
применить функции Уник и вывоРстолвц, чтобы вернуть динамический массив уни
кальных значений для столбцов, не расположенных рядом друг с другом, или
функции встолвик и СОРТ, чтобы объединить значения нескольких массивов и отсор
тировать их.
Массивы, логика и функции поиска
7.5.
173
Используем логические критерии Истина и Ложь
Задача
Вы хотите провести логический тест и вернуть одно значение, если его результаты
соответствуют критерию Истина, и другое, если они
соответствуют критерию
Ложь.
Решение
Предположим, ячейка А 1 содержит число, и вам надо вернуть одно значение, если
оно больше
50,
и другое, если это не так.
Чтобы решить эту задачу, можно выполнить логический тест с использованием
функции
ЕСЛИ. Обычно ее применяют в формуле =ЕСЛИ (логический_ тест;значение_
ее.ли_ истина; значение_ ее.ли_ ложь),
определяющей,
что
следует
вернуть
значе
ние_ ее.ли_ истина, если логический_тест принимает значение ИСТИНА, и значение_ ее.ли_ложь,
если он принимает значение ложь. Так, при вводе формулы =ECJIИ(Al>S0;Al*0,l;0) воз
вращается значение ячейки А 1, умноженное на О, 1, если оно больше
50,
и ноль, ес
ли это не так.
Если вы работаете в
Excel 2019
или более поздней его версии, то можете использо
вать функцию ЕСЛИМН, позволяющую выполнить несколько логических тестов и вер
нуть различные значения, в зависимости от того, какие из них являются истинны
ми.
Обычно
эту
функцию
применяют
в
формуле
значение_ ес.ли_истинаl;логический_ тест2; значение_ ее.ли_ истина2;
=ЕСЛИМН(логический_тестl;
... ).
Она возвращает значение_ес.ли_истинаl в случае, если логический_тестl принимает зна
чение ИСТИНА, значение_ ее.ли_ истина 2, если логический_ тест2 принимает значение ИСТИНА,
и
т. д.
Поэтому
при
вводе
формулы
=Естм{(А1>=75;"Прехраско";Аl>=SО;"Хорошо";
Al<S0; "Сойдет")) в зависимости от значения в ячейке А 1, возвращаются соответст
вующие ему текстовые значения.
Если вы работаете в более ранней версии
применить вложенные функции ЕСЛИ -
Excel,
то вместо функции ЕСЛИМН можете
например, так: =ЕСЛИ (А1>=75; "Отлично";
ЕСЛИ(А1>=50;"Хорошо";"Сойдет"))
Инвертировать логический тест можно с помощь функции НЕ. Обычно она приме
няется в формуле =НЕ (логический_ тест) и возвращает значение ИСТИНА, если логиче
ский_ тест принимает значение ложь, и значение ложь, если логический_ тест принимает
значение истиНА. Так, при вводе формулы =ECJIИ(НE(Al>S0) ;Al*0,l;0)
возвращается
значение ячейки А 1, умноженное на О, 1, если оно НЕ больше
и ноль, если
больше
50,
50.
Чтобы вернуть одно значение, если все условия истинны, и другое, если это не так,
можно использовать функцию ЕСЛИ вместе с функцией и. Функция и возвращает
значение ИСТИНА, если каждый аргумент оценивается как истиНА, или значение ложь,
если один или более аргументов оцениваются как ложь. Так, при вводе формулы
174
1
Глава
7
=ECЛИ(И(Al>S0;Bl>=Cl) ;Al*0,l;0) возвращается значение ячейки
если оно больше
50
И значение ячейки
81
Al,
умноженное на
больше или равно значению ячейки
0,1,
Cl,
в противном случае возвращается ноль.
Чтобы вернуть одно значение, если хотя бы одно из условий истинно, и другое
если
все ложны, можно использовать функцию Если вместе
с
-
функцией или.
Эта функция работает аналогично и, за исключением того, что она возвращает
значение
ИСТИНА,
если
любое
=ЕСЛИ(ИЛИ(Аl>SО;Вl>=Сl) ;Al*0,l;0)
на О, 1, если оно больше
50
из
условий
истиНА.
возвращается
Так,
при
вводе
значение ячейки
Al,
формулы
умноженное
ИЛИ значение ячейки В 1 больше или равно значению
ячейки С 1. Если оба условия ложны, возвращается ноль.
Пояснение
Функция Если
-
одна из наиболее часто используемых функций
Excel.
В этом раз
деле демонстрируется, как сочетать ее с функциями и, или и НЕ и как использовать
функцию Еслимн вместо вложенных функций Если (в зависимости от вашей версии
Excel).
Дополнение
Чтобы узнать, как вернуть количество, сумму или среднее ячеек, которые зависят
от логического теста, обратитесь к разд.
4.5.
Использование функций и и или с массивами описано в разд.
7. 6.
Познакомиться с другими типами формул на основе функции Если можно в разд.
7.6. Оцениваем
7. 7.
условия И и ИЛИ в формулах массивов
Задача
Вы хотите использовать логику на основе функций и и или с массивами.
Решение
Предположим, что в диапазоне А2:А4 содержится список наименований, а в диапа
зоне 82:В4- список имен, и вам надо выяснить, в каких строках столбца А имеет
ся наименование Кофе, а в каких строках столбца В
-
имя женя.
Один из способов решения такой задачи состоит в использовании функции и
(см. разд.
7.5),
позволяющей проверить значения в каждой строке. При этом вы
применяете ее в формуле =И (А2="Кофе" ;В2="Женя") для первой строки, в формуле
=И (АЗ="Кофе" ;ВЗ="Женя") для второй строки и т. д. Однако этот подход неидеален, по
скольку в нем задействуется несколько формул.
Другой подход заключается в использовании одной формулы
-
например, вот так:
=(А2:А4="Кофе"I * (В2:В4="Женя"1=1. Эта формула применяет оператор *, позволяющий
Массивы, логика и функции поиска
175
проверить оба условия и, и возвращает массив значений ИСТИНА/ЛОЖЬ. Работает она
следующим образом (рис.
1.
7.4):
Формула вычисляет часть (А2: А4="Кофе"), возвращая значение ИСТИНА для каждой
ячейки диапазона А2:А4 со значением Кофе и значение ложь для всех остальных
ячеек.
2.
Затем она вычисляет часть (В2:В4="Женя"), возвращая значение истиНАдля каждой
ячейки диапазона В2:В4 со значением женя и значение ложь для всех остальных
ячеек.
3.
Далее формула перемножает результаты из шага
* работает
1,
в
1и
шага
2.
Поскольку оператор
с числовыми значениями, формула преобразовывает значения истиНА
а значения ложь в О (см.разд.
ки. Умножение возвращает
1
3.1)
и перемножает значения для каждой стро
для каждой строки, где оба условия принимают
значение истиНА, и О для всех остальных строк.
4.
И наконец, формула проверяет, равно ли
1
каждое значение на шаге
3,
и воз
вращает массив значений истиНА/ложь.
А
D
С
В
=(А2 :АS="Кофе")*(В2:В5="Женя")=1
Напиток Имя
Чай
Женя
ложь
ИСТИНА
З
Кофе
Женя
ИСТИНА
ИСТИНА
4
5
6
Кофе
Люся
ложь
ИСТИНА
Какао
Люся
ложь
ложь
Рис.
7.4.
,
Е
=(А2 :АS="Кофе ")+(В2:В5= " Женя") < >0
1
2
Использование операторов
*и
+в
формуле массива
Если вам надо проверить выполнение условий или, используйте оператор + вместо
оператора*. Так, формула =(А2:А4="Кофе")+(В2:В4="Женя")<>О возвращает массив зна
чений ИСТИНА/ложь, указывающий для каждой строки, содержит ли ячейка в столб
це А значение Кофе ИЛИ ячейка в столбце В значение женя.
Пояснение
В этом разделе представлен удобный способ работы с условиями И и ИЛИ для воз
вращения динамических массивов. Этот подход уместен также в сочетании с функ
циями типа СУММПРоизв (см. разд.
чить только
строки,
4. 7),
отвечающие
поскольку его можно применить, чтобы вклю
определенным
используют в качестве оператора и, а символ
7.7.
+-
условиям.
Обычно
символ
*
в качестве оператора или.
Работаем с типами и ошибками в значениях
Задача
У вас есть значение, и вы хотите проверить его тип и исправить все ошибки в зна
чениях.
Глава
176
7
Решение
Excel
содержит множество функций, которые можно использовать для проверки
типа значения. Чтобы проверить, к примеру, содержит ли ячейка А 1 число, введите
формулу =ЕЧИСЛО(Аl), которая возвращает значение ИСТИНА, если значение в А1 явля
ется числом, и значение ложь, если это не так. К аналогично работающим функциям
относятся также: ЕТЕКСТ, ЕНЕТЕКСТ, ЕЛОГИЧ, ЕНЕЧЁТ, ЕЧЁТ, ЕПУСТО, ЕОШ, ЕОШИБКА., ЕНД, ЕФОРМУЛА
и ЕССЫЛКА (которая проверяет наличие ссылок).
Функция ЕОШИБКА возвращает ИСТИНА, если значение ошибочно, в то время как ЕОШ
возвращает ИСТИНА для всех типов ошибок, кроме #Н/Д!. Обратите внимание, что
можно отдельно использовать формулу Енд, чтобы проверить наличие ошибок
#Н/ДI.
Функции Е часто используются вместе с функциями ЕСЛИ (см. разд.
7.5).
Так, при
вводе формулы =ЕСJJИ(ЕПУСТО(Аl); "Пусто"; "Не пусто") возвращается Пусто, если ячей
ка А 1 пуста, и не пусто, если это не так.
Вы также можете применить функцию Еснд, чтобы разобраться со значениями #Н/д,
и функцию ЕСЛИОШИБКА., чтобы исправить любые ошибки, включая #Н/д. Так, при вво
де формулы =ECJJИalJИБl(A(Al/Bl;"Qaибxa") возвращается частное от деления значения
ячейки А 1 на значение ячейки В 1 -
если это вычисление допустимо, и Ошибка, если
в результате получается ошибочное значение.
Чтобы вернуть числовой код, представляющий тип значения, можно задействовать
функцию тип. Для числа используется код
значения ИСТИНА/ложь код
64,
код
4,
для текста
1,
для ошибки в значении
а для составных данных
-
код
128.
-
код
код
2, для логического
16, для массива -
Поэтому, если, к примеру, ячейка А1
содержит число, то при вводе =ТИП (Al) возвращается
1.
Пояснение
В этом разделе предложены удобные способы работы с различными типами значе
ний. Они позволяют вам выполнять те или иные действия, в зависимости от типа
значения, захватывать и исправлять ошибки в значениях.
7.8.
Выбираем возвращаемые значения
Задача
Вы хотите выбрать возвращаемое значение на основе соответствующего индекса
или выражения.
Решение
Если вы собираетесь задействовать индекс, чтобы вернуть значение из списка ар
гументов, то можете использовать функцию ВЫБОР, применив ее, к примеру, в фор
муле
=ВЫБОР I номер_ индекса ;значение]; значение2;
. .. ) ,
где
она
возвращает
значение 1,
Массивы, логика и функции поиска
если номер_ индекса равен
при
1,
зна чение2, если номер_ индекса равен
вводе =ВЬIIЮР (А2; "Лепсовая"; "Вепосипед"; "ГрузоВИJС")
ячейка А2 содержит число
содержит
1,
и т. д. Например,
возвращается
Велосипед, если она содержит
2,
ВЫБОР также можно использовать, чтобы
3. Функцию
2,
177
Легко вая,
если
и Грузовик, если она
-
в зависимости от
вернуть различные диапазоны. Так, введя фор
значения аргумента номер_индекса -
мулу =ВЬIIЮР(А2;В2:В4;С2:С4), вы вернете динамический массив (в зависимости от
вашей версии
Excel,
см. разд.
ячейка А2 содержит число
содержит
3.4),
содержащий значения диапазона В2:В4, если
1 (рис . 7.5),
и значения диапазона С2:С4, если ячейка А2
2.
с
в
А
F
Е
D
ЛегковаА Кошка
Легковая
Кошка
ЛеrковаА
з
Мотоцикл Собака
МотоциК/1
Собака
Мотоцикл
4
Грузовик Рыбка
Грузовик
Рыбка
Грузовик
Машина
G
=ВЫБОР({2;1}; В2:84; С2:С4)
=ВЫБОР(А2; В2:В4; С2:С4)
Животное
1 ! Индекс
2 1
5
Рис.
7.5.
Использование функции ВЫБОР
Функции ВЫБОР можно передать и массив индексов
-
чтобы она вернула несколько
значений. Например, при вводе формулы =ВЬIIЮР((2;1};В2:В4;С2 : С4)
массив,
динамический
(см . рис .
состоящий
из
значений
диапазонов
возвращается
С2 : С4
и
В2 : В4
7.5).
Если вы работаете в
Excel 2019
или в более поздней его версии, то можете также
использовать функцию ПЕРЕКJПОЧ -
она аналогична функции ВЫБОР, но для определе
ния того, какое значение возвращать, она использует выражение. Обычно ее при
меняют в формуле =ПЕРЕКJПОЧ (выражение ; значениеl; результатl; значение2; резуль тат2 ; . . . ;
ло_ умо.лчанию),
которая
возвращает результат 1,
если
выражение
принимает
значение 1,
результат2, если выражение принимает значение2, и т. д . При отсутствии соответст
вующих значений функция возвращает значение по_умолчанию. Например, при вводе
=IIEPEIOll)Ч (А2; "Само.петы" ;82 : В4; "Поезда" ;С2 :С4
;D2 : D4)
возвращаются значения диапазо
на В2 : В4, если А2 содержит текст самоле ты, значения диапазона С2:С4, если она со
держит Пое зда, значения диапазона
(рис.
D2:D4, если
в
А
Гвыражение
с
Е
D
=ПЕРЕКЛЮЧ(А2; "Самолеты"; В2:84; "Поезда"; С2:С4;
Самолеты
Поезда
2 ! Самолеты
ИЛ
Электричка Легковой
ил
з
ТУ
Ласточка
Грузовик
ТУ
4
5 1
АН
Сапсан
Автобус
АН
1
она не содержит ни того ни другого
7.6).
Рис.
Прочие
7.6.
02:04)
Использование функции ПЕРЕКЛЮЧ
Пояснение
Функции ВЫБОР и ПЕРЕк.mоч могут стать удобной альтернативой использованию функ
ций ЕСЛИ и Условия (см. разд.
7.5).
Обратите внимание, что можно также использо-
178
Глава
7
вать функцию ВЫБОР в более старых версиях Ехсе\ в качестве альтернативы функции
ВЫБОРСТОЛБЦ (см. разд.
7.9.
7.4).
Ищем точные и ближайшие значения
Задача
Вы хотите использовать одно значение, чтобы найти в диапазоне другое.
Решение
Предположим, у вас есть идентификатор пользователя, и вам надо найти соответст
вующее имя клиента в диапазоне А2:С5 с учетом того, что в диапазоне А2:А5 при
ведены идентификаторы клиентов, в диапазоне В2:В5
С2:С5
-
-
их имена, а в диапазоне
их фамилии.
Если вы работаете в Ехсе\
2021
или в Ехсе\
365,
то можете найти имя клиента с по
мощью функции пРосмотРх. Обычно ее используют в формуле
=ПРОСМОТРХ(искомое_значение;просматриваемый_массив;возращаемый_массив;
если_ ничего_ не_ найдено; режим_ сопоставления; режим_ поиска)
со следующими аргументами:
♦
искомое значение
Это значение, которое вам надо найти.
♦
просматриваемый_массив
Это диапазон или массив, где вы будете осуществлять поиск.
♦
возращаемый_ массив
Это диапазон или массив, содержащий значения, которые вам надо вернуть.
♦
если ничего не найдено
Этот необязательный
аргумент указывает,
какое значение
возвращать, если
функция не может найти сопоставление. Если вы его опустите, функция вернет
#Н/Д.
♦ режим_сопоставления
Этот необязательный аргумент указывает тип сопоставления. Если вы его опус
тите или установите в значение О, функция вернет если_ничего_не_найдено или
#Н/д -
если
сопоставления
в значение
1,
не
в
сможет
значение
найти
-1,
точное
чтобы
сопоставление.
вернуть
ближайший
У становите
меньший
режим_
элемент,
чтобы вернуть следующий больший элемент, или в значение
2,
чтобы выполнить поиск по подстановочным знакам*, ? и~.
♦
режим_ поиска
Этот необязательный аргумент указывает тип и порядок поиска. Если вы его
опустите или установите в значение
1,
функция будет выполнять поиск, начиная
с первого элемента. t'СЛИ установите его в значение
-1,
функция будет выпал-
Массивы, логика и функции поиска
нять поиск, начиная с последнего элемента, а если в значение
будет выполнять двоичный
поиск,
мый_ массив
отсортирован
возрастанию.
в значение
-2
по
который
предполагает,
Установка
то функция
2,
что
179
просматривае
аргумента
режим_ поиска
предполагает, что просматриваемый_ массив отсортирован по убыва
нию.
Так,
чтобы
вернуть
имя
и
фамилию
клиента с
идентификатором
2, введите
G2:G5 указаны нижние
границы четырех ценовых диапазонов, а в диапазоне Н2:Н5 названия каждого
диапазона, выяснить, какой диапазон содержит, к примеру, значение 3500, можно,
введя =ПIOCМJТPX(ЗS00;G2:GS;H2:HS; ;-1) (рис. 7.7).
=ПЮСМJТРХ(2;А2:А5;В2:С5). Аналогично, если в диапазоне
в
А
1
и.g
2 11
3
2
4
З
5 4
о
с
f
к
н
G
Имя
Фамилия =ПРОСМОТРХ(2: А2:А5; B2:CS' Лимит
Ранг
=ПРОСМОТРХ(З500;
Аня
Пряников ; Клара
о
А
в
Клара
Осина
3000
в
3000 С
Рита
Калачева
4000
с
4000
В
Женя
Калачева
5000
о
5000
А
Осина
G2:G5; Н2 : Н5 ;; - 1)
Лим ит
Ранг
00
в
б
Рис.
'
7.7.
Использование функции ПРОСМОТРХ
• Функцию ПРОСМОТРХ рекомендуется использовать только для выполнения двоичного
поиска, где просматриваемый_ массив был отсортирован, В противном случае функ
.
ция может вернуть недействительные результаты.
Если вы работаете в более старой версии
Excel,
то можете применить вместо функ
ции ПРОСМОТРХ функцию ВПР. Функция ВПР ищет значение с столбце и возвращает зна
чение в той же строке. Обычно ее используют в формуле =ВПР (искомое
ние; просматриваемый_ массив; индекс; тип_ сопоставления),
надо
найти,
и
первый
столбец
в
где искомое значение
массиве
-
значе
значение,
которое
вам
индекс -
это индекс столбца в массиве просматриваемый_массив, который вам нужно
просматриваемый_массив,
вернуть, а тип_ сопоставления (необязательный аргумент) указывает тип сопоставле
ния: установите его в значение О или ложь, чтобы найти точное сопоставление, и
опустите его или установите в значение
1 или
истиНА, чтобы вернуть приблизитель
ное сопоставление, если первый столбец массива просматриваемый_ массив отсортиро
ван в порядке возрастания. Так, при вводе формулы =ВПР(2;А2:СS;З;ЛОЖЬ) выполняет
ся поиск значения
2
в первом столбце и возвращается значение в третий столбец
этой же строки. Аналогично если в диапазоне
G2:G5
указаны нижние границы
четырех ценовых диапазонов в возрастающем порядке, а в диапазоне Н2:Н5 приве
дены названия каждого диапазона, то при вводе, например, формулы =ВПР (3500;
G2:H5;2) возвращается имя диапазона, содержащее значение
В
Excel
3500.
также включена функция гпР, которая ищет значение в строке и возвращает
значение в тот же столбец. Эта функция работает аналогично впР, поэтому при вво
де
формулы
=ВПР("Фами.пия" ;Al:C7 ;З;ЛОЖЬ)
выполняется
поиск
текста
"Фамилия"
в первой строке и возвращается значение в третью строку этого же столбца.
180
Глава
7
Пояснение
Поиск значений является чрезвычайно важным аспектом многих рабочих листов,
и в этом разделе показано, как выполнить его с помощью функций пrосмотrх, впr и
гпr. Функция пrосмотrх более гибкая, чем впr и гпr, поскольку ей не нужно, чтобы
значение, которое вам надо найти, находилось в первой строке или столбце, однако
она доступна только в последних версиях
Excel.
Осуществлять поиск значений можно также, используя функцию ИНДЕКС вместе
с поискпозх или поискпоз (см.разд.
7.10.
7.1 О
и
7.11).
Ищем индекс сопоставимого значения
Задача
У вас есть значение, и вы хотите найти его относительную позицию в диапазоне
или массиве.
Решение
Если вы работаете в
Excel 2021
или в
Excel 365,
то можете применить функцию
поискпозх для поиска элемента в диапазоне или массиве и вернуть его относитель
ную позицию или индекс. Обычно ее используют в формуле =поискпозх (искомое_
значение; просматриваемый_ массив; тип_ сопоставленин;режим_ поиска),
это
то,
что
вам
надо
найти
в
массиве
где
искомое_ значение
просматриваемый_ массив,
а
-
аргументы
тип_ сопоставления И режим_ поиска следующие:
♦ режим_ сопоставления
Этот необязательный аргумент указывает тип сопоставления. Если вы опустите
его или установите в значение О, функция вернет #Н/д, если не сможет найти
точное сопоставление. У становите его в значение
меньший элемент, в значение
или в значение
2,
1,
-1,
чтобы вернуть ближайший
чтобы вернуть следующий больший элемент,
чтобы выполнить поиск по подстановочным знакам*,? и~.
♦ режим_ поиска
Этот необязательный аргумент указывает тип и порядок поиска. Если вы его
опустите или установите в значение
1,
функция будет выполнять поиск, начиная
с первого элемента, если установите его в значение
-1,
функция будет выпол
нять поиск, начиная с последнего элемента, а если в значение
2,
то функция
будет выполнять двоичный поиск, который предполагает, что просматриваемый_
массив отсортирован по возрастанию. Установка аргумента режим_поиска в значе
ние
Так,
предполагает, что просматриваемый_ массив отсортирован по убыванию.
-2
если
В2:В5
-
в диапазоне А2:А5
приведены
наименования
блюд,
а
в диапазоне
соответствующие количества продаж, то найти индекс элемента, к приме
ру, Кофе, можно, введя формулу =ПОИСЮIОЗХ("Кофе";А2:А5), а индекс элемента, количе
ство продаж которого равно
=ПОИСЮIОЗХ(100;В2:В5;1) (рис.
100
7.8).
(или следующей
по величине сумме), введя
Массивы, логика и функции поиска
А
--------------
- -Количество
-в - с
1 Позиция
2
Сок
53
З
Кофе
65
4
Салат
356
5
Суп
143
D
Е
=ПОИСКПОЗХ("Кофе"; А2:А5)
181
н
G
1)
=ПОИСКПОЗХ(lОО; В2:В5;
2
4
6
7.8.
Рис.
Использование функции поискпозх
Если вы работаете в более старой версии
Excel,
то можете применить вместо функ
ции поискпозх функцию поискпоз. Обычно ее используют в формуле =ПОИСКПОЗ (искомое_
значение; просмачриваемый_ массив; тип_ сопоставления),
где
искомое_ значение
значение,
-
которое вам надо найти в массиве проема трива емый_массив, а тип_ сопоставления указы
вает тип сопоставления: установите его в значение О, чтобы найти первое точное
сопоставление, в значение
-1,
если просмачриваемый_ массив отсортирован по убыва
нию, а вам надо найти наименьшее значение, которое больше или равно иско
мое_ значение, и опустите тип_ сопоставления или установите его в значение
1,
если про
смачриваемый_ массив отсортирован по возрастанию, а вам нужно найти наибольшее
значение,
лы
которое
меньше
=ПОИСI<ПОЗ ("Кофе" ;А2. :AS)
=ПОИСI<ПОЗ(1ОО;В2:В5;-1) -
или равно искомое_ значение.
возвращается
индекс
Так,
элемента
индекс элемента с количеством
при
Кофе,
100
вводе форму
а
при
вводе
(или следующим по
величине количеством), если величины отсортированы по убыванию.
Пояснение
В этом решении предлагается гибкий подход для поиска индекса соответствующе
го значения. Оно часто используется вместе с решением из ртд.
7.11 -
в качестве
альтернативы применению функций ПРосмотРх, впР или гпР.
7.11.
Используем индекс для возврата значения
Задача
У вас есть диапазон или массив, и вы хотите получить значение в заданной пози
ции.
Решение
Функция ИНДЕКС использует индекс строки и/или столбца для возврата значения из
диапазона или массива. Обычно ее применяют в формуле =ИНДЕКС (массив;номер_
счроки;номер_столбца), где массив
-
диапазон или массив, из которого вам надо вер
нуть значение, номер_счроки (необязательный аргумент)
номер_столбца (необязательный аргумент)
-
-
это индекс строки, а
это индекс столбца. Так, если в диапа
зоне А2:А5 приведены наименования блюд, а в диапазоне В2:В5
-
соответствую
щее их количество, то при вводе формулы =ИНДЕКС(А2:АS;З) возвращается значение
из третьей строки диапазона А2:А5, а при вводе =ИНДЕКС(А2:В5;3;2) -
третьей строки и второго столбца диапазона А2:В5 (рис.
7.9).
значение из
Глава
182
7
ПозициА
=ИНДЕКС(А2:АS;
Количество
Кофе
Суп
Салат
=ИНДЕКС(А2:В5;
3)
Суп
53
65
356
143
Сок
1
н
с
в
А
1
2
3
4
5
6
Рис.
7.9.
3; 2)
356
Использование функции ИНДЕ КС
Вы также можете передать в функцию ИНДЕ КС несколько диапазонов и предоставить
дополнительный аргумент , указывающий , из какого массива возвращать значения.
При таком подходе формула с этой функцией принимает вид : =ИНДЕКС ( (массив 1;
. .. ); номер_строки;
массив2;
номер_ столбца ; номер_массив а ),
это массивы , а номер_массива
-
где массивl,
ма ссив2 И
т. д.
-
это номер массива, из которого нужно вернуть зна
чения . Так, при вводе формулы =индЕКС( (A2 :AS;A8 :A12) ; З ; ;2) возвращается значение
из третьей строки диапазона А8 : А12- второй массив в (А2:А5 , А8:А12).
Функция индЕКС часто используется вместе с поисклозх или поискпоз (см . разд.
7. 10)
для поиска и возврата значения. Поэтому если в диапазоне А2 : А5 приведены на
именования бл юд, а в диапазоне В2 : В5
-
соответствующее их количество, то при
вводе формулы =индЕКС(А2 : АS;поискпозх(lОО;В2:В5;1)) возвращается значение с коли
чеством
(ил и следующим по величине количеством) (рис .
100
А
1 [ позиция
2
53
Сок
3 Кофе
65
! Суп
356
4
:
, Салат
Рис.
7.10.
Н
С
8
Количество
7.1О) .
=ИНДЕКС(А2:АS ; ПОИСКПО3Х(100, В2:В5,
1))
Салат
143
Использование функции ИНДЕКС вместе с функцией ПОИСКПОЗХ
Испол ьзование функции индЕКС вместе с функцией поискпозх позволяет искать зна
чения как в строках, так и в стол бцах . Так, если в д иапазоне А2 : А5 приведены на
именования блюд, в д иапаз оне В\:O1
-
названия месяцев , а в диапазоне В2 : O5-
количество каждого наименования за месяц, вы сможете найти количество Кофе за
март, введя формулу =индЕКС (Al : DS;ПОИСКПОЗХ("Кофе" ;Al :AS) ; ПОИСКПОЗХ("март" ; Al :D1)).
В этом при м ер е фрагмент поискпозх( " Кофе "; А1 : А5)
ищет индекс строки для Кофе,
фрагмент поискпозх ( " Март "; Al: D1) ищет индекс строки для Март, а функция ИНДЕКС воз
вращает з начени е с у казанным индексом строки и столбца (рис .
7. 11 ).
Испол ьзо вать функцию индЕКС можно и как часть ссылки на динамический диапа
зон
-
чтобы определ ить первую и/ или последнюю ячейку диапазона . Например ,
формул а =А 1 : ИНдЕКС(А : А;5)
СЧЁТЗ ( А : А ))
воз вращает диапазон А\ : А5 , а формул а =Аl : ИНДЕКСIА:А;
подс читывает количество ячеек, содержащих з начения в столбце А ,
и применяет ре зультат для определения последней ячейки диапаз она .
Массивы, логика и функции поиска
Пози
2
Чай
ия
D
с
в
А
1
Янва ь
Фев аль
123
543
756
762
3 Кофе
4 Суп
5 Салат
Е
Ма т
234
513
823
714
183
F
=ИН ЕКС
Al:D5;
G
ПОИСКПОЗХ "Ко е"; А1:А5
; ПОИСКПОЗХ
346
734
623
612
"Март";
A1 :D1))
734
6
Рис.
7.11.
Использование функции ИНДЕКС вместе с функцией поискпозх
и с индексами строки и столбца
Пояснение
Функция ИНДЕКС предлагает удобный способ возврата значения на основании индек
са строки и/или столбца. Она часто применяется вместе с функциями поискпозх
и поискпоз, что позволяет выполнять двусторонний поиск с использованием как
строк, так и столбцов. Вы также можете задействовать функцию ИНДЕКС для созда
ния динамических именованных диапазонов (см.разд.
7.12. Создаем
2. 7).
косвенные ссылки на ячейки
и диапазоны
Задача
Вы хотите использовать текстовое значение для динамического извлечения ссылки
на ячейку или диапазон.
Решение
Функция двссыn возвращает ссылку на ячейку или диапазон из текстового значения,
создавая ее динамически. Так, если ячейка В2 содержит текст Al, а ячейка А 1 число з, то при вводе формулы =ДВССЫЛ(В2) текстовое значение ячейки В2 преобра
зуется в ссылку на ячейку А 1 и возвращается значение ячейки А 1
(рис.
-
число
3
7 .12).
1
2
rз
1
А
В
С
D
1
~ A l ~~j---.......~ - ~ - - l=ДВССЫЛ( В2)
Е
3
4
Рис.
7.12.
Использование функции двссьm для создания ссылки на ячейку А 1 и возврата числа
3
Обычно функцию двссьm используют в формуле =двссьm(ссыпка_на_текст;аl), где
ссыпка_на_текст
-
это текст, который вам надо преобразовать в ссылку на ячейку, а
al (необязательный аргумент) указывает, следует ли использовать ссылки стиля А 1
(по умолчанию). У становите этот аргумент в значение ложь, чтобы вернуть ссылки
стиля
RICI
(см.разд.
2.3).
Глава
184
7
1
Функция двссыл может интерпретировать ссылки стиля R1С 1, даже если они отключены. Так, если ячейка ВЗ содержит текст R2C l, а ячейка А2 - число 4, то при
[
• • •••
ся в ссылку на ячейку А2 (вторая строка в первом столбце) и возвращается
[~ · • • .
вводе формулы =двссьm (ВЗ; ЛОЖЬ) текстовое значение R2Cl ячейки ВЗ преобразует-
4.
Функцию двссьm можно использовать и для создания ссылок на ячейки путем объ
единения текстовых строк . Так, если ячейка В2 содержит число
число
4,
1,
а ячейка А 1 -
то при вводе формулы =ДВССЬDl("А"&В2) буква А соединяется с числом
1
из
ячейки В2, преобразуясь в ссылку на ячейку А 1, и возвращается значение ячей
ки А 1 -
число
4
(рис .
7.13).
В
А
~
з
!4 ~ 1
С
D
~l=ДВССЫЛ("А"&В2)1 !
Е
•---•
4
Рис.
7.13.
Использование функции двссьm для создания путем объединения текстовых строк
ссылки , возвращающей число
4
Также функция двссьm работает с именованными ячейками , диапазонами и табли
цами. Например, есл и ячейка С2 содержит текст Таблица Продаж и вы работаете с вер
сией
Excel,
поддерживающей динамические массивы (см. разд.
3.4),
то при вводе
формулы =ДВССЬDl(С2) возвращается динамический массив данных из таблицы табли
ца Продаж. Аналогично если ячейка СЗ содержит текст ТаблицаПродаж [ Количество] , то
при вводе формулы =СУЖ(ДВССЬDl(СЗ)) возвращается сумма столбца количест во табли
цы Т аблицыПродаж.
Функция двссьm не обновляет автоматически свои ссылки на ячейки или диапазо-
ны , когда вы добавляете или удаляете строку или столбец . Так, если вы введете
формулу =СУЖ(А20 : А24) и вставите новую строку над ячейкой А20, Excel автома
.
·-- - ••:
тически
изменит формулу на =СУММ (А20 :А25) .
Однако при
вводе формулы
=СУЖ(двссьm ("А20 : А24")) ссылка на ячейку сохранится как А20 : А24 .
Пояснение
Функция двссьm позволяет выполнять в
Excel
задачи , которые, на первый взгляд,
могут показаться невыполнимыми . Обратите внимание, что в дополнение к полу
чению ссылок на ячейки и диапазоны на текущем рабочем листе вы можете также
создавать ссылки на другие рабочие листы и книги.
Дополнение
В разд.
циями .
7. 14
представлен пример использования функции двссьm с другими функ
Массивы, логика и функции поиска
7.13.
1
185
Извлекаем адрес ячейки
Задача
Вы вводите в ячейку формулу и хотите получить номера строки и столбца этой
ячейки и их адреса.
Решение
Чтобы получить номер строки ячейки, используйте функцию СТРОКА. Обычно ее
применяют в формуле
=СТРОКА(ссылка),
где
ссылка -
необязательный аргумент
и по умолчанию ведет в ячейку, в которую вы ввели формулу, поэтому при вводе
в ячейку С4 формулы =СТЮКА() возвращается число
4.
Функция СТОЛБЕЦ работает аналогично функции СТРОКА, только она возвращает номер
столбца. Так, при вводе в ячейку
CSO
формулы =СТОЛБЕЦ() возвращается число
3.
Функция АДРЕС для возврата адреса ячейки использует номера и строки, и столбца.
Обычно ее применяют в формуле =АДРЕС(номер_с'Iроки;номер_столбца;абсолютный;аl;
имя_ листа), где номер_ С'Iроки и номер_ столбца (необязательный аргумент)
это номера строки и столбца, абсолютный
указывает, следует ли возвращать абсолютные ссыл
-
ки с префиксом $ (так по умолчанию, а чтобы возвращать относительные ссылки,
установите его в значение
4),
al (необязательный аргумент)
-
указывает, следует
ли возвращать ссылки стиля А 1 (так по умолчанию, а чтобы возвращать ссылки
стиля
RICI,
описанные в разд.
имя_листа (необязательный
образом,
при
=АДРЕС(З;б;4) -
вводе формулы
текст
установите этот аргумент в значение ложь),
2.3,
аргумент)
FЗ,
а
-
указывает имя
=АДРЕС(2;4)
при
вводе
рабочего листа. Таким
возвращается текст
в
ячейку,
$D$2,
например,
С2
при
вводе
формулы
=АДРЕС (СТЮКА() ;СТQЛБЕЦ()) возвращается текст $С$2.
Получить местоположение ячейки (и другую информацию) можно и с помощью
функции ЯЧЕЙКА. Так, при вводе формулы =ЯЧЕЙКА ("адрес" ;В1) возвращается $В$1,
при вводе =ЯЧЕЙКА ( "столбец" ;В1) возвращается 2, а при вводе =ЯЧЕЙКА ( "имя фай
ла" ;В1) возвращается полный путь к файлу, содержащий ссылку.
Пояснение
В этом разделе предлагается удобный способ возврата строки, столбца и адреса
ячейки, который можно использовать с другими формулами
пример вы найдете в разд.
7.14.
( соответствующий
7.14).
Используем смещенные ссылки
Задача
У вас есть ячейка (или диапазон ячеек), и вы хотите получить ссылки на ячейку
(или диапазон), отстоящую от нее на заданное количество строк и столбцов.
186
Глава
7
Решение
Функция смЕщ принимает ячейку (или диапазон) в качестве отправной точки и сме
щает ссылку на указанное количество строк и столбцов. Обычно ее используют
в формуле =СМЕЩ(ссыпка;строки;столбцы;высота;ширина), где ссыпка -
это ячейка или
диапазон, с которых вы собираетесь начать, строки и столбцы- это количество строк
и столбцов, на которые вам надо сместить значение аргумента ссыпка (используйте
положительные значения для смещения вниз или вправо и отрицательные значения
для смещения вверх или влево), а высота и ширина (необязательные аргументы)
высота и ширина диапазона, который вам нужно вернуть (по умолчанию
1).
это
Так,
при вводе в какую-либо ячейку формулы =СМЕЩ(Аl;З;2J за начало берется ячейка
Al,
производится перемещение на три строки вниз и два столбца вправо и в эту ячейку
возвращается значение ячейки С4. Аналогично при вводе =СМЕЩ(DЗ;-2;-ЗJ за начало
берется ячейка
D3,
производится перемещение на две строки вверх и три столбца
влево и возвращается значение ячейки
в
А
1
2
\цель
DI
7.14).
Е
1_
F
•
i+i
·-·
з
7.14.
(рис.
~ _:'СМЕЩ(DЗ;-2;-З)
4
Рис.
с
Al
Использование функции СМЕЩдля возврата значения в ячейку А1
Функцию СМЕЩ можно использовать и вместе с другими функциями
с функцией счЕтз (см. разд.
-
например,
4.4). Так, при вводе формулы =СМЕЩ(Аl;СЧЁТЗ(А:АJ-l;ОJ
возвращается последнее значение в столбце А (предполагается, что пустых ячеек
нет), а при вводе =СУММ(СМЕЩ(Аl;СЧЁТЗ(А:АJ-З;О;ЗJJ
возвращается сумма последних
трех значений столбца. Аналогично, если вам надо сместить текущую ячейку на
заданное количество строк и столбцов, можно применить функцию СМЕЩ совместно
с функциями из разд.
7.12
;
и
7.1 3.
Например, при вводе в ячейку Е4 формулы
=СМЕЩ (двссьm (АДРЕС (СТЮКА о стОЛБЕц о J J ; -з; -41
текущая
ячейка
(Е4)
используется
в качестве отправной точки, затем производится смещение на две строки вверх
и четыре столбца влево, и в ячейку Е4 возвращается значение из ячейки А 1.
Пояснение
Функция смЕщ предлагает гибкий способ ссылки на другие ячейки относительно за
данной начальной точки. Например, вы можете сослаться на ячейки, расположен
ные на фиксированном расстоянии от заданной ячейки, или использовать ее вместе
с другими функциями, как здесь и было показано.
ГЛАВА8
Статистический анализ
содержит множество статистических функций и возможностей, которые по
Excel
могут вам генерировать статистику и анализировать данные. Вы можете использо
вать эти функции для создания частотных распределений, обработки таких стати
стических показателей, как стандартное отклонение и коэффициент асимметрии,
работы с распределением вероятностей, и многого другого. Эта глава станет вам
путеводителем по этим областям, уделяя при этом особое внимание использованию
функций, сводных таблиц и диаграмм.
8.1.
Создаем таблицу частот
Задача
У вас есть список текстовых или числовых значений, и вы хотите подсчитать коли
чество вхождений каждого значения.
Решение
Предположим, в столбце содержится список значений, и вам надо найти частоту
встречаемости каждого уникального значения
-
узнать, сколько раз оно встреча
ется в столбце. Сделать это можно, создав таблицу частот, в которой будут приве
дены все значения и соответствующая им частота встречаемости.
Метод создания таблицы частот зависит от типа значений, частоты встречаемости
которых вам требуется найти.
Для дискретных значений, таких как текст или целые числа, создать таблицу частот
можно с помощью сводных таблиц (PivotTaЫe):
1.
Выделите данные и вставьте сводную таблицу, выполнив команду меню Встав
ка
2.
(lnsert)
1
Таблицы (ТаЫеs)
1
Сводная таблица (PivotTaЫes).
Добавьте столбец значений в разделы Строки
нели Поля сводной таблицы (PivotTaЫe
(Rows) и Значения (Values) па
Fields) и убедитесь, что в разделе
Операция
поля
(Summarize Values Ву (Операции)) диалогового окна Параметры
(Value Field Settings) выбран пункт Количество (Count)
11. 9). Полученные результаты показаны на рис. 8.1.
значений
(см.разд.
Для непрерывных данных, таких как измерения, часто требуется создавать таблицу
сгруппированных частот, которая группирует значения
по интервалам (бинам)
Глава В
188
D
с
в
А
Катеrо ия т Частота
1
2
3
Пицца
Бутерброд
2
Бутерброд
пицца
4
салат
салат
3
1
5
Пицца
Общий итог
б
б
Пицца
7
Бутерброд
8
Рис. 8.1. Таблица частот для дискретных данных, созданная с помощью сводной таблицы 1
и показывает частоту каждого интервала. Выполнить это можно с помощью свод
ной таблицы или функции Ехсе\ ЧАСТОТА .
Итак, для создания таблицы сгруппированных частот с помощью сводной таблицы :
1.
Выделите данные (включая все заголовки) и вставьте сводную таблицу, выпол
нив команду меню Вставка
(lnsert)
1
Таблицы (ТаЬ\еs)
1
Сводная таблица
(PivotTaЬ\es) .
2.
(Rows) и Значения
Fields) и убедитесь, что
Добавьте поле, содержащее значения, в разделы Строки
(Values)
на панели Поля сводной таблицы (PivotTaЬ\e
в разделе Операция
(Summarize Values Ву (Операции)) диалогового окна Пара
(Value Fie\d Settings) выбран пункт Количество (Count).
метры поля значений
3.
Выберите одно из значений строки сводной таблицы и примените решение из
разд.
11. 17 для
группировки значений по интервалам (рис.
с
в
Вес
3
18,55
4
17,75
5
24,78j
21,22
15,69
10,28
б
7
8
9
Рис.
8.2.
D
8.2).
Е
т Частота
10-15
15-20
20-25
1
4
2
Общий итог
7
Таблица сгруппированных частот. созданная с помощью сводной таблицы
Если вы работаете в Ехсе\
2021
или Ехсе\
365,
то можете создать таблицу сгруппи
рованных частот с помощью функции ЧАСТОТА:
1.
Определитесь, какой верхний предел вы будете использовать для каждого ин
тервала, и введите эти пределы в один столбец (например, в диапазон С2 : С6, как
показано на рис.
2.
8.3).
Выделите ячейку рядом с той, которая содержит первый верхний предел (на
пример, ячейку
1 Заголовки
D2 ).
сводной таблины были юменены.
Статистический анализ
А
D
- - - -------Часrота
С
в
Е
F
189
G
Верхние пределы бина
2
6
17,65
18,55
17,75
24,78
21,22
7
8
10,28,
з
4
5
10 =ЧАСТОТА(таблВес[ Вес]; С2:Сб)I
15
1
20
4
25
2
>25
о
15,69
9
Рис.
3.
8.3.
Таблица сгруппированных частот, созданная с помощью функции ЧАСТОТА
Введите формулу =ЧАСТОТА (массив_данных;массив _интервалов), где массив _данных это
диапазон,
содержащий
массив_интервалов
тервалов.
Так,
значения,
это диапазон,
-
чтобы
найти
в
частоты
котором
таблицу
которых
приведены
таблВес,
вам
надо
верхние
вы
найти,
пределы
вводите
а
ин
формулу
=ЧАСТОТА(таблВес[Вес] ;С2 :Сб).
4.
Введя формулу, нажмите клавишу
<Enter>,
чтобы вернуть динамический мас-
сив, содержащий частоту каждого интервала.
Если вы работаете с более старой версией
ЧАСТОТА, выделив на шаге
мулу
в
строку
(см. разд.
формул
2
Excel,
можете применить функцию
весь выходной диапазон (например,
и
нажав
комбинацию клавиш
02:06), введя фор
<Ctrl>+<Shift>+<Enter>
3.4).
Пояснение
Существуют различные способы создания таблиц частот в зависимости от типа
данных.
Использование сводных таблиц часто оказывается наиболее удобным методом, по
скольку задействовать его можно для анализа как дискретных, так и непрерывных
данных. Однако применение функции ЧАСТОТА представляет собой более гибкий
способ, потому что в случае наличия у вас неравных по размеру интервалов резуль
таты обновляются автоматически, если базовые данные меняются. Тем не менее
вам при этом необходимо выполнить подготовительные шаги, введя вручную верх
ний предел каждого интервала.
Создавать таблицы частот можно также с помощью надстройки Пакет анализа
(Analysis ToolPak),
как показано в разд.
8.2. Отображаем
9.4.
накопленные и процентные частоты
Задача
У вас есть таблица частот, и вы хотите включить в нее текущую сумму ее частот и
их процентные значения.
Глава
190
8
Решение
Накопленная частота
-
это текущая сумма частот в таблице частот (см.разд.
8.1),
и она определяет, сколько значений находятся ниже указанного значения. Про
центная частота
-
отображает процентное отношение каждой частоты к общей
сумме, а накопленный процент
-
это текущая сумма этих процентов.
Если вы сформировали таблицу частот путем вставки сводной таблицы, вам нужно
выполнить следующие действия для каждого статистического показателя, который
собираетесь создать:
1.
Добавьте дополнительное количество полей в раздел Значения
Поля сводной таблицы (PivotTaЬle
2.
Воспользуйтесь рекомендациями из разд.
жения значений: выберите параметр
(Values)
на панели
Fields).
11.10,
чтобы изменить способ отобра
от общей суммы
%
(% of Grand Total)
для
отображения процентного соотношения каждой частоты к общему количеству,
параметр С нарастающим итогом в поле
накопленной частоты и параметр
(% Running Total In) для
%
в
с
Вес
4
5
,___~
[ • Частота
~---i
б
20-25
Общий итог
8.4).
Е
D
10-15
15-20
для отображения
отображения накопленных процентов. Завершите выбор
параметров нажатием кнопки ОК (рис.
А
(Running Total In)
от суммы с нарастающим итогом в поле
G
F
н
Процент Совокупная частота Совокупный процент
1
14, 29%
1
14,29%
4
2
7
57,14%
28,57%
100,00%
5
71,43%
100,00%
7
21,22
15,69
10, 28
7
8
9
Рис.
8.4.
Сводная таблица, отображающая накопленную частоту, проценты и накопленные проценть1
Если вы создали таблицу частот с помощью функции ЧАСТОТА, можете восполь
зоваться
формулами,
позволяющими включить дополнительные статистические
показатели. Эти формулы показаны на рис.
8.5,
где в диапазоне
D2:D6
указаны час
тоты:
1.
Чтобы добавить в диапазон Е2:Е6 накопленные частоты, введите формулу =D2
в ячейку Е2, формулу =D2+E2 в ячейку ЕЗ, затем заполните диапазон Е4:Е6 фор
мулой из ячейки ЕЗ.
2.
Чтобы добавить к диапазону
в ячейку
F2,
F2:F6
проценты, введите формулу =D2/CYЖ($D$2: $D$6)
заполните диапазон FЗ:Fб формулой из
F2,
затем отформатируйте
ячейки как проценты.
3.
Чтобы добавить в диапазон
=Е2/СУММ($D$2:$D$б)
в ячейку
G2:G6 накопленные проценты,
G2, заполните диапазон GЗ:Gб
введите формулу
формулой из
G2,
затем отформатируйте ячейки как проценты (предполагается, что в диапазоне
Е2:Е6 приведены накопленные частоты каждой строки).
Статистический анализ
с
D
191
G
Верхние пределы
1
интервалов
З
СОвокvnный процент
Частота
Совокупна.я частота
Процент
=ЧАСТОТА(таблВес[Вес};С2:Сб)
=02
=D2/CYMM{$D$2:$D$6)
=Е2/СУММ{$D$2:$0$б)
15
=DЗ+Е2
=DЗ/CYMM{$D$2:$D$6)
=ЕЗ/СУММ{$0$2:$D$б)
2 10
4 20
=04+ЕЗ
=04/СУММ($0$2:$0$б)
=E4/CYMM{$D$2:$D$6}
5 25
=05+Е4
=D5/CYMM($D$2:$D$6)
=Е5/СУММ{$D$2:$0$б}
6 >25
=Dб+Е5
=Dб/CYMM($D$2:$D$6)
=Еб/СУММ{$0$2:$D$б)
Рис.
8.5.
Формулы для накопленной частоты, процентов и накопленных процентов
Пояснение
В этом разделе показано, как генерировать различные статистические показатели,
относящиеся к частотам и процентам. Они позволяют вам определить процентное
соотношение значений каждого интервала и узнать, сколько значений находится
ниже указанного значения. Например, таблица сгруппированных частот, приведен
ная на рис.
15-20 содержит 57, 14% значений. Накоп
ленная частота для этого интервала равна 5, т. е. в этом интервале и в предыдущих
находятся 5 значений. Накопленный процент равен 71,43%, т. е. эти интервалы со
держат 71,43% значений.
8.4,
показывает, что интервал
Дополнение
Генерировать эти статистические данные также можно с помощью надстройки
Пакет анализа
(Analysis ToolPak),
Если вы работаете в
с помощью функции
8.3.
Excel 365,
scAN
описанной в разд.
9.4.
то можете генерировать промежуточные суммы
(см.разд.
17.11).
Используем гистограмму или диаграмму Парето
Задача
Вы хотите отобразить частоты или накопленные проценты на диаграмме.
Решение
Предположим, у вас есть список значений, и вам надо использовать диаграмму,
чтобы отобразить частоту каждого уникального значения и (необязательно) накоп
ленный процент. Для этих целей
Excel
вид которых зависит от того, что вы
предлагает несколько различных диаграмм,
предполагаете с
их помощью показать,
и
от
типа отображаемых данных:
♦
Столбчатая (линейчатая) диаграмма
Этот тип диаграммы используют для отображения частот дискретных значений,
описываемых как текст (рис.
8.6). Вы
(lnsert) Диаграммы (Charts)
(lnsert Column/Bar Chart).
Вставка
1
найдете ее, выполнив команду меню
1
Гистограмма/Линейчатая диаграмма
Глава
192
8
Катеrория а Частота
Бутерброд
а
2.
Частота
з
Пицца
•
2
салат
о
1
♦
8.6.
а.лат
Пицца
Бутерброд
Рис.
-
4
Столбчатая диаграмма, отображающая частоты дискретных данных
Гистограмма
Она аналогична столбчатой диаграмме, только при этом отображает частоты не
8.7). Вы найдете ее, выполнив
(Charts) 1 Статистическая диа
прерывных значений, таких как измерения (рис.
команду меню Вставка
(lnsert)
1
Диаграммы
грамма (Statistic Chart) и выбрав в
(Historgam) одноименный пункт. Как
раскрывающемся
списке Гистограмма
только вы вставите гистограмму, вам
может потребоваться отформатировать горизонтальную ось или ряды данных,
чтобы правильно отобразить частоты (см . разд.
17,65
18,55
17,75
24,781
21,22
15,69
10,2.8
Рис.
♦
8.7.
12.13).
Частота
5
4
3
2
1
о
515
(15, 20)
-
(20, 25)
Гистограмма, отображающая частоты непрерывных данных
График
Эту диаграмму можно использовать для отображения накопленных процентов
8.8). Вы найдете ее, выполнив команду меню Вставка (lnsert) 1 Диаграм
(Charts) График/Диаграмма с областями (lnsert Line/Area Chart).
(рис.
мы
1
Верхние пределы
интервалов
Совокупный процент
Совокупный процент
0,00%
14,29%
71,43%
100,00%
100,00%
10
15
20
2.5
>2.5
100,00%
50,00%
0,00%
10
Рис.
8.8.
15
20
График, отображающий накопленные проценты
25
>25
Статистический анализ
♦
1
193
Диаграмма Парето
Это тип гистограммы, который отображает частоты в порядке убывания, а нако
пленные проценты
-
в виде дополнительной линии (рис.
выполнив команду меню Вставка
(lnsert)
1
Диаграммы
8.9). Вы найдете ее,
(Charts) 1 Статистиче
ская диаграмма
Гистограмма
(Statistic Chart) и выбрав в раскрывающемся
(Histogram) пункт Парето (Pareto).
Частота и совокупный процент
17,65
18,55
17,75
24,78
21,22
списке в разделе
5
100%
4
80%
з
60%
2
40%
15,69
10,28
о
(15,201
Рис.
8.9.
(20, 25]
:S 15
Диаграмма Парето, отображающая частоты и накопленные проценты
Пояснение
Решение этой задачи зависит от типа данных и информации, которую вам надо
отобразить.
Чтобы отобразить частоты, обычно используют столбчатую диаграмму для дис
кретных данных, таких как текстовые значения или целые числа, и гистограмму для
непрерывных данных,
таких
как
измерения.
Ключевое
различие
между
ними
заключается в отсутствии между столбцами гистограммы пробелов, что отражает
непрерывный характер данных.
Линейный график или диаграмму Парето обычно используют для отображения на
копленных процентов. Диаграмма Парето сочетает в себе как гистограмму, так и
график, отображая частоты и накопленные проценты. Задействовать ее можно для
определения, к примеру, того, какие интервалы или категории содержат большую
часть значений данных.
Дополнение
Чтобы создать диаграмму на основе сводной таблицы, обратитесь к разд.
8.4.
12.20.
Вычисляем среднее
Задача
У вас есть набор данных, и вы хотите узнать, какое значение является для него
типичным.
Глава В
194
Решение
Предположим, у вас есть список чисел, и вам надо найти значение типичного из
них. Для этого можно использовать три показателя усредненных значений, которые
широко применяются в статистическом анализе: среднее значение, медиана и мода.
Среднее значение
-
это сумма всех значений, поделенная на их количество. Чтобы
найти среднее значение списка чисел, используйте формулу =СРЗНАЧ (числа)
команду Среднее
(Average)
или
в итоговой строке таблицы или сводной таблицы. Так,
чтобы вычислить среднее значение чисел диапазона А2:А101, введите формулу
=СРЗНАЧ (А2
:AlOl).
Для данных, которые сильно искажены экстремальными значениями (см. разд.
и
8.11),
8.9
можно использовать вместо этого формулу =УРЕЗСРЕДНЕЕ (числа; процент). Она
возвращает среднее значение списка чисел, исключая процент наибольших и наи
меньших значений (заданных процентом). Так, если процент равен
УРЕЗСРЕДНЕЕ отбрасывает
10%
чисел
(5%
наибольших и
5%
0,1,
то функция
наименьших) и возвраща
ет среднее значение оставшихся.
Чтобы определить среднее значение для таблицы частот, в которой приведены час
тоты дискетных числовых значений, можно рассчитать ее среднее взвешенное. Для
вычисления
этого
статистического
=СУММПРОИЗВ (значения;частоты) /СУММ (частоты),
значений, а частоты -
показателя
где
значения
применяется
-
формула
это диапазон числовых
это диапазон соответствующих частот. Так, для нахождения
среднего числовых значений в таблице частот, где в диапазоне А2:А6 приведены
значения, а диапазоне В2:В6
-
их частоты, введите формулу =СУММПЮИЗВ(А2:Аб;
В2 :В6) /СУММ(В2 :В6).
Медиана
-
это значение в середине отсортированного списка чисел, поэтому по
ловина чисел находится над ним, а вторая половина
под ним. Для нахождения
-
медианы списка чисел применяется формула =МЕДИАНА(числа). Так, чтобы вычис
лить
медиану
=МЕДИАНА(А2
Мода
-
чисел,
содержащихся
в
диапазоне
А2:А101,
введите
формулу
:AlOl).
это значение с наивысшей частотой, т. е. то, которое встречается чаще все
го. Для нахождения моды списка чисел применяется формула =МОДА.одн (числа). Если
у нескольких чисел одинаково высокая частота, используйте вместо нее формулу
=МОДА.НСК(числа), которая возвращает массив (см. разд.
3.4),
включающий каждое
число. Так, чтобы найти все моды для чисел, приведенных в диапазоне А2:А101,
введите формулу =М::>ДА.НСК(А2:А101).
В отличие от среднего значения и медианы, характеризующих числовые значения,
можно также найти моду диапазона текстовых значений. Если вы работаете в
2021
или в
Excel 365,
Excel
сделйте это с помощью формулы =ИНДЕКС (значения;МОДА.
нск1поискпозх (значения;значения))). Так, чтобы найти наиболее часто встречающийся
текст, содержащийся, например, в диапазоне А2:А 1О 1, введите =ИНДЕКС (А2 :AlOl;
ЮДА.НСК(ПОИСКПОЗХ(А2:А101;А2:А101))).
Работая
в
Excel 2021
или
в
Excel 365,
=ФИЛЬТР (интервалы;частоты=МАКС (частоты)) -
можно
также
применить
формулу
чтобы вернуть динамический массив не-
Статистический анализ
скольких мод из таблицы частот, где интервалы -
1
195
это список интервалов, а часто
ты- это список частот. Так, для нахождения всех мод в таблице частот, где в диа
пазоне А2:А6 приведены интервалы, а в диапазоне В2:В6
-
их частоты, введите
формулу =ФИЛЬТР (А2 :Аб;В2 :Вб=МАКС (В2 :Вб)).
Пояснение
Excel
представляет различные методы вычисления усредненного значения несколь
ких чисел
-
в зависимости от типа данных и типа среднего, которое вам надо вер
нуть.
Наиболее распространенный тип среднего
-
это среднее значение. Оно часто ис
пользуется для описания набора данных вместе с другими статистическими показа
телями, такими как стандартное отклонение (см. разд.
8.8).
Среднее значение,
однако, более чувствительно к составу набора данных, чем другие типы средних,
и может увеличиваться или уменьшаться, когда в наборе данных присутствуют экс
тремальные значения (см.разд.
8. 9).
Дополнение
Генерировать средние значения и другую описательную статистику можно с по
мощью надстройки Пакет анализа
дациями, приведенными в разд.
8.5.
(Analysis ToolPak),
воспользовавшись рекомен
9.2.
Ранжируем числовые данные
Задача
У вас есть список чисел, и вы хотите найти ранг и процентный ранг каждого из них
при сортировке списка в порядке возрастания или убывания.
Решение
Предположим, у вас есть список чисел, и вам надо найти ранг каждого числа
-
порядок чисел при сортировке.
Чтобы ранжировать числа в списке, когда его значения отсортированы в порядке
убывания, используйте формулу =РАНГ. РВ (число;список). Она возвращает ранг
наибольшего числа в списке и ранг
2 для
l
для
второго по величине и т. д. Например, для
нахождения ранга значения из ячейки А2 в списке чисел, содержащихся в диапазо
не А2:А l О l, введите формулу =РАНГ. РВ (А2 ;А2 :AlOl). Чтобы ранжировать числа в спи
ске, когда его значения отсортированы в порядке возрастания, используйте форму
лу =РАНГ. РВ (число; список; 1)
.
Если список содержит связанные значения, то функция РАНГ. РВ возвращает их
наивысший ранг. Чтобы вернуть вместо этого средний ранг, используйте функцию
РАНГ .СР.
196
1
Глава В
Найти ранг числа в процентах от списка можно также с помощью формулы
=ПРОЦЕНТРАНГ .искл (список;число). Она возвращает процентный ранг указанного числа,
если список отсортирован в порядке возрастания. Так, чтобы найти процентный ранг
значения из ячейки А2 в списке чисел, содержащихся в диапазоне А2:А101, введи
те формулу =ПРОЦЕНТРАНГ.ИСЮI(А2:А101;А2).
Функция ПРОЦЕНТРАНГ. искл вычисляет процентный ранг числа с помощью формулы
k/(n + 1),
где
k-
это число, а п
-
это объем набора данных. Расчет по этой фор
муле означает, что в нем опускаются процентные ранги О и
100%.
Чтобы эти ранги
попали в расчет, используйте функцию ПРОЦЕНТРАНГ. вкл, которая вычисляет процентный ранг с помощью формулы
(k -
1)/(п
- 1).
Пояснение
Это решение пригодится для возврата порядкового или процентного ранга чисел
в наборе данных. Обратите внимание, что в Ехсе\ также есть встроенные функции
РАНГ и ПРОЦЕНТ РАНГ. Они возвращают те же значения, что и функции ПРОЦЕНТ РАНГ. искл
и ПРОЦЕНТ РАНГ. вкл, и предназначены для обратной совместимости с более старыми
версиями Ехсе\.
Дополнение
Сгенерировать
эти
статистические
Пакет анализа
ными в разд.
8.6.
(Analysis Too\Pak),
9. 3.
Находим
k-e
показатели
можно
с
помощью
надстройки
воспользовавшись рекомендациями, приведен
наибольшее или наименьшее значение
Задача
У вас есть список чисел, и вы хотите найти в нем
k-e
наибольшее или наименьшее
значение.
Решение
Чтобы
найти
k-e
=НАИБОЛЫIIИЙ(числа;k),
наибольшее
а
чтобы
значение
найти
k-e
списка
чисел,
наименьшее
используйте
значение
-
формулу
формулу
=НАИМЕНЬШИЙ(числа;k). Найти наибольшее число можно также с помощью формулы
=МАКС (числа), а наименьшее
-
с помощью формулы =МИН (числа).
Пояснение
Эти функции полезны, если вам надо найти числовое значение, связанное с задан
ным рангом. Использовать их можно и для расчета других статистических показа
телей,
таких
в разд.
8.8.
как диапазон,
воспользовавшись
рекомендациями,
приведенными
197
Статистический анализ
8.7.
Разделяем данные на квартили и процентили
Задача
У вас есть список чисел, и вы хотите разделить их на квартили (четверти) и про
центили (проценты).
Решение
Квартwт
-
это значения, которые разбивают данные на четверти. Так, если спи
сок отсортирован в порядке возрастания (рис.
8.1 О):
♦
первый (или низший) квартиль-это число в середине первой половины списка;
♦
второй квартиль
это медиана (число, которое разбивает список пополам);
-
♦ третий (или высший) квартиль
это среднее число второй половины списка.
з
2
1
-
Квартиль
1
Низший
2
Высший
квартиль
(медиана)
8.10.
7
КвартильЗ
квартиль
квартиль
Рис.
б
5
4
Квартиль
Средний
Квартили для семи числовых значений
Чтобы найти значение каждого квартиля, используйте формулу =КВАРтипь.искл (числа;
квартиль), где числа -
это список чисел, а квартиль -
это значения
3, обо
А2:А 1О 1, вве
1, 2
значающие квартиль. Так, чтобы найти первый квартиль диапазона
или
дите формулу =КВАРТИЛЬ.ИСЮI(А2:А101;1).
Для списка чисел также можно найти и процентwт
-
значения, которые разбива
ют данные на проценты. Используйте для этого формулу =ПРОЦЕНТИПЬ. искл (числа; k),
где числа относится к списку чисел, а k процентиль.
Так,
чтобы
найти
20-й
это число от О до
процентиль
для
1,
списка
которое указывает
чисел
диапазона
А2:А\01, введите формулу =ПРЩЕНТИЛЬ.ИСЮI(А2:А1Оl;О,2), потому что 0,2-это
20%.
расчете первого и третьего квартилей, а фрагмент искл функции ПРОЦЕНТИПЬ. искл
f i ~ Фрагмент .ИСКЛ функции КВАРТИПЬ.ИСКЛ означает, ЧТО она исключает медиану при
.
i.
••••••
'
означает, что она исключает 0-й и 100-й процентили. Чтобы их включить, исполь
зуйте вместо этого функции КВАРТИПЬ. вкл и ПРОЦЕНТИПЬ. вкл.
Пояснение
Квартили и процентили полезны тем, что они позволяют вам сосредоточиться на
различных частях набора данных. Использовать квартили можно, к примеру, чтобы
сосредоточиться на средней половине данных между первым и третьим квартиля
ми. Обратите внимание, что первый квартиль эквивалентен 25-му процентилю
оба относятся к числу, которое отделяет нижнюю четверть данных от остальных.
-
Глава В
198
8.8.
Рассчитываем диапазоны и дисперсии
Задача
У вас есть список чисел, и вы хотите измерить их разброс и изменчивость.
Решение
Дuапаз01-1 данных
данных
(рис.
8.11).
это разница между наибольшим и наименьшим числом набора
ее
Вычислить
можно
помощью
с
формулы
:МАJ<С(числа )
мин ( числа ) . Так, чтобы найти диапазон чисел, содержащихся в диапазоне ячеек
А 1:А 1О 1, введите формулу =МAii:C (Al :AlOl) -мин (Al :AlOl).
з
2
[
Рис.
8.11.
Диапазон данных
5
4
Диапазон
данных: 6
б
)
это разница между наибольшим и наименьшим числами
-
Межквартuльный диапазон (рис.
8.12) -
это разница между третьим и первым
квартилями набора данных. Межквартильный диапазон вычисляют с помощью
формулы :КВАРТИЛЬ. искл ( числа: з) -КВАРТИЛЬ. искл (числа :1 ) . Так, чтобы найти межквар
тильный диапазон чисел, содержащихся в диапазоне ячеек А 1:А 1О 1, введите фор
мулу =КВАРТИЛЬ. ИСЮI
(Al: AlOl; 3) -
КВАРТИЛЬ. ИСЮI
Рис.
5
4
3
11
(Al: AlOl; 1) .
[ Межквартильный )
_
диапазон: 4
.
8.12.
Межквартильный диапазон
-
это разница между третьим и первым квартилями
Дисперсия и стандартное отклонение показывают, насколько значения отклоня
ются от среднего,
чем выше эти статистические показатели, тем больше разброс
-
точек данных (рис.
8.13 ).
Среднее
Дисперсия/стандартное отклонение
Рис.
8.1 З.
Дисперсия и стандартное отклонение показывают,
насколько значения отклоняются от среднего
Статистический анализ
199
Математически дисперсия определяется как среднеквадратичное расстояние дан
ных от их среднего значения и рассчитывается с помощью формулы =ДИСП.В(числа),
а стандартное отклонение
-
как квадратный корень этого значения и рассчиты
вается с помощью формулы =СТАНдотклон. в (числа) . Так, чтобы найти дисперсию и
стандартное отклонение чисел, содержащихся в диапазоне ячеек А 1:А 1О 1, введите
=диcn.B(Al:AlOl) и =СТАНДОТЮIОН.В(А1:А101) соответственно.
на основе выборки данных подмножества данных, полученных из совокупности.
• ~ Функции дисп.в и стАНдотклон.в вычисляют дисперсию и стандартное отклонение
1 .... •· •.•. •
Если ваш набор данных - это вся совокупность, используйте вместо них функции
ДИСП. Г И СТАНДОТКЛОН. Г.
Пояснение
Измерить изменчивость в списке чисел можно, рассчитав диапазон, межквартиль
ный диапазон, дисперсию и стандартное отклонение. У дисперсии и стандартного
отклонения существует множество применений. Например, если генеральная сово
купность следует нормальному распределению (см. разд.
8.19),
то ее основные
характеристики могут быть определены с помощью среднего значения и стандарт
ного отклонения.
Дополнение
Генерировать диапазон, межквартильный диапазон, дисперсию, стандартное от
клонение и другие статистические показатели можно также с помощью надстройки
Пакет анализа
ными в разд.
8.9.
(Analysis ToolPak),
9.2.
воспользовавшись рекомендациями, приведен
Поиск выбросов
Задача
У вас есть список чисел, и вы хотите найти экстремальные значения, которые не
представляют остальные данные.
Решение
Выбросы набора данных -
это значения, которые значительно ниже или выше, чем
остальные его значения. Чтобы найти такие выбросы, можно применить два основ
ных метода: расчет межквартильного диапазона или среднего значения и стандарт
ного отклонения.
Первый метод квалифицирует как выбросы любые значения, которые более чем
в
1,5
раза превышают межквартильный диапазон первого и третьего квартилей.
Найти эти пороговые значения для списка чисел можно с помощью формул
=2,S*КВАРТИПЬ.ИСК.Л(числа;l)-1,S*КВАРТИПЬ.ИСК.Л(числа;З)
КВАРТИПЬ.ИСКЛ(числа;l).
И =2,S*КВАРТИПЬ.ИСКЛ(числа;З)-1,5*
200
1
Глава
8
Второй метод квалифицирует как выбросы значения, более чем в два раза превы
шающие стандартное отклонение от среднего значения. Иными словами, выбросы
для набора чисел
это значения, меньше рассчитанных по формуле =СРЗНАЧ ( числа)-
-
2•стАНдотклон.в (числа)
2 *СТАНдОТКЛОН. В
(числа)
или
больше
рассчитанных
по
формуле
=СРЗНАЧ(числа)+
.
Пояснение
Выбросы могут оказывать существенное влияние на статистические показатели
набора данных. Например, выбросы увеличивают диапазон и стандартное отклоне
ние и имеют тенденцию приближать к себе среднее значение. Однако другие стати
стические показатели, такие как медиана и межквартильный диапазон, менее чув
ствительны к этим воздействиям.
8.1 О.
Используем диаграмму «ящик с усами))
Задача
У вас есть список чисел, и вы хотите отобразить их диапазон, квартили, межквар
тильный диапазон, среднее значение и выбросы на диаграмме.
Решение
Предположим, вам надо создать диаграмму, позволяющую проще визуализировать
диапазон, квартили и прочие статистические показатели имеющегося у вас списка
чисел. Сделать это можно, вставив диаграмму «ящик с усами», или блочную диа
грамму (рис.
8.14), которую вы найдете, выполнив команду меню Вставка (Insert) 1
Диаграммы (Charts) 1 Статистическая диаграмма (Statistic Chart) и выбрав в рас
крывающемся списке пункт Ящик с усами (Вох and Whisker).
Диаграмма «ящик с усами» имеет следующие компоненты:
♦
«ящик» (прямоугольник)
часть
«ящика»
-
отображающий межквартильный диапазон. Нижняя
соответствует
первому
квартилю,
верхняя
часть
-
квартилю, а линия по центру отображает второй квартиль или медиану;
Диаграмма «ящик с усами»
100000
90000
80000
70000
60000
50000
40000
30000
20000
10000
о
Рис.
8.14.
Диаграмма «ящик с усами»
третьему
Статистический анализ
♦
«усы» (линии)
1 201
отображающие диапазон, исключая все выбросы. Нижний
-
«ус» выходит за пределы нижней границы «ящика» и соответствует наимень
шему значению, не являющемуся выбросом, а верхний «ус» выходит за пределы
верхней границы ящика и соответствует наибольшему значению, не являюще
муся выбросом;
♦ дополнительные (опциональные) маркеры, показывающие среднее значение. Их
можно отобразить, отформатировав ряды данных диаграммы;
♦ дополнительные (опциональные) маркеры, показывающие выбросы, которые
можно отобразить, отформатировав ряды данных диаграммы.
Диапазон, отображаемый в диаграмме «ящик с усами», исключает выбросы. Сама
•
диаграмма также исключает эти выбросы, независимо от того, отображаются ли
они на ней, поэтому показанный на диаграмме диапазон может иногда отличаться
•
от фактического диапазона.
Пояснение
В этом разделе предлагается удобный способ визуализации диапазона и межквар
тильного диапазона, а также любых выбросов.
По умолчанию, диаграмма «ящик с усами» определяет первый и третий квартили
с помощью функции квАРтипь.искп, которая исключает медиану из своих расчетов.
Вы можете изменить способ расчета квартиля с тем, чтобы он включал медиану,
отформатировав ряды данных диаграммы.
Диаграмма классифицирует значения как выбросы, если они более чем в
1,5
раза
превышают межквартильный диапазон от первого или третьего квартиля. Более
подробно об этом методе рассказано в разд.
8.11.
8.9.
Рассчитываем асимметрию
Задача
У вас есть список чисел, и вы хотите узнать, насколько асимметрично они распре
делены.
Решение
Предположим, вам надо определить степень асимметрии набора данных относи
тельно среднего значения имеющегося у вас списка чисел. Сделать это можно, рас
считав асимметрию
(рис.
-
число,
значение
которого указывает степень асимметрии
8.15):
♦ если асимметрия близка в О, то данные симметричны относительно среднего
значения;
♦ если асимметрия меньше
-1,
то наблюдается высокая степень отрицательного
отклонения (влево), при этом существует длинный хвост низких значений в ле
вой части распределения;
202
1
Глава В
Низкая
Отрицательная
асимметрия
асимметрия
Рис.
♦
если асимметрия больше
1,
8.15.
Положительная
асимметрия
Типы асимметрии
то наблюдается высокая степень положительного
отклонения (вправо), при этом существует длинный хвост высоких значений
в правой части распределения.
Асимметрию рассчитывают с помощью функции =Скос (число). Так, чтобы опреде
лить асимметрию чисел из диапазона А2:А 1О 1, введите формулу =СКОС (А2 :AlOl) .
-. •• ••··
.~
Функция скос рассчитывает асимметрию на основе выборки данных - подмноже
ства данных, полученных из совокупности. Если ваш набор данных
-
это вся со
вокупность, используйте вместо нее функцию скос.г.
Пояснение
Асимметрия набора данных может существенно повлиять на некоторые другие ста
тистические показатели. Например, если существует высокая степень левой асим
метрии, то это приводит к смещению среднего значения влево, так что оно стано
вится ниже медианы. И наоборот, высокая степень правой асимметрии приводит
к смещению среднего значения вправо, так что оно становится выше медианы.
Дополнение
Сгенерировать асимметрию и другую описательную статистику можно с помощью
надстройки Пакет анализа
приведенными в разд.
8.12.
(Analysis ToolPak),
воспользовавшись рекомендациями,
9.2.
Рассчитываем вероятности
с помощью таблицы вероятностей
Задача
У вас есть список вероятностей, и вы хотите их использовать для поиска вероятно
сти получения диапазона результатов.
Решение
Предположим, вы загрузили шестигранный кубик с гранями, помеченными числа
ми от
1 до 6.
Когда вы бросаете кубик, вероятность выпадения
ятность получения другого результата равна О, 1.
6
равна
0,5,
а веро
Статистический анализ
203
Для работы с подобными дискетными вероятностями вам сначала нужно упорядо
чить вероятности в таблице вероятностей
таблице или диапазоне ячеек, описы
-
вающей каждый возможный результат и его вероятность. Чтобы создать таблицу
вероятностей, например, для загруженных результатов бросков кубика, вы можете
записать результаты в диапазоне А2:А 7 и соответствующую вероятность для каж
дого результата в диапазоне В2:В7 (рис.
Е
D
с
в
А
1
8.16).
Вероятность
Результат
2
1
з
2
4
3
5
б
4
5
7
б
0,1
0,1
0,1
0,1
0,1
0,5
8
Рис.
Создав
8.16.
Таблица вероятностей, отображающая вероятности для загруженного кубика
таблицу
вероятностей,
можно
использовать
вместе
ее
с
функцией
ВЕРоятность, чтобы вернуть вероятность одного результата или диапазона возмож
ных результатов.
вероятность
найти
Чтобы
одного
используйте
результата,
=ВЕРОЯТ НОСТЬ (результаты; вероятности;результат ) , где результаты
тов , вероятности
Так,
-
это список вероятностей, а результат
вероятности
нахождения
для
результата,
=ВЕРОЯТНОСТЬ(А2:А7;В2:В7;З), что возвращает
найти
Чтобы
вероятность
диапазона
-
-
формулу
это список результа
это желаемый результат.
равного
3,
введите
формулу
0,1.
результатов,
используйте
формулу
=ВЕРОЯТНОСТЬ (результаты;вероятности; нижний_ предел; верхний_ предел ), где результаты- ЭТО
список результатов, вероятности
ний_ предел
-
-
это список вероятностей, а нижний_ предел и верх
это нижний и верхний пределы диапазона результатов, вероятность
наступления которого вам надо найти . Так, для нахождения вероятности результата
от
до
5
щает 0,3.
3
включительно, введите формулу =ВЕРОЯТНОСТЬ(А2:А7;В2:В7;З;S), что возвра
Функцию ВЕРоятность также можно использовать и для нахождения вероятности не
получения результата. Для этого вычтите вероятность наступления такого резуль
тата из
1.
Например, чтобы найти вероятность неполучения результата, равного
введите формулу =1-ВЕРОЯТНОСТЬ(А2:А7;В2:В7;6) , что возвращает
6,
0,5.
Пояснение
Таблица вероятностей
-
это полезный способ упорядочивания вероятностей дис
кетных результатов, особенно если они числовые. При этом в дополнение к исполь
зованию функции ВЕРоят ность для возврата вероятностей вы можете использовать
также диаграмму для построения распределения вероятностей.
204
Глава В
1
8.13.
Рассчитываем математическое ожидание
и дисперсию
Задача
У вас есть таблица вероятностей, в которой приведены вероятности дискретных
числовых результатов, и вы хотите найти ожидаемое значение и величину диспер
сии.
Решение
Математическое ожидание, или ожидаемое значение
-
это результат, который
вы обычно можете ожидать. Он представляет собой среднее взвешенное воз
можных результатов, когда значение каждого результата взвешивается
роятности.
Рассчитать математическое ожидание можно с
по его ве
помощью формулы
=СУММПРОИЗВ (результаты; вероятности), где результаты~ это список результатов, вероят
ности- это список соответствующих вероятностей. Так, если в диапазоне А2:А7
вашей таблицы вероятностей приведены результаты, а в диапазоне В2:В7
вероятности,
вы
найдете
математическое
ожидание,
введя
-
их
формулу
=СУ},1,ШР()ИЗВ(А2 :А7 ;В2 :В7).
Дисперсия
числить
-
это разброс значений относительно математического ожидания. Вы
дисперсию
можно
с
помощью
формулы
=СУММПРОИЗВ (результатыл2;
вероятности)-СУММПРОИЗВ(результаты;вероятности)л2,
где результаты
-
это список результатов, а вероятности
-
это список соответствую
щих вероятностей. Так, чтобы найти дисперсию, если в диапазоне А2:А 7 11риведе
ны
результаты,
а
в
диапазоне
В2:В7
-
их
=СУ},1,ШР()ИЗВ(А2 :А7"2;В2 :В7)-~ (А2 :А7 ;В2 :В7)
вероятности,
введите
формулу
"2.
Пояснение
Математическое ожидание и дисперсия распределения вероятностей похожи на
среднее значение и дисперсию набора данных. Математическое ожидание описы
вает типичное значение, а дисперсия
-
степень изменчивости относительно мате
матического ожидания.
8.14.
Используем биномиальное распределение
Задача
У вас есть п независимых испытаний, каждое из которых заканчивается успехом
или неудачей, а вероятность успеха остается постоянной. Вы хотите найти вероят
ность того, что х испытаний будут успешными.
Статистический анализ
1
205
Решение
Предположим, ваша любимая спортивная команда выигрывает
и вам хочется найти вероятность того, что команда выиграет
следующих своих
20
15
своих игр,
60%
или меньше игр из
игр.
Рассчитать эту вероятность можно с помощью биномиального распределения. Такое
распределение вероятностей применяется, когда есть фиксированное количество
независимых испытаний, завершающихся успехом или неудачей, а вероятность
успеха остается постоянной.
Например, в рассматриваемом случае существуют
20 испытаний (количество игр), а вероятность успеха
0,6 (потому что команда выигрывает 60% своих игр).
Excel
для каждого испытания равна
предлагает три функции, которые можно использовать для работы с биноми
альным распределением: БИНОМ.РАСП, БИНОМ.РАСП.ДИАП и БИНОМ.ОБР.
Формула
=БИНОМ.РАСП(х;n;р;l)
успешных испытаний, где
возвращает
n-
вероятность
получения
это количество испытаний, а р -
х
или
это вероятность
успеха. Так, для нахождения вероятности того, что команда выиграет
игр из
20,
менее
введите формулу =БИНСМ.РАСП(15;20;0,6;1), что возвращает
15 или
0,949.
менее
Чтобы найти вероятность того, что будет в точности х успешных испытаний, ис
пользуйте формулу =БИНОМ.РАСП(х;n;р;О), где последний аргумент равен О вместо
Так, для нахождения вероятности того, что команда выиграет именно
введите формулу =БИНСМ.РАСП(15;20;0,6;0), что возвращает
15
игр из
1.
20,
0,075.
Чтобы найти вероятность того, что успех будет достигнут между
s1
и
испыта
s2
ниями (включительно), используйте формулу =БИНОМ.РАСП.дИАП(n;р;s1;s2). Так, для
нахождения вероятности того, что команда выиграет от
формулу =БИНСМ.РАСП.ДИАП(2О;О,6;10;15), что
I О до 15
возвращает 0,822.
игр из
20,
введите
И наконец, формулу =Бином. РАСП.ОБР (п;р;альфа) используют, чтобы найти наимень
шее значение х, где вероятность х успешных испытаний как минимум больше или
равна альфа. Так, чтобы узнать, сколько игр нужно будет выиграть команде, чтобы
вероятность
этого
результата
была
как
=БИНСМ.РАСП.ОБР(2О;О,б;О,2), что возвращает
минимум
0,2,
введите
формулу
10.
Пояснение
Excel
предлагает несколько решений для использования биномиального распре
деления вероятностей. Обратите внимание, что функция Бином.РАСП.ОБР является об
ратной функции Бином. РАСП, если используется для поиска вероятности получения х
или менее успешных испытаний.
Дополнение
«Под капотом» биномиальное распределение получает вероятности путем вычис
ления комбинаций (см.разд.
4. 13).
Глава
206
8.15.
8
Используем
отрицательное биномиальное распределение
Задача
У вас есть независимые испытания, каждое из которых заканчивается успехом или
неудачей, а вероятность успеха остается постоянной. Вы хотите найти вероятность
наступления/неудач до достижения
s успешных
исходов.
Решение
Предположим, ваша любимая спортивная команда выигрывает
60%
своих игр,
и вам надо найти вероятность того, что команда проиграет три игры, прежде чем
одержит пятую победу.
Решить эту задачу можно с помощью отрицательного биномиального распределе
ния. Точно так же, как и в случае с биномиальным распределением (см.разд.
8.14),
отрицателыюе биномиальное распределение применяется, когда у вас есть незави
симые испытания, которые завершаются успехом или неудачей, а вероятность
успеха остается постоянной. Однако различие заключается в том, что отрицатель
ное биномиальное распределение моделирует количество неудач до достижения
указанного количества успешных исходов.
Для
расчета
отрицательных
биномиальных
вероятностей
можно
использовать
функцию ОТРБИНОМ. РАСП.
Чтобы найти вероятность наступления
f
неудач до достижения
s
успешных исхо
дов, примените ее в формуле =ОТРвином. РАСП (f;s;p;O), где р- это вероятность успе
ха. Так, для нахождения вероятности того, что команда проиграет три игры, прежде
чем одержит пятую победу, когда вероятность выигрыша равна
мулу =ОТРSИНСМ.РАСП(З;S;О, б;О), что возвращает
0,6,
введите фор
0,174.
Чтобы найти вероятность наступления не более/неудач до достижения
s успешных
исходов, примените ее в формуле =ОТРвином.РАСП(f;s;р;l). Так, для нахождения
вероятности того, что команда проиграет не более трех игр, прежде чем одержит
пятую победу, введите формулу =ОТРБИНСМ.РАСП(З;S;О,6;1), что возвращает
0,594.
Пояснение
Как видите, биномиальное и отрицательное биномиальные распределения при
меняются в схожих ситуациях. Однако в отрицательном биномиальном распреде
лении нет фиксированного количества испытаний, и оно моделирует количество
неудач до достижения определенного количества успешных исходов.
Статистический анализ
8.16.
1
207
Используем гипергеометрическое распределение
Задача
Вы извлекаете п элементов из генеральной совокупности, не возвращая их обратно,
и каждое извлечение приводит к успеху или неудаче. Вы хотите найти вероятность
получения х успехов.
Решение
Предположим, у вас есть колода из
52
карт, по
13
каждой масти, и вам надо найти
вероятность получения четырех карт масти черви в ситуации, когда вы будете вы
тягивать из колоды
IО
карт, не возвращая их обратно.
Эту вероятность можно вычислить с помощью гипергеометрического распределе
ния. Такое распределение вероятности применяется, когда вы извлекаете заданное
количество элементов из генеральной совокупности, не возвращая их назад, каждое
извлечение приводит к успеху или неудаче, а вероятность успеха меняется для ка
ждого извлекаемого вами элемента,
потому что генеральная совокупность умень
шается. Например, если вы вытянули карту масти черви из колоды карт, вероят
ность выбора еще одной карты этой масти при следующей попытке снижается, по
тому что в колоде осталось меньше червей.
Дr~я
расчета гипергеометрических вероятностей можно использовать функцию
ГИПЕРГЕОМ. РАСП.
Чтобы найти вероятность получения х успешных исходов, когда вы извлекаете
п элементов, а в генеральной совокупности размера
N
существует
s
успешных
исходов, примените ее в формуле =ГИПЕРГЕОМ. РАСП (x;n;s;N;Oi. Так, для нахождения
вероятности получения четырех карт масти черви, если вы вытянете
лоды, состоящей из
52
карт и содержащей
13
1О
карт из ко
карт масти черви, введите формулу
=ГИПЕРГЕСМ.РАСП (4;10;13;52;0), что возвращает О, 147.
Чтобы найти вероятность получения не более х успешных исходов, когда вы извле
каете п элементов, примените ее в формуле =ГИПЕРГЕОМ.РАСП(х;n;s;N;ll. Так, для на
хождения вероятности получения не более четырех карт масти черви, если вы вы
тянете
1О
карт, введите формулу =ГИПЕРГЕ(!оf. РАСП (4; 10; 13; 52; 1), что возвращает
0,943.
Пояснение
Гипергеометрическое распределение решает задачи, аналогичные биномиальному
распределению (см.разд.
8.14).
Основное различие заключается в том, что при ис
пользовании биномиального распределения вероятность успеха остается неизмен
ной, а при использовании гипергеометрического распределения она меняется.
Глава В
208
8.17.
Используем распределение Пуассона
Задача
У вас есть независимые события, которые происходят с постоянной средней часто
той, и вы хотите найти вероятность того, что
k таких
событий произойдет в течение
заданного интервала.
Решение
Предположим, ваша компания принимает
ятность получения
25
20
звонков в час, и вам надо найти веро
звонков в следующий час.
Д11я решения этой задачи можно использовать распределение Пуассона. Такое рас
пределение вероятностей применяется, когда вы знаете среднюю частоту возник
новения независимых событий и вам надо узнать вероятность получения опреде
ленного количества этих событий на указанном интервале.
Д11я вычисления вероятностей Пуассона используйте функцию ПУАссон. РАСП.
Чтобы найти вероятность того, что
k событий
произойдет на интервале, примените
ее в формуле =ПУАССОН.РАСП(k;средняя;О), где средняя -
это средняя частота, с кото
рой наступает событие на интервале того же размера. Так, для нахождения вероят
ности получения
на
20
25
звонков в течение следующего часа, если средняя частота рав
звонкам в час, введите формулу =ПУАССОН.РАСП(25;2О;О), что возвращает
Чтобы найти вероятность того, что не более
k
0,045.
событий произойдет на интервале,
примените ее в формуле =ПУАССОН.РАСП(k;средняя;l). Так, для нахождения вероятно
сти получения не более
та равна
20
25
звонков в течение следующего часа, если средняя часто
звонкам в час, введите формулу =ПУАССОН.РАСП(25;20;1), что возвращает
0,888.
Пояснение
Один из основных моментов, который стоит учесть в случае с распределением Пу
ассона, заключается в необходимости убедиться, что вы используете правильную
единицу измерения для средней частоты. Например, если средняя частота равна
20
звонкам в час, и вам надо найти вероятность получения не менее
следующие
2
30 звонков за
2 часа, введя
часа, вы должны вычислить среднюю частоту звонков за
формулу =ПУАССОН.РАСП(30;2*20;1).
8.18.
Используем экспоненциальное распределение
Задача
Вы наблюдаете независимые события, которые происходят с постоянной средней
частотой, и хотите найти вероятность того, что время между событиями равно или
меньше заданного интервала.
Статистический анализ
1
209
Решение
Предположим, ваша компания принимает
20
звонков в час, и вам надо найти веро
ятность того, что интервал между звонками составляет одну минуту или меньше.
Решить эту задачу можно с помощью экспоненциаr,ыюго распределения. Такое рас
пределение вероятностей применяется, когда вы знаете среднюю частоту возник
новения независимых событий и вам надо узнать вероятность того, что время меж
ду событиями равно или меньше заданного интервала.
Для
расчета
экспоненциальных
вероятностей
можно
использовать
функцию
ЭКСП. РАСП.
Чтобы найти вероятность того, что интервал между событиями равен х или меньше,
примените ее в формуле =ЭКСП.РАСП(х;средняя;l), где средняя -
это средняя частота,
с которой наступает событие на интервале того же размера. Так, для нахождения
вероятности
меньше,
того,
если
что
средняя
интервал
частота
между
вано значение
20/60,
нахождения
1 минуту,
составляет
одну
минуту
равна
=ЭКСП.РАСП(1;20/60;1), что возвращает
для
звонками
20 звонкам в час, введите
0,283. Здесь для второго аргумента
или
формулу
использо
указывающее среднюю частоту звонков в минуту. Аналогично
вероятности
того,
что
интервал
между
звонками
введите формулу =1-эксп.РАСП(1;20/60;1), что возвращает
превышает
0,717.
Пояснение
Существует тесная взаимосвязь между распределением Пуассона и экспоненциаль
ным распределением, поскольку они оба имеют дело с независимыми событиями,
происходящими с постоянной средней частотой. Различие заключается в том, что
распределение Пуассона моделирует вероятность возникновения
k
событий на ин
тервале, в то время как экспоненциальное распределение моделирует время между
событиями (см.разд.
8. 17).
Как и в случае с распределением Пуассона, один из основных моментов, который
стоит учесть, заключается в необходимости убедиться, что вы используете одина
ковые единицы измерения для интервала и для средней частоты. Например, если вы
указываете интервал в минутах, вы должны передать значение средней частоты
в функцию эксп. РАСП тоже в минутах.
8.19.
Используем нормальное распределение
Задача
Вы хотите найти вероятности и процентили для нормально распределенных дан
ных.
Решение
Нормаr,ьное распределение
-
это непрерывное распределение вероятностей с ко
локолообразной кривой, симметричной относительно ее среднего значения (рис.
8.17).
Глава В
210
Большинство результатов наблюдений сгруппированы вокруг среднего значения,
и их значения постепенно снижаются по мере удаления от него. Многие феномены,
например рост, вес, ошибки измерений и IQ-баллы, подчиняются нормальному
распределению.
Среднее
I
Рис.
8.17.
Форма нормального распределения
Для работы с нормальным распределением используются две основные функции:
НОРМ. РАСП И НОРМ. ОБР.
Формула =НОРМ. РАСП (х;среднее;стандартное_ отк.лонение;l) вычисляет вероятность полу
чения значения х или меньше из нормального распределения при заданном среднем
и стандартном отклонении. Поэтому если, к примеру, вес мешков с мукой подчиня
ется нормальному распределению, и при этом среднее значение равно
стандартное отклонение
-
0,2
5
фунтам, а
фунта, то вы могли бы найти вероятность того, что
выбранный случайным образом мешок муки весит
формулу =НОРМ.РАСП(4,В;5;0,2;1), что возвращает
фунта или меньше, введя
4,8
0,159.
Функцию НОРМ. РАСП можно задействовать и для поиска вероятности получения диа
пазона значений. Так, чтобы рассчитать вероятность того, что выбранный случай
ным
образом
мешок
муки
весит
от
4,8
до
5,2
фунта,
введите
=НОРМ.РАСП(5,2;5;0,2;1)-НОРМ.РАСП(4,В;5;0,2;1), которая возвращает
0,683.
мула ищет вероятность того, что мешок муки весит не более
5,2
читает из нее вероятность того, что мешок весит не более
фунта.
Формула
НОРМ. РАСП
=НОРМ. ОБР (р;среднее; стандартное_ отклонение)
-
она
возвращает количество х, для
4,8
является
которого
формулу
Эта фор
фунта, а затем вы
обратной
вероятность
функции
получения х
или менее равна р. Так, для нахождения веса случайного мешка муки, вероятность
получения которого составляет не более
что возвращает
4,865.
0,25,
введите формулу =НОРМ.ОБР(О,25;5;0,2),
Обратите внимание, что эту формулу также можно использо
вать для поиска процентилей. Например, для нахождения
формулу =НОРМ.ОБР(О,1;5;0,2), что возвращает
1О-го
процентиля введите
4,744.
Функция НОРМ.ОБР также позволяет генерировать список случайных чисел, извле
ченных
из
нормального
распределения.
Введите для
=НОРМ.ОБР(СЛЧИС();среднее;стандартное_от.rслонение),
дартное отклонение распределения.
указав
этого
среднее
в
ячейку
значение
формулу
и
стан
Статистический анализ
В
Excel
1
211
также есть функции НОРМ.СТ.РАСП и НОРМ.СТ.ОБР. Это специальные случаи
функций НОРМ.РАСП и НОРМ.ОБР, где среднее равно О, а стандартное отклонение
равно
1 (см.
разд.
8.20).
Пояснение
Нормальное распределение
природы
подчиняются
-
этому
одно из важнейших в статистике. Многие явления
распределению,
и
в
некоторых
случаях
можно
ис
пользовать его для аппроксимации других распределений.
Одно из применений нормального распределения относится к выборкам: если вы
извлекаете из генеральной совокупности большие выборки, обычно больше или
равные
то средние значения таких выборок будут приблизительно следовать
30,
нормальному распределению. Этот принцип следует из теоремы о центральном
пределе и действует, даже если основная совокупность не подчиняется нормально
му распределению.
Дополнение
Генерировать случайные числа, извлеченные из нормального распределения, мож
но также с помощью надстройки Пакет анализа
шись рекомендациями, приведенными в разд.
8.20.
(Analysis ToolPak),
воспользовав
9.9.
Используем Z-значения
Задача
Вы хотите сравнить относительную позицию значений, извлеченных из различных
нормальных распределений.
Решение
Предположим, в вашей компании есть два отдела продаж, которые работают в раз
личных областях. Продажи на одного человека в отделе А подчиняются нормаль
ному распределению со средним значением
15
62
ООО Р и стандартным отклонением
ООО Р, а продажи на одного человека в отделе Б также подчиняются нормально
му распределению со средним значением
2100 Р.
105 ООО
Вам надо выяснить,
5100
Р и стандартным отклонением
показал ли продавец из отдела А,
заработавший
Р, лучшие результаты относительно других сотрдников своего отдела, чем
продавец из отдела Б, который заработал
11 800
Р.
Решить эту задачу можно, сравнив z-значения, или стандартные оценки каждого
продавца,
-
стандартизированную
версию
точки
данных,
которая
использует
стандартные отклонения для изменения ее удаленности от среднего значения. По
скольку z-значения стандартизированы по общей шкале, использовать их можно
для анализа относительных позиций значений из различных наборов данных. На
пример, если у продавца из отдела А z-значение выше, чем у продавца из отдела Б,
212
Глава
1
8
это означает, что продавец отдела А показал лучшие результаты относительно
остальных сотрудников своего отдела.
Преобразовать значение х в z-значение можно с помощью формулы =НОРМАЛИЗАЦИЯ (х;
среднее;стандартное_ отклонение), указав среднее и стандартное отклонения. Так, для
преобразования показателей продаж продавца из отдела А в z-значение, введите
формулу =НОРМАЛИЗАЦИЯ (105000; 62000; 15000), что возвращает
2,867.
Аналогично вы
преобразовываете показатели продаж продавца из отдела Б в z-значение, вводя
=НОРММИЗАЦИЯ(11ВОО;5100;21ОО), что возвращает
z-значение
выше,
это
означает что
он
3,19.
показал
Поскольку у продавца из отдела Б
лучшие
результаты
относительно
остальных сотрудников своего отдела, чем продавец из отдела А.
Пояснение
Стандартизация преобразует точки в обычном наборе данных таким образом, что
бы
они
соответствовали
нормальному
распределению
равным О, и стандартным отклонением, равным
1.
со
средним
значением,
Z-значение точки показывает,
на какое количество стандартных отклонений она удалена от среднего. Генеральная
совокупность подчиняется нормальному распределению, если:
♦
приблизительно
68% точек ее данных
находятся в пределах одного стандартного
отклонения от среднего;
♦
приблизительно
95%
точек ее данных находятся в пределах двух стандартных
отклонений от среднего;
♦
приблизительно
98%
точек ее данных находятся в пределах трех стандартных
отклонений от среднего.
Если вам известно z-значение точки данных, то вы можете использовать функцию
НОРМ. ст. РАСП для поиска вероятности выбора значения, не превышающего этого
z-значения (см. разд.
8.19).
Можно также задействовать функцию ноРм.ст .ОБР, чтобы
найти z-значение, связанное с заданной вероятностью.
8.21.
Вычисляем доверительный интервал
для среднего генеральной совокупности
Задача
Вы извлекли выборку из генеральной совокупности и хотите создать доверитель
ный интервал для среднего генеральной совокупности.
Решение
Предположим, вы собираетесь использовать извлеченную вами выборку из гене
ральной совокупности для оценки среднего значения этой совокупности. В таком
случае можно либо вычислить среднее вашей выборки, либо создать доверитель
ный интервал
-
диапазон значений, который, как вы уверены, содержит среднее
Статистический анализ
213
значение генеральной совокупности. Доверительный интервал для среднего гене
ральной совокупности
-
это среднее выборки
статистический показатель досто
±
верности: число, описывающее разброс вашей оценки с определенным уровнем
достоверности. Например, уровень достоверности
вероятность
95%,
95%
означает, что существует
что доверительный интервал включает среднее генеральной со
вокупности.
Если вы знаете стандартное отклонение генеральной совокупности, то вычислить
статистический
показатель
достоверности
можно
с
помощью
=ДОВЕРИТ.НОРМ(альфа;стакцартное_откл;размер_выборки), где стакцартное_откл
дартное отклонение генеральной совокупности, размер_ выборки размер выборки, а альфа равна
уровень достоверности
1 - уровень достоверности.
равен 95%, или 0,95, альфа равна 0,05.
формулы
-
ЭТО стан
это собственно
Таким образом, если
Предположим, к примеру, что у вас в диапазоне А2:А I О I есть выборочные данные,
извлеченные из генеральной совокупности со стандартным отклонением, равным
Чтобы вычислить доверительный интервал
купности,
вам
нужно
найти
ее
95%
нижний
20.
для среднего генеральной сово
предел,
введя
=СРЭНАЧ (А2 :AlOl) -
ДОВЕРИТ.НОРМ(О,05;20;100), и ее верхний предел, введя =СРЗНАЧ(А2:А101)+ДОВЕРИТ.НОРМ(О,
05;20;100).
Если вы не знаете стандартное отклонение генеральной совокупности, что обычно
и бывает, то можете вычислить статистический показатель достоверности с помощью
формулы
откл -
=ДОВЕРИТ .СТЬЮДЕНТ (альфа;стакцартное_откл;размер_выборки),
где
стакцартное_
это стандартное отклонение выборки. Например, для вычисления довери
тельного интервала
95%
для среднего генеральной совокупности из выборочных
данных диапазона А2:А I О 1, если вы не знаете стандартного отклонения генераль
ной совокупности, введите формулу =ДОВЕРИТ.СТl:,IЩЕНТ(О,ОS;СТАНДОТЮIОН.В(А2:А101);
1001 -
так вы рассчитаете статистический показатель достоверности, и тогда дове
рительный интервал
95%
вычисляется по формуле =СРЗНАЧ (А2:А101)
±
статистиче
ский показатель достоверности.
Пояснение
Функция, которая используется при расчете доверительного интервала для средне
го генеральной совокупности, зависит от того, знаете ли вы значение стандартного
отклонения
поэтому
-
генеральной совокупности.
Обычно вы
не
знаете этого значения,
чтобы отразить дополнительный уровень неопределенности
-
приме
няете функцию ДОВЕРИТ .стьюДЕнт, которая создает более широкий доверительный
интервал, чем функция ДОВЕРИТ. НОРМ.
«Под капотом» функция ДОВЕРИТ. НОРМ вычисляет статистический показатель досто
верности с помощью нормального распределения, а функция ДОВЕРИТ. стьюдЕнт с помощью t-распределения Стьюдента. Работать с этими распределениями можно
напрямую, применяя функции НОРМ. РАСП (см.разд.
8.19)
и СТЬЮДЕНТ. РАСП.
Глава
214
8
Дополнение
Вы также можете использовать надстройку Пакет анализа
(Analysis Too\Pak)
для
расчета доверительного интервала для среднего генеральной совокупности, вос
пользовавшись рекомендациями, приведенными в разд.
8.22.
9.2.
Используем критерий независимости
хи-квадрат (х 2 )
Задача
У вас есть частоты для двух категориальных переменных, и вы хотите узнать , свя
заны ли они.
Решение
Предположим, вам надо проверить, влияют ли благоприятные или неблагоприят
ные погодные условия на результат игр спортивной команды. Для решения этой
задачи вы собрали данные по
в столбце А и строке
1,
.
!Благ.
Наблюдения
2
Выигрыш
з
Ничья
играм и привели их в диапазоне В2:С4 с метками
а итоговые результаты
А
1
50
в
1:1
4 1 проигрыш
j=СУММ( В2:В4)
5 J Итого
в столбце
-
D
с
и строке
5 (рис. 8.18).
D
Е
]итого
Неблаг.
l
з
=CYMM(B2:C2}
=СУММ(ВЗ:СЗ}
7
14
■ =СУММ(В4:С4}
=СУММ(С2:С4}
l=CYMM(D2:D4}
Неблаг.
lитого
б
7
Ожидания
в
Выигрыш
9
Ничья
10
Проигрыш
IБлаг.
l
11 I Итого
12
13
=D2*В5/$D$5
=D2*C5/$D$5
=DЗ*В5/$D$5
=DЗ*C5/$D$5
=D4*B5/$D$5
=D4*C5/$D$5
l=CYMM(B8:B10}
!Хи-квадрат
l
=СУММ(ВВ:СВ)
=СУММ{В9:С9)
=CYMM(B10:Cl0}
=СУММ( СВ:СlО)
l=CYMM(DB:010}
1=ХИ2. ТЕСТ( В2:С4;В_В:С10)
14
Рис.
8.18.
Данные и формулы для критерия независимости хи-квадрат
Решить эту задачу можно с помощью критерия независимости хи-квадрат (х2 ):
1.
2.
Определитесь с уровнем достоверности для критерия
-
например,
0,05.
Создайте список значений, который вы ожидаете получить для каждого резуль
тата матча при каждом типе погодных условий. Чтобы это рассчитать, можно
использовать наблюдаемые результаты матчей . Например, для нахождения ко
личества игр, которое, как вы ожидаете, команда выиграет при хорошей погоде,
нужно умножить количество выигранных игр
в хорошую погоду
(26)
( 14)
на количество сыгранных
и разделить полученный результат на общее количество
Статистический анализ
игр
(50).
В диапазоне
B8:CI0
(см. рис.
8.18)
1
215
приведены формулы для каждого
ожидаемого результата.
3.
Чтобы
применить
критерий
независимости
хи-квадрат,
введите
формулу
=ХИ2.ТЕСТ(В2:С4;ВВ:С10) (напомню, что в диапазоне В2:С4 приведены наблюдае
мые результаты, а в диапазоне В8:С\О
ет
ожидаемые)
-
-
эта формула возвраща
0,059.
Если результат критерия хи-квадрат меньше уровня достоверности, который вы
выбрали на шаге
погодные
1,
условия
то с достаточным уровнем достоверности можно заключить, что
влияют
на
результаты
матча.
Если
результат
критерия
хи-квадрат больше уровня достоверности, как в нашем примере, тогда нет доста
точных доказательств для подобного вывода.
Пояснение
Это решение пригодится, если вы хотите найти вероятность связанности двух
переменных. Мы проверяем здесь нулевую гипотезу о том, что переменные незави
симы, в сравнении с альтернативной гипотезой, что это не так.
Помимо применения критерия независимости хи-квадрат, можно также работать
напрямую с левым и правым хвостами распределения хи-квадрат с помощью функ
ций хи2. РАСП и хи2. РАСП. пх. В
Excel
также включены функции, обратные этим функ
циям: ХИ2. ОБР И ХИ2. ОБР. ПХ.
Дополнение
Другие проверки гипотез можно также выполнить с помощью надстройки Пакет
анализа
воспользовавшись рекомендациями,
в разд.
(Analysis ToolPak),
9.13-9.17.
8.23.
Ищем линию наилучшего соответствия
приведенными
Задача
У вас есть пары значений переменных, и вы хотите найти тип линии, который луч
ше всего соответствует точкам данных.
Решение
Предположим, вам надо найти тип взаимосвязи (если он существует) между зна
чениями двух переменных (рис.
8.19),
если в одном столбце рабочего листа у вас
содержатся значения для первой переменной, а в другом
1.
-
для второй. Итак:
Выделите оба столбца и вставьте точечную диаграмму, которую вы найдете, вы
полнив команду меню Вставка
(lnsert)
1
Диаграммы
крывающемся списке Точечная или Пузырьковая
Точечная
(Scatter).
(Charts) и
(Scatter or
выбрав в рас
ВuЬЫе) пункт
216
Глава В
На вкладке Конструктор диаграмм
2.
элемент диаграммы
пункт Линии тренда
(Chart Design) нажмите кнопку Добавить
(Add Chart Element) и в раскрывшемся списке выберите
I Линейная (Trendline I Linear) - чтобы добавить линей
ную линию тренда.
3.
Выполните на линии тренда двойной щелчок, чтобы открыть панель Формат
линии тренда
(Format),
и установите флажок Поместить на диаграмму вели
чину достоверности аппроксимации (R2) (Display R-squared value on chart) это отобразит на диаграмме значение я2 (число между О и 1, которое показывает,
насколько точно линия тренда соответствует точкам данных).
4.
Изменяйте тип линии тренда на панели Формат линии тренда
(Format), пооче
(Exponential), Линейная (Linear),
(Logarithmic), Полиномиальная (Polynomial) и Степенная
редно выбирая пункты Экспоненциальная
Логарифмическая
(Power)
и оценивая, какая из линий лучше всего соответствует точкам данных.
Сделать это можно на глаз или выбрать ту, значение R2 которой ближе всего к 1.
D
Е
н
G
F
к
L
Формат линии тренда
ЕВ
Линейная пузырьковая ди а гра мма
[2]
lSZ]
5000
4500
V
х
11iр,1меrры JIМКММ ~ V
~ о
V
~
~трw JIМНММ 1°pettAii
ЬL О 21(сnо~цнА11ьнм
4000
IL О Динd<н.,.
IL О Лоrарифмич«UА
3500
3000
2500
Ы О Полиномиальная
2000
1500
1100 1200
•
1300
1400
1500
1600
1700
x-3ffitЧeнмe
llIOO
1900
2000
2100
ЬL О tтm~ная
IL о ~-ОЛЬ3Я~С-Нnвание линии Трендil
О Аатоматиче<км
Линейная (у- 1Начение)
о /Jpyrg_e
Прогно>
В~на
tiinВA на
0
~ П<рИОАОI
~ nермодое
ХС'Тi1Н08ИТ" мр«Nе:Н~
О показывать храен~ие на дкаrрамме
а ПОм«ТИТЬ Hil диаграмму 8еJ1ИЧИНУ
досто.о.~ности аnnроксимацмм
Рис.
8.19.
(R" 2)
Форматирование линии тренда на панели Формат линии тренда
Пояснение
В этом разделе предлагается удобный способ оценки того, какой тип линии лучше
всего соответствует точкам данных. Здесь мы использовали значение R2, которое
показывает, какая часть разброса объясняется взаимосвязью между двумя перемен-
Статистический анализ
ными. Дnя линейных линий тренда значение R2
реляции (см.разд. 9. 1О).
-
217
это квадрат коэффициента кор
Дополнение
8 Excel
также есть линия тренда Скользящее среднее
полнительной информации о ней обратитесь к разд.
8.24.
(Moving
9.5.
А verage)
для до
-
Получаем уравнение
линии наилучшего соответствия
Задача
У вас есть пары значений, и вы хотите найти уравнение линии, которая лучше всего
соответствует точкам данных.
Решение
Самый простой способ получить уравнение, описывающее линию, соответствую
щую ряду значений переменной,
- это воспользоваться точечной диаграммой. Дnя
8.23, а на шаге 3 дополнительно установите флажок
на диаграмме (Display Equation on chart).
этого следуйте шагам из разд.
Показывать уравнение
Уравнение, полученное с помощью диаграммы, является точным, только если для
•
его получения использовалась именно точечная диаграмма, поэтому не пытайтесь
получить его с помощью других видов диаграмм. Кроме того, по умолчанию оно
отображает очень мало значащих цифр, но изменить это можно, выбрав уравнение
линии тренда и используя панель Формат линии тренда (Foгrnat), чтобы увеличить количество знаков после запятой.
Альтернативный способ заключается в использовании формул для подсчета коэф
фициентов линии. Этот подход работает, если у вас есть две или более переменных.
Дnя линейного уравнения формула принимает вид у
=
ах
с помощью формулы =НАК.J1ОН(у_значения;х_значения) и Ь -
+
Ь, и можно найти а
с помощью формулы
=отРЕЗОК(у_значения;х_значения). Так, если в диапазоне А2:А20 перечислены у-зна
чения,
а диапазоне
82:820 - х-значения, то вы найдете а, введя
- введя формулу =отРЕЗОК(А2:А2О;В2:В20).
формулу
=НАЮIОН(А2:А20;В2:В20), и Ь
Если коэффициенты, которые вы вычисляете с помощью формул, отличаются от
отображаемых в уравнении точечной диаграммы, то, возможно, вы используете
разные столбцы для своих х- и у-значений. По умолчанию диаграмма берет х-зна
чения из первого столбца и у-значения из второго.
Если у вас есть две х переменные, то линейное уравнение принимает вид у
+
а 2х 2
+ h,
Найти а 1
=
а 1х 1
+
и вы можете рассчитать его коэффициенты с помощью функции ЛИНЕйн.
можно по формуле =ИНДЕКС(ЛИНЕЙН(у_значения;х_значения) ;1;1), а2 -
формуле =ИНДЕКС(ЛИНЕЙН(у_значения;х_значения) ;1;2) и Ь
-
по
по формуле =ИНДЕКС(ЛИНЕЙН
(у_значения;х_значения); 1; 3). Так, если в диапазоне А2:А20 приведены у-значения, а
218
Глава В
диапазоне
х-значения,
82:820 -
то
для
а1
нахождения
введите
формулу
=ИНДЕКС (ЛИНЕЙН (А2 :А20;В2 :В20) ;1 ;1).
Для экспоненциального уравнения формула принимает вид у = аеьх, и можно найти
а по формуле =ЕХР(ИНДЕКС(ЛИНЕЙН(LN(у_значения);х_значения);1;2))
и Ь по формуле
=ЕХР (ИНДЕКС (ЛИНЕЙН (LN (у_ значения) ; х_ значения); 1; 1)). Так, если в диапазоне А2:А20
приведены у-значения, а диапазоне
82:820 -
х-значения, то для нахождения а
введите формулу =ЕХР(ИНДЕКС(ЛИНЕЙН(LN(А2:А20) ;В2:В20) ;1;2)
>.
Для экспоненциального уравнения формула принимает вид у
= aln(x) +
Ь, и можно
найти а по формуле =ИНДЕКС(ЛИНЕЙН(у_значения;LN(х_значения)) ;1;1) и Ь по формуле
=V.НДЕКС(ЛИНЕЙН(у_значения;LN(х_значения)) ;1;2). Так, если в диапазоне А2:А20 приве
дены у-значения, а диапазоне
82:820 -
х-значения, то для нахождения а введите
формулу =ИНДЕКС(ЛИНЕЙН(А2:А20;LN(В2:В20)) ;1;1).
Для
полиномиального
у =
а 1 х2
уравнения
второго
порядка
формула
принимает
вид
+ а 2х + Ь, и можно найти а 1 по формуле =ИНДЕКС (ЛИНЕЙН (у_ значения;
х_ значения) л { 1; 2}); 1; 1),
х_значения)л{1;2});1;2)
а2
И
Ь
по
ПО
формуле
формуле
=ИНДЕКС (ЛИНЕЙН (у_ значения;
=ИНДЕКС(ЛИНЕЙН(у_значения;х_значения)
л:1;2}J;J;31. Так, если в диапазоне А2:А20 приведены у-значения, а в диапазоне
82:820 -
х-значения,
то
для
нахождения
а1
введите
формулу
=ИНДЕКС(ЛИНЕЙН(А2:А20;В2:В20)Л(1;2}) ;1;1).
Аналогичным образом для полиномиального уравнения третьего порядка фор
мула принимает вид у = а 1 х 3 + а2х2 + азХ + Ь, и можно найти а 1 по формуле
=ИНДЕКС (ЛИНЕЙН (у_ значения; х_ значения) л { 1; 2; 3}); 1; 1), а2 ПО формуле =ИНДЕКС (ЛИНЕЙН (у_
значения;х_ значения) л { 1; 2; 3}); 1; 2),
х значения) л { 1; 2; 3}) ; 1; 3)
И
Ь
аз
по
ПО
формуле
формуле
=ИНДЕКС (ЛИНЕЙН (у_значения;
=ИНДЕКС (ЛИНЕЙН (у_ значения; х_ значения)
л{1;2});1;4).
И наконец, для степенного уравнения формула принимает вид у
=
ах
h
,
и можно
найти а по формуле =ЕХР (ИНДЕКС (ЛИНЕЙН (LN (у_ значения) ;LN (х_ значения)); 1; 21)
И Ь по
формуле =ЕХР (ИНДЕКС (ЛИНЕЙН (LN (у_ значения) ;LN (х_ значения)); 1; 1)).
Пояснение
Самый простой способ найти уравнение линии наилучшего соответствия
-
это
отобразить его на точечной диаграмме. Однако, если это возможно, лучше вместо
этого использовать для расчета коэффициентов линии функцию линЕйН.
Дополнение
Альтернативный
(Regressio11)
подход
состоит
в
использовании
надстройки Пакет анализа
использует функцию линЕйн (см.разд.
инструмента
(Analysis ToolPak),
9.12).
Регрессия
который «под капотом»
Ес,111 вам надо определить будущие значения для линейных или экспоненциальных
данных, обратитесь к разд.
10.18.
А в разд.
ния сезонных и периодических данных.
10.19
вы найдете способы моделирова
ГЛАВА
9
Надстройка Пакет анализа
Как вы уже могли понять из главы
8,
Ехсе\ предлагает большое количество разно
образных функций, которые можно использовать для статистического анализа.
Однако их применение может иногда занимать много времени.
Альтернативным подходом является использование надстройки Пакет анализа
(Analysis Too\Pak),
инструменты
которая доступна в
анализа данных,
Windows
которые
и
macOS.
Эта надстройка содержит
выполняют статистические
и
технические
задачи, такие как генерирование статистических показателей, выполнение проверок
гипотез и даже проведение анализа Фурье.
В этой главе вы узнаете о процессе установки надстройки Пакет анализа
ToolPak)
(Analysis
и о работе с инструментами, которые она предоставляет.
9.1. Устанавливаем
пакет анализа
Задача
У вас есть некоторые данные, которые вы хотите проанализировать, и вы собирае
тесь установить набор инструментов, которые помогут вам это сделать.
Решение
Получить доступ к надстройке Пакет анализа
можно, нажав
в разделе Анализ
данных
Analysis).
вкладки Данные
(Analysis ToolPak)
(Data) кнопку Анализ
(Data
Однако прежде всего надо эту надстройку на компьютер установить.
Чтобы, работая в
1.
(Analyze)
Windows,
В разделе Параметры
установить в Ехсе\ Пакет анализа
(Options)
меню Файл
(File)
(Analysis Too\Pak):
выберите пункт Надстройки
(Add-ins).
2.
В поле Управление
(Manage),
расположенном в нижней части открывшегося
диалогового окна, выберите параметр Надстройки
жмите кнопку Перейти
3.
В открывшейся панели Надстройки
за
(Analysis ToolPak)
Excel
(Ехсе\
add-ins)
и на
(Go).
(Add-ins)
установите флажок Пакет анали
и нажмите кнопку ОК.
Для установки надстройки Пакет анализа
выполните команду меню Сервис
(Tools)
1
(Analysis ToolPak) в Excel для macOS
Excel (Excel add-ins), в от-
Надстройки
220
1
Глава
крывшейся
9
панели Надстройки
(Analysis ToolPak)
установите флажок
(Add-ins)
Пакет анализа
и нажмите кнопку ОК.
Пояснение
Надстройка Пакет анализа
функции,
которые
(Analysis ToolPak)
помогают
проводить
привносит в
статистический
Excel
и
дополнительные
технический анализ
с меньшими временнь1ми затратами. Надстройка включает инструменты для гене
рирования статистических показателей, случайных чисел и выборок, для проведе
ния проверок гипотез и многого другого. В следующих разделах главы вы найдете
полезные рекомендации по использованию каждого инструмента надстройки.
9.2.
Генерируем описательную статистику
Задача
У вас есть выборка данных, и вы хотите сгенерировать для них стандартные стати
стические показатели.
Решение
Предположим, вам надо получить стандартную описательную статистику для при
веденного в диапазоне А 1:А 16 набора оценок
этих оценок содержится в строке
1.
1. Для
15
студентов с учетом того, что метка
решения задачи:
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Описательная статистика (Descriptive Statistics) и нажмите
кнопку ОК, чтобы открыть диалоговое окно инструмента (рис. 9.1 ).
кнопку Анализ данных
2.
В поле Входной интервал
(lnput Range)
выберите диапазон А 1:А 16 для списка
оценок, включая метку в ячейке А 1.
3.
В
разделе
(Columns),
4.
Группирование
(Grouped
Ву)
выберите
вариант По
столбцам
поскольку оценки приведены в столбце.
Установите флажок Метки в первой строке
(Labe\s in first row),
т. к. первая
строка входного интервала содержит метку данных.
5.
В группе Параметры вывода
(Output options)
вам предоставляется возможность
определить, куда инструмент Описательная статистика
(Descriptive Statistics)
должен выводить свои результаты. Выберите здесь параметр Выходной интер
вал
(Output Range)
и укажите, к примеру, ячейку
CI,
поместив ссылку на нее
в соответствующее поле.
6.
7.
Установите флажок Итоrовая статистика
(Summary Statistics).
При необходимости установите флажок Уровень надежности
for Mean)
(Confidence Level
и введите в соответствующее поле желаемый уровень достоверности
генерируемых статистических показателей для среднего значения генеральной
Надстройка Пакет анализа
221
совокупности. Например, чтобы достоверность статистических показателей (до
верительный интервал) была сгенерирована на уровне
подробно об этом рассказано в разд.
8.
При
необходимости установите
К-й набольший
введите
95%,
95.
Более
8. 21.
флажки
К-й
наименьший
(Kth Largest)
и
если вам надо включить эти статистические
(Kth Smallest) -
показатели в вывод, и введите значения для К.
А
1
2
с
в
з
бЗ
4
18
5
28
б
38
7
35
Вкодныt данныt
~одной интtрsал:
Оп,1rна
@ по стол§.цам
Группирование:
ок
~
SAS1:SAS16
G
--
х
?
Описательна.я статистика
59
F
Е
- - - -D-
Оценки
О по qрокам
fn р авка
Б21 Метки в nepsoй строке
8
22
9
47
10
37
@ [~__х_с,~ой интермл::
/scs1
11
55
О Новый рабочий писr.
1
12
59
О Новая рабочая ]lнига
Пара•1етры sыsода
13
47
0
14
44
О lроsень надежности:
15
42
О К-ый ttаимrньший:
11
lб
47
О К-ый Н!Ибопьwий:
11
~
мтогова.я статисrика
[9s
%
17
18
19
Рис.
9.1. Диалоговое
окно инструмента Описательная статистика
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Описательная статистика
(Descriptive Statistics)
9.2).
сгенерирует описатель
ную статистику для ваших данных (рис.
А
1
2
в
D
с
J оценки
Е
оценни
59
3
63
Среднее
42, 73333
4
18
стандартная ошибка
3,464743
5
2.8
Медиана
44
б
38
Мода
47
7
35
стандартное отклонение
13,41889
8 1
9
22
Дисп ерсия выборки
180,0667
47
Эксцесс
10
37
Асимметричносrь
11
12
13
14
15
lб
-0,571
-0,30647
55
Интервал
59
Минимум
18
47
Ма к симум
63
44
сумма
42
Счет
45
641
15
47
Рис.
9.2.
Вывод инструмента Описательная статистика
Глава
222
9
Пояснение
Инструмент Описательная статистика
(Descriptive Statistics)
предлагает быстрый
способ генерирования стандартных статистических показателей для выбранного
набора данных. Эти показатели включают измерения центральных тенденций (та
ких как среднее значение, медиана и мода) и измерения изменчивости (таких как
выборочная дисперсия, стандартное отклонение и сдвиг). Впрочем, как уже было
отмечено ранее, вы можете сгенерировать большую часть этих статистических по
казателей с помощью решений, предлагаемых в главе
8.
В этом разделе показано использование инструмента Описательная статистика
(Descriptive Statistics)
для генерирования одного набора данных. Однако вы можете
сгенерировать статистические показатели и для нескольких наборов данных одно
временно (рис.
9.3),
приведя каждый из них в отдельном столбце и выбрав в диало
говом окне инструмента (см. рис.
9.1)
Входной интервал
(Input Range),
включаю
щий весь диапазон.
D
с
в
А
1
Е
F
G
О~енни Б
ОценниА
Оценки А Оценки Б
59
76
63
93
Среднее
42. 73333333
Среднее
4
18
28
Стандартная ошибка
3,464743056
Стандартная ошибка
5
28
62
Медиана
44
Медиана
6
38
57
Мода
47
Мода
7
35
78
Стандартное отклонение
8
22
77
Дисперсия выборки
180,Оббббб7 Дисперсия выборки
327,8380952
9
47
82
Э ксце сс
-0,570995336
Эксцесс
-0,527238872
-0,306468936
Асимметричность
-0,306905439
2
13,41889215
.
63,4ббббб67
4,675026526
62
82
Стандартное отклонение
18,10629988
10
37
82
Асимметричность
11
55
42
Интервал
45
Интер вал
б5
12
59
бб
Минимум
18
Минимум
28
13
47
53
Ма к симум
14
44
54
Сумма
15
42
61
Счет
16
47
41
63
641
15
Максимум
93
Сумма
952
Счет
15
17
Рис.
Обратите
Statistics)
9.3.
Вывод инструмента Описательная статистика для нескольких наборов данных
внимание,
что
инструмент
Описательная
статистика
(Descriptive
выводит результат в виде значений , а не формул, поэтому вам придется
перезапустить инструмент, если исходные данные изменятся.
9.3.
Генерируем порядковые номера
и процентные ранги
Задача
У вас есть набор чисел , и вы хотите найти ранг каждого из них при сортировке
в порядке убывания.
Надстройка Пакет анализа
223
Решение
Предположим, вам надо проанализировать относительное положение каждой из
приведенных в диапазоне А 1:А 16 оценок
этих оценок содержится в строке
1.
1.
15
студентов с учетом того, что метка
Для решения задачи:
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Ранг и персентиль (Rank and Percentile) и нажмите кнопку ОК,
чтобы открыть диалоговое окно инструмента (рис. 9.4).
кнопку Анализ данных
2.
В поле Входной интервал
оценок, включая метку в
3.
В
разделе
(Columns),
4.
выберите диапазон А 1:А 16 для списка
(lnput Range)
ячейке А 1.
Группирование
Ву)
(Grouped
выберите
вариант
По
столбцам
поскольку оценки приведены в столбце.
У становите флажок Метки в первой строке
(Labels
ш
first row),
т. к. первая
строка входного интервала содержит метку данных.
5.
В группе Параметры вывода
(Output options)
вам предоставляется возможность
определить, куда инструмент Ранг и персентиль
выводить
свои
(Output Range)
результаты.
Выберите
здесь
(Rank and Percentile)
параметр
Выходной
должен
интервал
и укажите, к примеру, ячейку С 1, поместив ссылку на нее в соот
ветствующее поле.
А
1
2
з
4
5
6
7
8
9
10
11
12
13
14
15
16
17
В
С
D
Е
F
т-------.
Оцении
811:одные данныt
~одной интераал:
28
Группироsание:
0
22
,МtТКИ
S
х
@
по стол§ца••
ок
Отмена
~правка
ПtрВОЙ араке
Параметры вывода
47
37
55
59
47
44
42
47
Рис.
SAS1 :SAS16
О по qрока"
38
35
Н
?
Ранг и ntрсtнтиль
59
63
18
G
@
6!,!ходной инт,рвал:
scs1I
О Новый рабочий аисr.
О Новая рабочая !НИ га
9.4.
Диалоговое окно инструмента Ранг и персентиль
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Ранг и персентиль
(Rank and Percentile)
выведет оценки в убывающем
порядке вместе с рангом каждой из них, процентным рангом и позицией в исход
ном наборе данных (рис.
9.5).
224
1
Глава
9
Оценки
5
6
7
8
9
10 ,
11
и
13
14
15
16
с
D
Е
F
Точка
OЦl'HKU
Ранz
Процl'Нm
в
А
1
2
3
4
2
1
11
10
8
59
63
18
28
38
35
63
59
59
55
47
47
47
и
15
13
14
5
9
6
4
7
3
22
47
37
55
59
47
44
42
47
44
42
38
37
35
28
22
18
G
1
2
2
100,00%
85,70%
85,70%
78,50%
4
5
57,10%
5
57,10%
5
57,10%
8
50,00%
9
42,80%
10
35,70%
11
28,50%
21,40%
и
13
14,20%
14
7,10%
0,00%
15
17
Рис.
9.5.
Вывод инструмента Ранг и персентиль
Пояснение
Инструмент Ранг и персентиль
и
ПРОЦЕНТРАНГ. вк.л для
значения
в разд.
9.4.
возврата
(Rank and Percentile)
порядкового
исходного диапазона.
Более
номера
и
использует функции РАНГ. РВ
процентного ранга каждого
подробно об этих функциях рассказано
8.5.
Генерируем частотное распределение
Задача
У вас есть набор числовых данных, и вы хотите определить, как распределены зна
чения, разделив их на интервалы и подсчитав, сколько значений находится в каж
дом интервале. Возможно, вам понадобится также показать промежуточную сумму
для каждого процента значений каждого интервала и отобразить результаты на
диаграмме.
Решение
Предположим, вам надо сгруппировать в интервалы данные приведенного в диапа
зоне А2:А 16 набора оценок
15
студентов и подсчитать, сколько значений попадает
в каждый интервал (их частоту), с учетом того, что в диапазоне С2:С 1 1 приведены
верхние пределы для каждого интервала, а первая строка диапазонов содержит со
ответствующие метки. Для решения задачи:
1.
Перейдите во вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Гистограмма (Histogram) и нажмите кнопку ОК, чтобы открыть
диалоговое окно инструмента (рис. 9.6).
кнопку Анализ данных
Надстройка Пакет анализа
А
1
2
3
4
5
в
Оценки
б3
18
28
38
35
б
11
12
13
14
10
20
30
Н
к
Г истограuuа
13J!одной интервал:
50
22
70
47
37
55
59
47
80
90
, SAS1 :SAS16
И!fТервал кар"анов:
бО
х
?
Входные данные
40
[ scs1 :scs11 __
00
ш
ок
[
от"ена
tправка
0метки
Пара"етры оыsода
@
В!,р<одной интерsал:
SES11
О Новый рабочий дист:
100
О Новая рабочая !НИrа
О .Парето (отсортированная rиcrorpa•••••I
О ]1нтегральный процент
44
lб
G
,--------------------~
О Выводrрафика
42
47
15
F
Верхние пределы интеР._~01!_ __ !
59
7
8
9
10
Е
-D---..----.--
с
225
17
18
Рис.
2.
9.6.
Диалоговое окно инструмента Гистограмма
В поле Входной интервал
(lnput Range)
выберите диапазон А 1:А 16 для списка
оценок, включая метку в ячейке А 1.
3.
В поле Интервал карманов
(Bin Range)
выберите диапазон С 1:С 11 для списка
верхних пределов интервалов, включая метку в ячейке С 1.
4.
Установите флажок Метки
(Labels),
т. к. первая строка входного интервала и
интервала карманов содержит метку данных.
5.
В группе Параметры вывода
(Output options) вам предоставляется возможность
определить, куда инструмент Гистограмма (Histogram) должен выводить свои
результаты. Выберите здесь параметр Выходной интервал (Output Range)
и укажите, к примеру, ячейку Е 1, поместив ссылку на нее в соответствующее
поле.
6.
При необходимости установите флажок Парето (отсортированная гистограм
ма)
(Pareto (sorted histogram)) -
если вам надо отобразить дополнительные
столбцы с интервалами, отсортированными по частоте.
7.
При необходимости установите флажок Интегральный процент
Percentage) -
(Cumulative
если вам надо вывести промежуточную сумму для процента зна
чений, находящихся в каждом интервале.
8.
При необходимости установите флажок Вывод графика
(Chart Output) -
если
вам надо вывести гистограмму или диаграмму Парето (в зависимости от других
выбранных параметров).
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Гистограмма
(Histogram)
выведет таблицу, отображающую верхние пре
делы интервалов и частоту каждого из них. В зависимости от выбранных вами
параметров, таблица может включать интегральный процент и сортировать резуль-
Глава
226
9
таты по частоте интервалов (рис.
(Chart Output),
9.7).
Если вы выбрали параметр Вывод графика
инструмент также сгенерирует дополнительную гистограмму или
диаграмму Парето.
G
н
Инте2ральный"
Верхние пределы интервалов
Е
Верхние пределы интервалов
Частота
10
20
30
40
50
0,00%
6,67%
20,00%
40,00%
73,33%
93,33%
100,00%
100,00%
100,00%
100,00%
100,00%
о
1
2
5
60
70
1
80
о
90
100
о
о
о
Еще
Рис.
9.7.
Частота
50
40
Интеzральныii '6
33,33%
53,33%
73,33%
86,67%
93,33%
100,00%
100,00%
100,00%
100,00%
100,00%
100,00%
5
з
60
30
20
2
70
1
10
о
80
о
90
100
о
о
Еще
о
Вывод инструмента Гистограмма
Пояснение
Это решение представляет удобный способ генерирования различных статистиче
ских показателей, касающихся частот. Первичный вывод показывает частоту каж
дого указанного вами интервала. Если вы не предоставите инструменту список
пределов интервалов, он выберет их за вас.
Параметр Интегральный процент
(Cumulative Percentage)
отображает итоговые
проценты для каждого интервала и его предшественников. Например, выходные
данные левой части вывода, приведенного на рис.
9.7,
показывают, что
20% значе
1О, 20 и 30.
гистограмма) (Pareto
ний оценок находятся в первых трех интервалах с верхними пределами
Если
вы
выберете
(sorted histogram)),
параметр Парето
(отсортированная
результаты также отобразят интегральные проценты, отсортиро
ванные по частоте интервала. Например, выходные данные, которые мы видим
в правой части вывода, приведенного на рис.
9.7,
показывают, что
значений находятся в интервалах с верхними пределами
Обратите внимание, что инструмент Гистограмма
50
и
53,33%
оценок
40.
(Histogram)
выводит результаты
в виде значений, а не формул, поэтому вам придется перезапустить инструмент,
если исходные данные изменятся.
Дополнение
В разд.
8.1-8.3
вы найдете и другие методы, которые можно использовать для гене
рирования частот.
•
,
Используя
. histogram)),
параметр
Парето
(отсортированная
гистограмма)
(Pareto (sorted
вы должны убедиться, что список верхних пределов интервалов со-
держит значения, а не формулы. Если в нем задействованы формулы, вы можете
• столкнуться с ошибками
Надстройка Пакет анализа
9.5.
227
Генерируем скользящее среднее
Задача
У вас есть набор данных с сезонной изменчивостью, и вы хотите проанализировать
общий тренд.
Решение
Предположим , имеющиеся у вас данные продаж показывают, что выручка имеет
тенденцию снижаться каждый год к третьему кварталу, и вам нужно проанализиро
вать общий тренд. Пусть в диапазоне А2:А20 приведены годы и кварталы, в диапа
82:820 - значения продаж, а первая строка диапазонов содержит метки. Для
зоне
выполнения анализа:
1.
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Скользящее среднее (Moving А verage) и нажмите кнопку ОК,
чтобы открыть диалоговое окно инструмента (рис. 9.8).
Перейдите на вкладку Данные
кнопку Анализ данных
2. 8
поле Входной интервал
(lnput Range)
выберите диапазон
значений продаж, включая метку в ячейке
3.
81 :820
для списка
81.
У становите флажок Метки в первой строке
(Labels
ш
first row),
т. к. первая
строка входного интервала содержит метку данных .
4. 8
поле Интервал
(lnterval)
введите
4-
поскольку в данных приведены прода
жи за каждый квартал, а сезонная закономерность повторяется каждые четыре
строки.
Год/квартал
78000
1 \2018 02
4 2018Q3
60000
45000
80000
Вкодные данные
В!!одной интервал:
2019Ql
75000
0
70000
]:1нтераал:
10 12020 Ql
11 202002
12 2020Q3
13 2020Q4
14 202101
15 2021 Q2
lб
2021 Q3
17 2021Q4
18 202201
19 202202
20 2022 QЗ
50000
90000
80000
52000
60000
115000
х
С кользящее среднее
7 201902
8 2019 Q3
9 2019Q4
б
Е
D
Продажи
2 201801
5 2018Q4
с
в
А
1
метки
8
ок
SBS1 :SBS20
Отмена
первой строке
,;правка
П,араметры вывода
~ходной интервал:
НоаыИ рl16очи'1 лист·
SCS2
~
1
Новая рабочая книга
Б2J Выводrрафико
Б21 1 стондартныецогреwностиl
105000
60000
80000
120000
110000
63000
80000
21
Рис .
9.8.
Диалоговое окно инструмента Скользящее среднее
Глава
228
5.
9
В поле Выходной интервал
options)
(Output Range) раздела Параметры вывода (Output
- чтобы значение скользящего среднего
встаьте ссылку на ячейку С2
для каждой строки выводилось рядом с исходными данными продаж.
6.
При необходимости установите флажок Вывод графика
(Chart Output) -
если
вам надо сгенерировать линейчатую диаграмму с линией тренда скользящего
среднего .
7.
При необходимости установите флажок Стандартные погрешности (Standard
Errors) - если вам надо сгенерировать стандартные погрешности со скользя
щим средним. Этот параметр показывает степень изменчивости между фактиче
скими значениями и скользящими средними.
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Скользящее среднее
выведет значение скользящих
(Moving Average)
средних для данных вместе с диаграммой и стандартными погрешностями, если вы
выбрали эти параметры (рис .
•
9.9).
D
"-78000
,м/Д
.../Д
3 2018Q2
60000
IН/Д
IIН/Д
201ВW
45000
,м/Д
,м/Д
2018Q4
6 2019Ql
'<РЗНАЧ(В2:~)
.../Д
"ц:РЗндЧ(ВЗ:86)
';_ср3НАЧ(84 :87)
~АЧ(ВS:88)
"=СРЗНАЧ(Вб:89)
":СРЗНАЧ(В7:810)
"::<:РЗНАЧ(ВВ:811)
~РЗНАЧ(В9:В12)
"с<:РЗНАЧ(В10:В13)
'::сРЗНАЧ(Вll:814)
~АЧ(В12:В15)
"=СРЗНАЧ(813: 816)
~Ч(В14 :817)
"=СРЗНАЧ(81S; 818)
~ЗНАЧ(В16:819)
,м/Д
1 Год/кuртм
2 201801
4
~
201.ЭQЭ
00000
1"000
70000
50000
9 201904
,0000
10 2020Ql
11 202002
12 202003
80000
52000
60000
13 202004
шооо
14 202101
105000
u 20n02
60000
16
00000
120000
7 201902
8
202.lQЗ
17 202104
1.1 201201
1, 202202
20 2<72203
21
1.10000
03000
80000
'::еРЗНАЧ(В17: В20)
Скользящее среднее
.../Д
~ОРЕНЬ(СУММКВРАЭН(В!
"=КОРЕНЬ(СУММКВРАЗН(Вt
~ОРЕНЬ(СУММКВРАЗН(В.
'=КОРfНЬ(СУММКВРАЗН(ВI
~ОРЕНЬ(СУММКВРАЗН(В'
~ОРЕНl:,(СУММКВРАЗН(В.
~ОРЕНЬ(СУММНВРАЗН(В
~ОР(НЬ(СУММКВРАЗН(В·
4<ОРЕНЬ(СУММК8РАЗН(В.
~ОРЕНЬ(О'ММКВРАЭН(В:
1
j ,_ : = ~
---L
-+-•~Nlii
о
~
1 2 S 4 5 6 7 8 9 10111113141S1617111,
т-.~•
"=tt:ОРЕНЬ(СУММКВРАЗН(В
~ОРЕНЬ(СУММК8РА3Н(8'
r::КОРЕНЬ(СУММКВРАЗН(В_
Рис. 9.9. Вывод инструмента Скользящее среднее 1
Пояснение
Скользящее среднее
-
это ряд средних, которые «движутся» вместе с данными .
Интервал задает, сколько точек данных он использует для этих средних. В нашем
в
А
Продажи
2 201801
3 201802
4 2018QЗ
78000
бОООО
IIH/Д
45000
IIН/Д
5
2018Q4
80000
б
2019 Ql
75000
19 202202
63000
2022QЗ
80000
20
Рис.
1
с
1 Год/к вартал
9.10.
IIН/Д
~РЗНАЧ(В2:85)
~СРЗНАЧ(ВЗ:Вб)
~РЗНАЧ(Вlб:819)
~РЗНАЧ(В17:820)
Формулы, сгенерированные инструментом Скользящее среднее
В первую строку были добавлены метки Сколыящее среднее и Стандартная погрешность.
Надстройка Пакет анализа
примере используется интервал, равный
229
что генерирует среднее четырех точек
4,
данных: текущую точку данных и три предыдущих (рис.
9.1 О).
Использование
скользящей средней за четыре квартала сглаживает сезонную изменчивость между
кварталами, потому
что каждое среднее содержит одну точку данных
из каждого
квартала.
9.6.
Используем экспоненциальное сглаживание
Задача
У вас есть временной ряд с неравномерными пиками и спадами, и вы хотите сгла
дить эти неровности, чтобы увидеть общий тренд.
Решение
Предположим, имеющиеся у вас данные продаж за
периодов содержат неравно
12
мерные пики и спады, и вам нужно проанализировать общий тренд. Пусть в диапа
зоне
A2:Al3
приведены периоды, в диапазоне В2:В23
-
продажи, а первая строка
диапазонов содержит метки. Для выполнения анализа:
1.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Ana\ysis). Затем выберите из списка инструментов
анализа пункт Экспоненциальное сглаживание (Exponential Smoothing) и на
жмите кнопку ОК, чтобы открыть диалоговое окно инструмента (рис. 9.11 ).
кнопку Анализ данных
А
1
2
в
rпериод
с
D
Е
F
1
110
140
з
2
il
з
250
4
500
В!!одной икт,рвал:
SBS1 :SBS13
~актор затухания :
350
0мпки
8
7
Параметры вывода
9
10
8
110
890
9
400
Новый рабочий 1tист·
10
11
12
1200
Новая рабочаА книга
2.
9.11.
SCS2
1:21 Вывод rрафика
900
Отмена
Ьnpaвii::a
~ходной интервал~
450
ок
t
0,7
200
б
Рис.
х
?
Входные данные
5
11
н
Экспоненциальное сглаживание
7
12
13
14
15
G
Продажи
t
1:2) 1 стандартные nогреш.носrи!
Диалоговое окно инструмента Экспоненциальное сглаживание
В поле Входной интервал
(lnput Range)
выберите диапазон В 1: В 13 для списка
значений продаж, включая метку в ячейке В 1.
3.
В поле Фактор затухания
мер,
0,7
(Damping Factor)
(см. далее разд. «Пояснение»).
введите число от О до
1-
напри
Глава
230
4.
9
Установите флажок Метки
(Labels),
т. к. первая строка входного интервала со
держит метку данных.
5.
В поле Выходной интервал
options)
(Output Range) раздела Параметры вывода (Output
- чтобы генерируемое для каждой стро
вставьте ссылку на ячейку С2
ки значение выводилось рядом с исходными данными продаж.
6.
При необходимости установите флажок Вывод rрафика
(Chart Output) -
если
вам надо сгенерировать диаграмму, отображающую линии для вывода фактиче
ских данных и экспоненциального сглаживания.
7.
При необходимости установите флажок Стандартные поrрешности
(Standard
если вам надо сгенерировать стандартные погрешности. Этот пара
Errors) -
метр показывает степень изменчивости между фактическими и прогнозируемы
ми значениями.
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Экспоненциальное сrлаживание
(Exponential Smoothing)
выведет зна
чения экспоненциального сглаживания для данных вместе с диаграммой и стан
дартными погрешностями, если вы выбрали эти параметры (рис.
А
б
5
6
7
8
9
10
11
12
7
8
9
10
11 ,
12
13
14
D
с
в
1 Период
2 i
1
3
2
4 !
5 1
4
Е
G
9 .12).
к
н
Продажи
110 IIH/Д
IIН/Д
140
110 IIН/Д
250
119 IIH/Д
500
158,3 IIH/Д
260,81'
211,9904793
200
242,567'
214, 1788552
350
274,7969'
209, 7606538
110
,
225, 35783
118,8805056
890
400 424,750481
400,1870737
1200 417,3253367'
395,6091584
592,9984342
450 652,1277357'
466,9217766
900 591,489415 r
Экспоненциальное
сrлаживание
~
2000
i
1000
s
.
~
-.-.Фактический
j o~d, ~
-11- Проrно:,
1 2 3 4 5 6 7 8 9 101112
Точка данных
-
J
Рис. 9.12. Вывод инструмента Экспоненциальное сглаживание 2
Пояснение
Экспоненциальное сглаживание предсказывает значения
на основе предыдущих
точек данных и их прогнозируемых значений.
Фактор затухания
-
это число между О и
1,
которое корректирует веса двух зна
чений. Например, при использовании фактора затухания, равного
точка данных умножается на
на
0,7,
0,3,
0,7,
предыдущая
ее ранее предсказанное значение умножается
затем возвращается сумма этих результатов (рис.
9.13).
Значения
0,7
и
0,8
являются допустимыми факторами затухания, потому что они корректируют про
гнозируемые значения на
2
20-30 %
с учетом погрешностей.
В первую строку были добавлены метки Фактор затуханни и Стандартная погрешность.
Надстройка Пакет анализа
с
в
А
Продажи
Фактор затухания О, 7
2 1
110
#Н/Д
з
2
140
=В2
4
з
250
=О,З"ВЗ-Ю,7*СЗ
5 4
500
=О, З"В4-Ю,7*С4
и
11
450
=О,З*В11-Ю, 7*Cll
13 12
900
=О,З*В12-Ю, 7*С12
1
Период
231
14
Рис. 9.13. Формулы, сгенерированные инструментом Экспоненциальное сrлаживание
9.7.
Генерируем случайную выборку
Задача
У вас есть набор данных, и вы хотите сгенерировать из него случайную выборку.
Решение
Предположим, вам надо сгенерировать случайную выборку из имеющегося у вас
набора данных о покупателях, приведенного в диапазоне А l :А201, где первый
столбец включает уникальный номер каждого покупателя, а первая строка содер
жит метки. Для решения задачи:
1.
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
пункт Выборка (Sampling) и нажмите кнопку ОК, чтобы открыть диа
окно инструмента (рис. 9 .14 ).
Перейдите на вкладку Данные
кнопку Анализ данных
анализа
логовое
в
А
1
Покупате. Пол
с
2
lЖ
Калуга
з
2Ж
Омск
Е
D
F
U4887,5
Нет
200,7
Нет
4
3Ж
Калуга
166915,8
Нет
5
4М
Омск
40985,41
Нет
б
5М
Новгород
12П30,7 Нет
Вкодныt данныt
В!s_одной интtр~11:
бЖ
Калуга
17892,42
Нет
Москва
251997,9
Нет
9
8М
Омск
47831,14
Нет
Период:
9М
Тула
143358,9
Нет
@епучjйный
Ж
Тула
29027,61
Нет
Омск
244327,1
Нет
10
12
llЖ
13
12
М
Омск
173001,4
Нет
14
lЗМ
Омск
90661,27
Нет
Число выборок:
!;правка
_:__J
~
Параt.ttтры вывода
@ ~ходной иннрвал;
~2
l
15
14
Тула
46259,78
Нет
lб
lSЖ
Новгород
135330, 3
Нет
О Новая рабочая ,!;Ниrа
17
16
М
Новгород
250659,7
Нет
18
17
М
Москва
197891,5
Нет
ок
Отмtна
О Qtриодичtский
О Новый рабочий !1ИСГ.
М
t
О ,Мrтки
7М
11
SAS2: SAS201
Мпод выборки
7
х
?
Выборка
8
10
к
н
G
Продажи ВИП
Город
-
--
Рис. 9.14. Диалоговое окно инструмента Выборка
tj
232
2.
Глава
9
В поле Входной интервал
выберите диапазон А 1:А201 для уни
(lnput Range)
кальных номеров покупателей, включая метку в ячейке А 1.
3.
Установите флажок Метки
(Labels),
т. к. первая строка входного интервала со
держит метку данных.
4.
В разделе Метод выборки
(Sampling Method)
выберите пункт Случайный
(Random).
5.
В поле Число выборок
(Number of Samples)
вам надо сгенерировать (например,
6.
введите объем выборки, которую
10).
В группе Параметры вывода
(Output options) вам предоставляется возможность
(Sampling) должен выводить результаты.
Выходной интервал (Output Range) и укажите, к при
определить, куда инструмент Выборка
Выберите здесь параметр
меру, ячейку
G2,
поместив ссылку на нее в соответствующее поле.
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Выборка
(Sampling)
8
А
1
! покупате. Пол
выведет случайную выборку (рис.
с
Город
о
Е
Продажи ВИП
F
9.15).
н
G
Выборка
124887,5
Нет
125
200,7
Нет
183
Калуга
166915,8
Нет
129
Омск
40985,4i Нет
З5
5М
Новгород
12П30,7 Нет
105
7
бЖ
Калуга
17892,42
Нет
127
8
7М
Москва
251997,9
Нет
160
9
8М
Омск
47831,14
Нет
171
10
11
9М
Тула
143358,9
Нет
95
Ж
Тула
29027,61
Нет
193
2
lЖ
Калуга
3
2Ж
Омск
4
3Ж
5
4М
б
10
12
llЖ
Омск
244327,1
Нет
1З
12
М
Омск
173001,4
Нет
14
1З м
Омск
90661,27
Нет
Рис. 9.15. Вывод инструмента Выборка 3
Пояснение
В этом разделе рассказывается, как сгенерировать простую случайную выборку из
диапазона значений, где каждое значение имеет равную вероятность быть выбран
ным.
!..С:'
[ Генерирование случайной выборки с помощью этого инструмента может возвра
, , , ] ~ щать
3
повторяющиеся значения, если участник выбирается более одного раза.
В нчейку G I была добавлена метка Выборка.
Надстройка Пакет анализа
9.8.
1
233
Генерируем периодическую выборку
Задача
У вас есть набор данных, и вы хотите сгенерировать из него выборку, выбирая
каждый п-й элемент.
Решение
Следуйте шагам, приведенным в разд. 9. 7, но на этот раз в разделе Метод выборки
(Sampling Method) выберите пункт Периодический (Periodic) и введите в поле
Период (Period) значение для п (например, 20). Этот параметр указывает инстру
менту Выборка (Sampling) возвращать каждый п-й элемент.
Пояснение
Если набор данных является периодическим, вы можете применить это решение,
чтобы вернуть значения конкретной части цикла. Например, для квартальных дан
ных об объемах продаж можно задать период, равный
4, -
чтобы выводить значе
ния за один и тот же квартал каждого года. Аналогично если у вас есть помесячные
данные, то период, равный
9.9.
12, будет возвращать значения
одного и того же месяца.
Извлекаем случайные числа из распределения
Задача
Вы хотите создать набор случайных чисел, которые следуют конкретному распре
делению
-
например, нормальному, биномиальному или распределению Пуассона.
Решение
Предположим, вам надо сгенерировать набор независимых случайных чисел, из
влеченных из указанного распределения,
1.
-
например, из нормального. Для этого:
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Генерация случайных чисел (Random Number Generation) и на
жмите кнопку ОК, чтобы открыть диалоговое окно инструмента (рис. 9.16).
кнопку Анализ данных
2.
В поле Число переменных
(Number ofVariaЬ\es)
введите число (например,
1)-
чтобы указать, сколько столбцов случайных чисел вам надо вернуть.
3.
В поле Число случайных чисел
(например,
100) -
(Number of Random Numbers)
введите число
чтобы указать, сколько случайных чисел вам надо сгенери
ровать в каждом столбце.
4.
Выберите тип распределения, из которого вам надо извлечь числа (например,
Нормальное
(Normal)).
234
5.
Глава
9
Введите параметры распределения с учетом того, что набор опций раздела Па
раметры
(Parameters)
меняется в зависимости от типа выбранного вами распре
деления. Например, у нормального распределения есть параметры Среднее
(Mean)
и Стандартное отклонение
лены в значения
6.
50
и
20
(Standard Deviation),
которые были установ
соответственно.
В группе Параметры вывода
(Output options)
вам предоставляется возможность
определить, куда инструмент Генерация случайных чисел
Generation)
(Random Number
должен выводить случайные числа. Выберите здесь параметр Вы
ходной интервал
(Output Range)
и укажите, к примеру, ячейку
Al,
поместив
ссылку на нее в соответствующее поле.
Генерация случайных чисел
?
х
~ИС/IО С11учайных чисел:
fасnределение :
Пара~~етры
Ср~нее=
EJ
Стандартное .отк.nонение =
~
Случ~йное рассеивание:
Параметры вывода
@ В!!!Jtодной интервал:
О Новый рабочий пист:
О Новая рабочая .!!,Нига
Рис.
9.16.
Диалоговое окно инструмента Генерация случайных чисел
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Генерация случайных чисел
(Random Number Generation)
выведет неза
висимые случайные числа, извлеченные из указанного распределения.
Пояснение
В этом разделе представлен гибкий способ генерирования чисел из различных рас
пределений. Доступны следующие варианты:
♦ Равномерное
(Uniform)
Генерирует случайные числа между двумя заданными вами пределами, где каж
дое число имеет равную возможность быть выбранным ( см. также разд.
♦
Нормальное
4.1).
(Normal)
Извлекает случайные числа из нормального распределения с указанным средним
и стандартным отклонением.
Надстройка Пакет анализа
♦
Бернулли
1
235
(Bernoulli)
Генерирует случайным образом значения от О до
1,
используя указанную веро
ятность успеха.
♦
Биномиальное
(Binomial)
Извлекает случайные числа из биномиального распределения, используя ука
занные вероятность успеха и количество проб.
♦
Пуассона
(Poisson)
Извлекает случайные числа из распределения Пуассона, используя указанное
лямбда-значение (ожидаемое число вхождений на интервале).
♦
Модельное
(Patterned)
Повторяет последовательность чисел с шагом между двумя пределами.
♦
Дискретное
(Discrete)
Возвращает значения, каждое из которых имеет определенную вероятность быть
выбранным. Для этого варианта требуется задать входной интервал из двух
столбцов, где первый содержит значения, а второй
ности. Сумма вероятностей должна быть равна
100%.
соответствующие вероят
Чтобы сгенерировать одну и ту же последовательность случайных чисел несколько
раз, введите в поле Случайное рассеивание
пазоне от
1
до
румента Генерация случайных чисел
9.1 О.
(Random Seed)
целое число в диа
Этим вы укажете начальное значение для алгоритма инст
32 767.
(Random Number Generation).
Генерируем корреляционную матрицу
Задача
У вас есть пары измерений, и вы хотите определить, имеется ли между ними
линейная взаимосвязь, и если это так, то выяснить ее силу и направление.
Решение
Предположим, вам надо проанализировать взаимосвязь между имеющимися у вас
данными по продажам за
12
месяцев для трех продуктов: бумаги, чернильных кар
триджей и компьютеров. Пусть эти данные содержатся в диапазоне А 1:D 13, где
месяцы приведены в столбце
1,
а метки
-
в первой строке. Для выполнения ана
лиза:
1.
2.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
кнопку Анализ данных (Data Analysis). Затем выберите из списка инструментов
анализа пункт Корреляция (Correlation) и нажмите кнопку ОК, чтобы открыть
диалоговое окно инструмента (рис. 9. 17).
В поле Входной интервал
(Input Range)
значений продаж, включая метки.
выберите диапазон В 1: D 13 для списка
Глава
236
А
9
в
1 Месяц
2 Янв
3 Фев
4 Мар
5 Anp
6 Май
7 Июн
8 Июл
9 Авг
10 Сен
11 Окт
12 Ноя
13 Дек
Бумага
1729
1373
1880
1217
1640
1990
1402
1751
1784
12.71
1229
1184
с
о
Картриджи
4380
2260
4210
2130
3768
4779
1995
2665
4465
1650
2335
2640
Рис.
3.
F
Е
н
G
Компьютеры
9.17.
х
1
Корреляция
36185
35146
35873
30077
В.одные данные
В!;одной интераал:
~
..т
1:SDS13
@ по стол§ца••
Группирование:
О по qpo••••
38508
ок
Отмена
~правка
0 t~етки в первой строке !
36751
31200
33457
20453
32926
Параа.tетры выsода
@ В!,tходной
интервал:
О Новый рабочий !!ИСТ:
SFS1
1
Г
~
О Ноsая рабочая J,Нига
34058
27999
Диалоговое окно инструмента Корреляция
Установите флажок Метки в первой строке
(Labels in first row),
т. к. первая
строка входного интервала содержит метки данных.
4.
В группе Параметры вывода
(Output options) вам предоставляется возможность
(Correlation) должен выводить ре
зультаты. Выберите здесь параметр Выходной интервал (Output Range) и ука
жите, к примеру, ячейку FI, поместив ссылку на нее в соответствующее поле.
определить, куда инструмент Корреляция
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Корреляция
выведет корреляционную матрицу, отобра
(Correlation)
жающую значения коэффициента корреляции для каждой возможной пары измере
ний (рис.
9.18).
Картриджи
Бумага
Бумага
Компьютеры
1
Картриджи
О,862268599
Компьютеры
0,203414941
Рис.
9.18.
1
0,075400268
1
Вывод инструмента Корреляция
Пояснение
Коэффициент корреляции измеряет силу линейной взаимосвязи между двумя набо
рами значений. Чем ближе его значение к плюс или минус
1,
тем сильнее линейная
взаимосвязь, в то время как значение О указывает на отсутствие линейной взаимо
связи.
«Под
капотом»
инструмент
=коРРЕЛ (значения_ 1; значения_ 2)
Корреляция
для
парой, где значения_ 1 и значения_ 2 -
(Correlation)
поиска корреляции
использует
между
каждой
формулу
возможной
это два набора значений.
Обратите внимание, что инструмент Корреляция
(Correlation)
выводит значения, а
не формулы, поэтому вам придется перезапустить инструмент, если исходные дан
ные изменятся.
Надстройка Пакет анализа
237
Дополнение
Корреляция тесно связана с ко вариацией (см.разд.
9.11).
Получаем матрицу ковариаций
9.11.
Задача
У вас есть пары измерений, и вы хотите определить степень изменения их значе
ний.
Решение
Следуйте шагам, приведенным в разд.
Коварнацня
А
1
2
3
4
5
r;,;,есяц
(Covariance) (рис. 9.19).
_
в
__
Бумага
с
9.1 О,
Е
D
Картриджи Компьютеры
Янв
1729
4380
361&5
IФев
1373
2260
35146
Мар
1880
4210
35873
Anp
1217
2130
30077
6 Май
1640
3768
38508
7
Июн
1990
4Т19
36751
8
Июл
1402
1995
31200
но на этот раз выберите инструмент
Все остальные шаги остаются теми же.
F
н
G
1 -------- 1
Вм:одныt данныt
В1!;:одной интepl!lall:
Группироsани~
1SAS1 :SDS1З
~~]
ок
Оrмtна
@ по сто•~цам
О поqроо:ам
0
х
?
Ковариацкя
tправка
метки 8 первой строке
9 Aor
1751
2665
33457
Параметры вывода
10
Сен
1784
4465
20453
@ В!!!ходном инт,рваn:
11
Окт
1271
1650
32926
О Новый рабочий дисr:
12
Ноя
Ш9
2335
34058
О Ноsая рабоч.а.я ьнига
13
, Дек
1184
2640
27999
1SFS1
:::-i~
--,
14
15
Рис.
9.19. Диалоговое
окно инструмента Ковариация
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Коварнацня
(Covariance)
выведет матрицу ковариаций, отображающую
значение ковариации для каждой возможной пары измерений (рис.
Бумага
Бумага
Картриджи
Компьютеры
Рис.
76240,25
256745, 2083
262453,9583
9.20.
Картриджи
1162880,91
379943,1597
9.20).
Компьютеры
21835153,24
Вывод инструмента Ковариация
Пояснение
И корреляция, и ковариация измеряют взаимосвязь между двумя наборами значе
ний. Основное различие состоит в том, что коэффициенты корреляции масштаби-
238
1
Глава
9
руются так, чтобы находиться в пределах от О до
1,
в то время как ковариация не
масштабируется.
Предположим, к примеру, что ваши измерения содержат вес в фунтах. Тогда, если
вы преобразуете вес в килограммы, коэффициент корреляции останется неизмен
ным, в то время как ковариация изменится.
«Под
капотом»
инструмент
Ковариация
(Covariance)
использует
формулу
=коВАРИАЦИЯ.В(значения_l;значения_2) для поиска ковариации между каждой возмож
ной парой, где значения_ 1 и значения_ 2 -
это два набора значений.
Обратите внимание, что инструмент Ковариация
(Covariance)
выводит значения, а
не формулы, поэтому вам придется перезапустить инструмент, если исходные дан
ные изменятся.
9.12.
Проводим линейный регрессионный анализ
Задача
У вас есть список данных для переменной, и вы хотите проанализировать, как на
эту переменную воздействуют одна или более других переменных. Вам также мо
жет понадобиться найти линейное уравнение для выявленной взаимосвязи, которое
вы впоследствии сможете использовать для прогнозирования.
Решение
Предположим, вы владеете данными, отображающими количество проданных то
варов, их цены и сумму, затраченную на рекламу за разные периоды, и собираетесь
на их основе спрогнозировать, сколько товаров вы продадите в зависимости от их
цены и издержек на рекламу. Пусть в диапазоне А2:А8 приведено количество про
данных товаров, в диапазоне
82:88
указана цена товаров, в диапазоне С2:С8 пока
заны затраты на рекламу, а первая строка диапазонов содержит метки. Для выпол
нения анализа:
1.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
анализа пункт Регрессия (Regression) и нажмите кнопку ОК, чтобы открыть
диалоговое окно инструмента (рис. 9 .21 ).
кнопку Анализ данных
2.
В поле Входной интервал У
(lnput Range
У) выберите диапазон А 1:А8 для дан
ных о количестве проданных товаров.
3.
В поле Входной интервал Х
(lnput Range
Х) выберите диапазон В 1:С8 для дан
ных о ценах товаров и затратах на рекламу.
4.
Установите флажок Метки
(Labels),
т. к. первые строки входных интервалов со
держат метки данных.
5.
В группе Параметры вывода
определить, куда
(Output options) вам предоставляется возможность
инструмент Регрессия (Regression) должен выводить результа-
Надстройка Пакет анализа
А
в
Продано
1
2
1
:1
с
Цена
10000
5000
7000
о
Е
н
G
к
Реклама
4
10
б
х
?
Регрессия
3500
500
1000
ВХодныt данныt
§>(одной иннрsал У:
t
SAS1 :SASЗ
239
ок
Опttна
5
9000
4
бl
8000
10
1500
5000
7
8500
б
4000
1:21метки
8 1
9
10
5000
8
2000
О ,lровtнь надtж:носrи~
В!;одной интtраал Х:
t
SCS1 :SCSЗ
!;правка
О Константа - ноль
95
%
Параhtrтры вывода
@ В!![ходной интервал:
11
t
SES11
О Новый рабочий аист:
12
13
О Новая рабочая ~нига
Остатки
О ОСТJ!ТКИ
О [рафик остатков
О Сrандарти,ованны, остатк" О График !!Од6ора
141
15
lб
Норr..1а11ьная вtроятность
17
О График ttор"tальной вtроятности
18
19 j
20
Рис.
9.21.
Диалоговое окно инструмента Регрессия
ты. Выберите здесь параметр Выходной интервал
к примеру, ячейку
EI,
(Output Range)
и укажите,
поместив ссылку на нее в соответствующее поле.
Завершив настройку данных для вывода результата, нажмите на кнопку ОК, и ин
струмент Регрессия
♦
(Regression)
первая таблица (рис.
9.22)
выведет три таблицы:
отображает статистические показатели регрессии и
включает коэффициент детерминации (R-квадрат), который указывает, насколь
ко анализ соответствует данным,
связь (см. разд.
8.23).
чем ближе его значение к
-
1,
тем теснее
В нашем примере коэффициент детерминации равен
что означает хорошую связь: цена и издержки на рекламу объясняют
0,838,
83,8% из
менений в проданных товарах.
Регрессионная статистика
Множесrвенный
О,915523108
R
R-мвздрат
Нормированный R-квадрат
стандартная ошибка
0,838182562
о, 757273843
954,0561244
Наблюдения
Рис.
9.22.
7
Статистические показатели, сгенерированные инструментом Регрессия,
включая коэффициент детерминации
♦
таблица дисперсионного анализа (ДА)
F-критерия общей значимости (рис.
включает статистический
9.23),
показатель
который демонстрирует статистиче
скую значимость результатов (см. далее разд. «Пояс11ение»).
♦ третья таблица отображает результаты регрессионного анализа (рис.
9.24).
Здесь
коэффициенты описывают прямую линию, которая наилучшим образом соот-
Глава
240
ветствует
9
данным,
которые
вы
можете
использовать
для
прогнозирования.
В этом примере уравнение для линии следующее:
у (проданные товары)=
9660,3855 - (557,559
ss
MS
18859107,65 9429553,823
3640892,354 910223,0886
df
Регрессия
Остаток
2
4
Итого
6
Рис.
9.23.
х цена)+
(0,6651505
F
10,35960738
х реклама).
Значимость
F
0,026184883
22500000
Вывод инструментом Регрессия показателей дисперсионного анализа,
включая F-критерий общей значимости
Коэффициенты Стандартная ошибка t-стотистина
У-пересечение
9660,385532
UЗЗ,280747
Цена
-557,559021
153,1677974
0,665150531
О,2315б7943
Реклама
Рис.
9.24.
Р-3начение
7,833079009
0,001434325
-3,640184362 0,021961075
2,Вn3П41б
О,045359834
Нижние 95'1i
~рхние 95" Нижние 95,о,&'
6236,249238 13084,52183
6236,249238
-982,8210025 -132,2970396 -982,8210025
0,022214848
1,308086Ш
0,022214848
верхние 95,°"
13084,52183
-132,2970396
1,308086Ш
Вывод анализа, проведенного инструментом Регрессия, включая коэффициенты
Пояснение
Инструмент Регрессия
(Regression)
выполняет линейный регрессионный анализ,
используя метод наименьших квадратов. «Под капотом» он задействует функцию
линЕйн
чтобы провести прямую линию через точки предоставляемого вами вход
-
ного интервала (см. разд.
8.24).
Поле Входной интервал У
(lnput Range
У) содер
жит зависимую переменную, которую вам надо спрогнозировать, а поле Входной
интервал Х
(lnput Range
Х) содержит независимые переменные, которые вы соби
раетесь использовать для прогнозирования.
Обычно требуется,
рис.
9.23)
товерными,
не
-
учитывая
(см. рис.
чтобы
был меньше
9.24).
0,05.
F-критерий
общей
Если он больше
0,05,
значимости
в таблице
ДА
(см.
то результаты могут быть недос
попробуйте в таком случае перезапустить инструмент, на этот раз
переменную
с
наивысшим
Диалоговое окно Регрессия
Р-значением
(Regression)
в
таблице
результатов
содержит также следующие
дополнительные параметры:
♦ Константа-ноль
При установке этого флажка линия регрессии проходит через начало координат
таким образом, чтобы при значениях Х, равных О, значение У тоже было равно О.
♦ Уровень надежности
Уровень надежности для регрессионного анализа.
♦
Остатки
Генерирует остатки
-
разницу между фактическими и прогнозируемыми точ
ками данных.
♦
Нормальная вероятность
Генерирует дополнительную таблицу, отображающую вероятности.
Надстройка Пакет анализа
Обратите внимание, что инструмент Регрессия
(Regression)
1
241
выводит значения, а не
формулы, поэтому вам придется перезапустить инструмент, если исходные данные
изменятся.
9.13.
Используем
двухвыборочный t-критерий Стьюдента
Задача
У вас есть две выборки, и вы хотите сравнить средние значения генеральных сово
купностей, из которых они были взяты, но при этом вы не знаете дисперсий этих
генеральных совокупностей.
Решение
Используйте t-критерий Стьюдента: инструмент Двухвыборочный t-тест с оди
наковыми дисперсиями
(Two-Sample Assuming Equal Variances) -
если вы пред
полагаете, что дисперсии генеральных совокупностей одинаковы, или Двухвы
борочный t-тест с различными дисперсиями
Variances) -
(Two-Sample Assuming Unequal
если у вас есть основания полагать, что дисперсии генеральных сово
купностей отличаются.
Предположим, вы собираетесь проверить, одинаков ли средний вес двух брендов
продукта, и у вас есть выборки весов для каждого бренда: в диапазоне А2:А 16 при
ведены веса для бренда А, в диапазоне В2:В 16
-
для бренда Б, а первая строка
диапазонов содержит метки.
Дпя решения этой задачи вам нужно проверить, равна ли нулю разница средних
значений двух генеральных совокупностей (весов для бренда А и для бренда Б):
1.
Перейдите на вкладку Данные
кнопку Анализ данных
2.
Из
(Data) и
(Data Analysis).
в разделе Анализ
списка инструментов анализа выберите
(Analyze)
нажмите
пункт Двухвыборочный t-тест
с одинаковыми дисперсиями
Двухвыборочный t-тест с
Unequal Variances)
(Two-Sample Assuming Equal Variances) или
различными дисперсиями (Two-Sample Assuming
(в этом примере выбирается вариант с одинаковыми диспер
сиями). Затем нажмите кнопку ОК, чтобы открыть диалоговое окно инструмен
та (рис.
3.
9.25).
В поле Интервал переменной
l
(VariaЫe
I Range)
выберите диапазон А 1:А 16
2
(VariaЫe
2 Range)
выберите диапазон В1:В16
для списка бренда А.
4.
В поле Интервал переменной
для списка бренда Б.
5.
В поле Гипотетическая средняя разность
(Hypothesized Mean Difference)
вве
дите значение О (в этом примере используется значение О, позволяющее про
верить, равны ли средние значения двух генеральных совокупностей).
Глава
242
6.
9
Установите флажок Метки
(Labels),
т. к. первые строки интервалов переменных
содержат метки данных.
7.
В поле Альфа
8.
В группе Параметры вывода
определить,
(Alpha)
введите значение уровня значимости
(Output options)
например,
-
вам предоставляется возможность
куда инструмент должен выводить результаты.
параметр Выходной интервал
(Output Range)
0,05.
Выберите здесь
и укажите, к примеру, ячейку
D 1,
поместив ссылку на нее в соответствующее поле.
А
в
с
1
Бренд А Бренд Б
2
з
492,06 494,789
516, 981 509,706
4
499,622 495,298
5
501,352 497,619
D
F
Е
н
G
х
Двухвы6орочный t-тест с одинаковыми дисперсиями
Входные данные
Интервал переменной
1:
Интервал переменной Z,:
6 1499,065 501,196
7 503,103 497,548
506,986 490,797
в
ок
SAS1 :SAS16
Отыена
[sвs1:SBS1б
["1nотетичrская средняя разность:
~правка
о
0.Метки
811 ьф а:
О, 05
9 491,529 489,223
10 507,399 501,161
Параметры вывода
11 501, 367 490,019
@ В]!!ходной интервал:
12 503.,963 494,748
13 503,П8 501,11
14 496,074 505,233
О Новый рабочий nиcr:
SDS11
О Новая рабочая книга
15 502,516 492,631
16 502,203 497,099
17
Рис.
9.25.
Т-критерий Стьюдента: диалоговое окно инструмента
Двухвыборочный t-тест с одинаковыми дисперсиями
Завершив настройку данных, нажмите на кнопку ОК, и инструмент выведет ре
зультаты (рис.
9.26).
Двухвыборочный t-тест с одинаковыми дисперсиями
БрендА
501,8665333
497, 2118
Дисперсия
38,95456455
32,90684489
Наблюдения
15
35,93070472
15
Объединенная дисперсия
Гипотетическая разность средних
df
P(T<=t}
t
9.26.
о
28
t-статистика
Рис.
БрендБ
Среднее
одностороннее
критическое одностороннее
2,126633102
0,021199796
1, 701130934
P(T<=t} двухстороннее
0,042399592
t
2,048407142
критическое двухстороннее
Вывод инструмента Двухвыборочный t-тест с одинаковыми дисперсиями
Надстройка Пакет анализа
243
Пояснение
Это решение пригодится, если вам надо найти вероятность того, что две выборки
были взяты из генеральных совокупностей с одинаковыми средними значениями.
Для этого мы проверяем здесь нулевую гипотезу о том, что средние значения оди
наковы (поэтому на шаге
5
мы вводим гипотетическую разность, равную нулю),
-
против альтернативной гипотезы о том, что это не так.
Самые важные статистические показатели, генерируемые инструментом,
р-значения для односторонних и двусторонних тестов. Показатель
стороннее предоставляет р-значение для одностороннего теста
-
- это
P(T<=t) одно
проверки, выяв
ляющей различия в средних значениях генеральных совокупностей в одном на
правлении (например, больше ли среднее значение бренда А среднего значения
бренда Б). С другой стороны, показатель
P(T<=t)
двухстороннее дает р-значение
для двухстороннего теста, который используется для выявления различий в обоих
направлениях (например, больше или меньше среднее значение бренда А среднего
значения бренда Б).
В общем, решите, нужен ли вам односторонний или двухсторонний тест, а затем
посмотрите, не меньше ли его р-значение уровня значимости (Альфа), которое вы
выбрали на шаге
7.
Если р-значение меньше уровня значимости, то существует
достаточно оснований для того, чтобы отвергнуть нулевую гипотезу. Как можно
видеть в результатах вывода инструмента, показанных на рис.
меньше уровня значимости
(0,05),
9.26,
оба р-значения
и это дает нам право утверждать, что средние
веса бренда А отличаются от средних весов бренда Б.
«Под капотом» инструмент использует функцию стьюдЕнт. ТЕСТ. Она принимает вид
=стьюдЕНТ. ТЕСТ (массивl ;массив2; хвосты;тип), где массивl и массив2 -
это два набора
данных, хвосты указывают, какой тест выполнять: односторонний или двухсторон
ний, а тип задает тип теста.
Обратите внимание, что инструменты t-критерия Стьюдента выводят значения, а не
формулы, поэтому вам придется перезапустить инструменты, если исходные дан
ные изменятся.
Дополнение
Это решение подходит для выборок, по которым вам неизвестно значение диспер
сий генеральных совокупностей. Если вы знаете эти дисперсии, обратитесь к реше
нию из разд.
разд.
9.14.
Если у вас больше двух выборок, используйте решение из
9.17.
9.14.
Проводим двухвыборочный z-тест
Задача
У вас есть две выборки, и вы хотите сравнить средние значения генеральных сово
купностей, из которых они были взяты, причем вы знаете дисперсии этих генераль
ных совокупностей.
244
Глава
9
Решение
Предположим, вы собираетесь проверить, одинаков ли средний вес двух брендов
продукта, и у вас есть выборки весов для каждого бренда: в диапазоне А2:А 16 при
ведены веса для бренда А, в диапазоне В2:В 16
для бренда Б, а первая строка
-
диапазонов содержит метки. При этом вы знаете, что дисперсия бренда А равна
а дисперсия бренда Б равна
40,
3 1.
Для решения этой задачи следуйте шагам из разд.
струмент Двухвыборочный z-тест для средних
9.13, но на этот раз выберите ин
(z-test: Two Sample for Means)
и добавьте следующие дополнительные шаги:
1.
В поле Дисперсия переменной
дите значение
2.
40 -
В поле Дисперсия переменной
дите значение
1
2
31 -
А
в
..----
492,06 494,789
4
499,622 495,298
5
501,352
499,065
503,103
506,986
491,529
б
7
497,619
501,196
497,548
490,797
489,223
8
9
10 507,399 501,161
11 501,367 490,019
12 503,963 494,748
13 503,778 501,11
14 496,074 505,233
15 502,516 492,631
16 502,203 497,099
(VariaЫe
1 Variance (known))
вве
2
(известная) (VariaЫe
2 Variance (known))
вве
это дисперсия для бренда Б.
F
Е
- -, - - - - , -- - -
с
о
Бренд А Бренд Б
3 516,981 509,706
1 (известная)
это дисперсия для бренда А.
н
G
Вкодные данные
Интервал переменной 1:
х
1
Двух выборочный z-тест Д/\Я средних
Гs":AS1 : SAS16
ок
!
:=:=::====-==-==:.-.
s_
вs_1,_sвs
_
16_ _ __ !
Отмена
[ипотетическая средн.яя ра3ность; @
~ _ _ _ _ _~
!;правка
Интервал переменной~
._I
д!!сnерсия переменной 1 (и>вестна Г40
Дисперсия n~решнной
2 (известна
::-:::;:-::::::::::--::::::::::::-=:
з1I
0метки
~ьфа: ~
Пара1t1етры вывода
@ В!,!ходной интервал:
l!!>s1
___
J.!..
О Новый рабочий писr.
О Новая рабочая !НИrа
17
18
19
Рис.
9.27. Диалоговое
окно инструмента Двухвыборочный z-тест дnя средних
Завершив настройку данных,
результаты (рис.
нажмите
на кнопку ОК,
и
инструмент выведет
9.28).
Пояснение
Это решение пригодится, если вы хотите найти вероятность того, что две выборки
были взяты из генеральных совокупностей с одинаковыми средними значениями,
и вам известны значения дисперсий генеральных совокупностей. Для этого мы
проверяем здесь нулевую гипотезу о том, что средние значения одинаковы (или
между ним есть указанное различие),
-
против альтернативной гипотезы о том,
что это не так. Обратите внимание, что инструмент Двухвыборочный z-тест для
Надстройка Пакет анализа
245
Двухвыборочный z-тест для средних
БрендБ
БрендА
Среднее
501,8665333
40
31
Наблюдения
15
15
о
Гипотетическая разность средних
z
2,139494925
одностороннее
О,016197803
z критическое одностороннее
1,644853627
P(Z<=z) двухстороннее
0,032395606
z критическое двухстороннее
1,959963985
P(Z<=z)
Рис.
средних
497,2118
Известная дисперсия
9.28.
Вывод инструмента Двухвыборочный z-тест для средних
(z-test: Two Sample for Means)
выводит значения, а не формулы, поэтому
вам придется перезапустить инструмент, если исходные данные изменятся.
Инструмент выводит р-значения
P(Z<=z)
как односторонних, так и двухсторонних
тестов. Описание этих тестов приводится в разд.
Excel предлагает функцию z. ТЕСТ -
:~
!.
.
9.13
(см. там разд. «Пояснение»).
она пригодится, если вы знаете стандартное
отклонение генеральной совокупности и собираетесь проверить, существенно ли
отличается ее среднее значение от гипотетического.
'
9.15.
Проводим парный двухвыборочный t-тест
Задача
У вас есть выборка, состоящая из парных измерений, и вы хотите проверить разни
цу средних значений между двумя измерениями.
Решение
Предположим, у вас имеется выборка данных по спортсменам, содержащая инфор
мацию о том, сколько времени затрачивает каждый из них, чтобы пробежать одну и
ту же дистанцию до и после подготовки в тренировочном лагере, и вам надо прове
рить, влияет ли на скорость их бега такая подготовка. Пусть в диапазоне А2:А 16
приведены данные по каждому спортсмену, в диапазоне В2:В 16 указано время
пробега дистанции,
С2:С 16
-
зафиксированное до
тренировочного
лагеря,
в
диапазоне
время пробега, зафиксированное после тренировочного лагеря, а первая
строка диапазонов содержит метки.
Для решения этой задачи вам нужно проверить, равна ли нулю разница средних
значений между двумя показателями времени (зафиксированными до и после тре
нировочного лагеря):
1.
Перейдите на вкладку Данные
кнопку Анализ данных
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
246
Глава
9
анализа пункт Парный двухвыборочный t-тест для средних
Sample for Means) и
румента (рис. 9.29).
2.
(t-test: Paired Two
нажмите кнопку ОК, чтобы открыть диалоговое окно инст
В поле Интервал переменной
1
(VariaЫe
I Range)
выберите диапазон В 1: В 16
для списка показателей времени, зафиксированных до тренировочного лагеря.
3.
В поле Интервал переменной
2
(VariaЫe
2 Range)
выберите диапазон С 1:С16
для списка показателей времени, зафиксированных после тренировочного ла
геря.
4.
В поле Гипотетическая средняя разность
(Hypothesized Mean Difference)
вве
дите значение О (в этом примере используется значение О, позволяющее прове
рить, равны ли средние значения двух генеральных совокупностей).
5.
Установите флажок Метки
(Labels),
т. к. первые строки интервалов переменных
содержат метки данных.
6.
7.
В поле Альфа
(Alpha)
введите значение уровня значимости
В группе Параметры вывода
(Output options)
например,
-
вам предоставляется возможность
определить, куда инструмент должен выводить результаты.
параметр Выходной интервал
(Output Range)
0,05.
Выберите здесь
и укажите, к примеру, ячейку Е 1,
поместив ссылку на нее в соответствующее поле.
в
А
1
Спортсмен До
:1
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Рис.
Завершив
с
99,б
9б,25
1
2 94,б7 82,44
3
83,8 82,9б
4 106,54 105,98
5 104,41 102,бl
б 107,53
95,02
7 104,18 92,57
8 95,92 102, 75
9 116,58 9б,94
10 103,71 85,04
86,7
11 8б,61
12 97,22
94,4
13 98,41 89,59
14 97,11 86,54
15 121,48 100,69
9.29.
D
f
Е
н
G
к
г------,
После
1
1
х
Парный двух выборочный t-ткт для ср,,цних
Входныt данныt
ИнторваJ\ п,р,м,нной 1:
Инт,рваА П<Р<•tонной ~
ок
SBS1 :SBS16
он,rна
SCS1 :SCS16
[иnотtтичtская срtдняя разность:
fпраока
о
0мотки
i\Jlьфa:
0,05
Парамtтры вывода
@
В!,!ходной инт,роап:
SES1
О Новый рабочий аист:
О Новая рабочая ьн1.1га
Диалоговое окно инструмента Парный двухвыборочный t-тест для средних
настройку данных,
результаты (рис.
нажмите
на
кнопку
ОК,
и
инструмент
выведет
9.30).
Пояснение
Это решение пригодится для проверки того, отличаются ли существенно измере
ния, выполненные в разное время для одного и того предмета или человека. Воз
можно, вы сможете его использовать для:
Надстройка Пакет анализа
24 7
Парный двухвыборочный t-тecr для средних
До
101,1846667 93,36533333
дисперсия
97,92488381 58,14764095
Наблюдения
15
Корреляция Пирсона
Гипотетическая разность средних
О
♦
♦
9.30.
14
t-сrатисrика
3,676614457
P(T<=t) одностороннее
0,001245007
t
15
О,584586371
df
Рис.
После
Среднее
критическое одностороннее
1,761310136
P(T<=t) двухстороннее
О,002490013
t критическое д вухстороннее
2,144786688
Вывод инструмента Парный двухвыборочный t-тест для средних
сравнения показаний до и после лечения;
сравнения скоростей двух моделей автомобилей, когда каждому испытуемому
дается возможность сесть за руль каждого автомобиля;
♦
сравнения действия двух лосьонов для кожи, когда один наносится на левую
руку каждого испытуемого, а другой
-
на его правую руку.
Самые важные статистические показатели, генерируемые рассматриваемым инст
рументом,
-
это р-значения для односторонних и двухсторонних тестов. Описание
этих тестов приводится в разд.
9.16.
9.13
(см. там разд. «Пояснение»).
Проводим двухвыборочный F-тест для дисперсии
Задача
У вас есть две выборки, и вы хотите сравнить дисперсии генеральных совокупно
стей, из которых эти выборки были взяты.
Решение
Предположим, у вас имеются выборки результатов для каждой команды, и вам
надо проверить, одинаково ли изменяются эти результаты для обеих команд. Пусть
в диапазоне А2:А 16 приведены результаты команды А, в диапазоне
82: В 16 -
результаты команды Б, а первая строка диапазонов содержит метки.
Для решения этой задачи вам нужно проверить, одинаковы ли дисперсии каждой
генеральной совокупности (результаты команды А и команды Б):
1.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Ana\ysis ). Затем выберите из списка инструментов
Двухвыборочный F-тест для дисперсии (F-Test Two-Sample for
кнопку Анализ данных
анализа пункт
Variances) и
(рис. 9 .3 1).
нажмите кнопку ОК, чтобы открыть диалоговое окно инструмента
248
Глава
9
А
1
2
з
4
5
6
7
54, 85
57,Об
10
11
73,79
57,77
12
56,88
61,83
59,86
65,36
57,56
51,12
53,47
49, 31
40,48
15
16
17
F
G
Рис.
9.31.
Вкодн ые данные
Интервал nере•ttнной 1:
49,44
67, 31
64,46
Интервал переменной
1SAS1 :SAS16
l:
SBS1 ; SBS1б
х
?
Двух выборочный F-тест для дисперсии
бб,91
71,78
52,09
8
9
1З
Е
D
57,42
62,2
64,48
62,67
68,74
55,04
59,38
14
2.
с
в
j команда А Команда Б
ок
1±]
Ота.ttна
~
~правка
49,53
71,51
68,24
Пара•~етры вывода
@
бб,49
В!,!ходной интервал:
-=_J ~
SDS1
О Новый рабочий дист:
О Новая рабочая _!;нига
Диалоговое окно инструмента Двухвыборочный F-тест дnя дисперсии
В поле Интервал переменной
1
(VariaЫe
1 Range)
выберите диапазон А 1:А 16
2 Range)
выберите диапазон В 1: В 16
для списка показателей команды А.
1.
В поле Интервал переменной
2
(VariaЫe
для списка показателей команды Б.
4.
Установите флажок Метки
(Labels),
т. к. первые строки интервалов переменных
содержат метки данных.
5.
В поле Альфа
6.
В группе Параметры вывода
(Alpha)
введите значение уровня значимости
(Output options)
определить, куда инструмент должен
параметр Выходной интервал
например,
-
0,05.
вам предоставляется возможность
выводить результаты. Выберите здесь
(Output Range)
и укажите, к примеру, ячейку
D 1,
поместив ссылку на нее в соответствующее поле.
Завершив настройку данных,
результаты (рис.
нажмите
на кнопку ОК,
и
инструмент
9.32).
Двухвыборочный F-тecr для дисперсии
Команда А
б0, 614бббб7
59,18733333
Дисперсия
36, 72552667
92, 23384952
Наблюдения
15
15
df
F
14
14
0,3981784
P{F<=f) одностороннее
F критическое одностороннее
Рис.
КомандаБ
Среднее
9.32.
0,048029033
0,402620943
Вывод инструмента Двухвыборочный F-тест дnя дисперсии
выведет
Надстройка Пакет анализа
1
249
Пояснение
Это решение поможет вам найти вероятность того, что две выборки были взяты из
генеральных совокупностей с одинаковыми дисперсиями. Для этого мы проверяем
здесь нулевую гипотезу о том, что средние значения одинаковы,
-
против альтер
нативной гипотезы о том, что это не так.
Самый важный статистический показатель, генерируемый рассматриваемым инст
рументом,
-
р-значение для одностороннего теста,
P(F<=f)
одностороннее. Если
р-значение меньше уровня значимости (альфа), который вы установили на шаге
5,
то существует достаточно оснований для того, чтобы отвергнуть нулевую гипотезу.
Обратите внимание, что инструмент Двухвыборочный F-тест для дисперсии
(F-Test Two-Sample for Variances)
выводит значения, а не формулы, поэтому вам
придется перезапустить инструмент, если исходные данные изменятся.
Чтобы
провести двухсторонний F-тест для дисперсии, можно воспользоваться
функцией
и массив2 -
9.17.
Excel
F. ТЕСТ. Она принимает вид =F. ТЕСТ (массив] ;массив2), где массив]
это диапазоны двух наборов данных.
Проводим однофакторный дисперсионный анализ
Задача
У вас есть две или более выборок, которые зависят от одного фактора, и вы хотите
проверить, взяты ли они из генеральных совокупностей с одинаковыми средними
значениями.
Решение
Предположим, у вас имеется выборка весов продуктов для каждого из трех брен
дов, и вам надо проверить, одинаков ли средний вес этих продуктов. Пусть в диапа
зоне А2:А 11 приведены веса для бренда А, в диапазоне В2:В 11
-
для бренда Б,
в диапазоне С2:С 11 -для бренда В, а первая строка диапазонов содержит метки.
Поскольку веса зависят от одного фактора
-
бренда продукта, вы можете исполь
зовать однофакторный дисперсионный анализ для оценки того, взяты ли выборки
из генеральных совокупностей с одинаковыми средними значениями. Для решения
этой задачи:
1.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
Однофакторный дисперсионный анализ (ANOV А: Single
кнопку Анализ данных
анализа
пункт
Factor) и нажмите
9.33).
кнопку ОК, чтобы открыть диалоговое окно инструмента
(рис.
2.
В поле Входной интервал
(lnput Range)
этих трех выборок, включая их метки.
выберите диапазон А 1:С
11
для списка
Глава
250
1
9
А
в
БрендА
БрендБ
с
Е
D
f
489,57
497,38
501,15
507,8
499
477,48
Входные данные
4
489,29
505,65
483,16
ВJ!одной интервал :
5
519,48
509,09
469,45
6
496,48
505,4
499,93
7
511,76
498,62
474,87
485
497,96
480,93
9
514,68
477,68
496,52
О по с:rрокаы
0
~правка
_метки в первой строке
Альфа:
0,05
496,5
496,78
476,21
Параметры вывода
11
503,23
513,32
504,78
@
В!!!ходной интервал:
О Новый рабочий аист:
13
Отмена
@ по стол.§_цам
10
121
ок
t
SAS1:SCS11
Группирование;
х
?
Однофакторный дисперсионный анализ
2
3
8
н
- - -G -
Брендв
t
SES1
[_
О Новая рабочая fнига
14
15
Рис. 9.33. Диалоговое окно инструмента Однофакторный дисперсионный анализ
3.
В
разделе
Группирование
(Grouped
Ву)
выберите
вариант По
столбцам
(Соlшппs), поскольку веса приведены в столбцах.
4.
Установите флажок Метки в первой строке
(Labels in first row),
т. к. первые
строки входных интервалов содержат метки данных.
5.
6.
В поле Альфа
(Alpha)
введите значение уровня значимости
В группе Параметры вывода
определить,
(Output options)
куда инструмент должен
параметр Выходной интервал
-
например,
0,05.
вам предоставляется возможность
выводить результаты. Выберите здесь
(Output Range)
и укажите, к примеру, ячейку
El,
поместив ссылку на нее в соответствующее поле.
Завершив настройку данных, нажмите на кнопку ОК, и инструмент выведет ре
зультаты (рис.
9.34).
Однофакторный дисперсионный анализ
итоги
Счет
Группы
Сумма
Среднее
Дисперсия
БрендА
10 5013,79
501,379 139,8506989
БрендБ
10 5000,88
500,088 93, 72630667
БрендВ
10 4864,48
486,448 164,9892844
Дисперсионный анализ
Источник вариации
Между группами
55
1368,836807
М5
df
F
Р-Значение критическое
2 684,4184033 5,151602786 0,012730274 3,354130829
3587,09661
27
4955,933417
29
132,85543
Рис. 9.34. Вывод инструмента Однофакторный дисперсионный анализ
Надстройка Пакет анализа
251
Пояснение
В этом разделе мы задействовали несколько выборок с тем, чтобы разобраться,
различаются ли средние значения хотя бы двух генеральных совокупностей, из ко
торых взяты эти выборки. Для этого здесь проверяется нулевая гипотеза о том, что
средние значения одинаковы,
-
против альтернативной гипотезы о том, что это не
так.
В Пакет анализа
(Analysis ToolPak)
включены три отдельных инструмента дис
персионного анализа. В этом разделе мы использовали инструмент Однофактор
ный дисперсионный анализ
(ANOV А: Single Factor),
пригодный для ситуаций,
когда измерения выборок (в нашем случае веса) зависят от одного фактора (бренда
продукта). Это более общая форма решения из разд.
9.13,
позволяющая анализиро
вать более двух выборок.
Самый важный статистический показатель вывода рассматриваемого инструмен
та
это р-значение. Если этот показатель меньше уровня значимости (альфа),
-
который вы установили на шаге
5,
то существует достаточно оснований для того
чтобы отвергнуть нулевую гипотезу, предполагающую, что выборки взяты из гене
ральных совокупностей с одинаковыми средними значениями. В примере, который
показан в этом разделе, р-значение
(0,0127)
меньше уровня значимости
(0,05),
и это
дает нам право утверждать, что средний вес хотя бы одного бренда отличается от
других.
9.18.
Проводим двухфакторный дисперсионный анализ
Задача
У вас есть выборка с измерениями, и вы хотите проверить, влияют ли на них два
фактора, каждый в отдельности или оба вместе.
Решение
Предположим, вам надо было проверить, влияет ли марка закваски, модель йогурт
ницы или какая-либо взаимосвязь между ними на количество времени, затрачивае
мое на приготовление йогурта. Для этого вы замерили затрачиваемое время в часах,
используя три модели йогуртниц и три марки (культуры) закваски, и повторили
процесс четыре раза для каждой комбинации. После чего в диапазоне А2: D 13 раз
местили результаты: в столбцах
-
модели йогуртниц, в строках
-
марки закваски,
а метки данных привели в первой строке столбцов.
Поскольку затрачиваемое время зависит от двух факторов: марки закваски и моде
ли йогуртницы, то, имея показатели времени для каждой комбинации, вы можете
для анализа результатов использовать двухфакторный дисперсионный анализ с по
вторениями:
1.
Перейдите на вкладку Данные
кнопку Аналю данных
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis). Затем выберите из списка инструментов
Глава
252
анализа
2.
9
пункт
Двухфакторный
дисперсионный
анализ
с
повторениями
(ANOV А: Two-Factor With Replication) и
диалоговое окно инструмента (рис. 9.35).
нажмите кнопку ОК, чтобы открыть
В поле Входной интервал
выберите диапазон А l :D 13 для всего
(Input Range)
диапазона данных, включая их метки.
3.
В поле Число строк для выборки
введите число
(Rows per sample)
потому
4,
что для каждой комбинации было зафиксировано четыре показателя времени,
приведенных в отдельных строках.
4.
В поле Альфа
5.
В группе Параметры вывода
(Alpha)
введите значение уровня значимости
(Output options) вам
-
например,
0,05.
предоставляется возможность
определить, куда инструмент должен выводить результаты. Выберите здесь па
раметр Выходной интервал
(Output Range)
Fl,
и укажите, к примеру, ячейку
поместив ссылку на нее в соответствующее поле.
А
1
2
в
с
МодельА
КулЬ1ура
8,3
7,1
7,8
1
з
4
5
Е
D
МодельБ
Модель В
1
8,2:
1
9,4:
9,9:
7,9:
9,2:
1
7,3
б,4
б,8
8,4
Культура 2
б,7
7
6,2
8
7,4
9
10,1
10 Культура 3
10,7
11
9,8
12
13 -------------- 9,6 ----14
б
1
8,5
7,9
8,2
7,б
8,ч
8
6,9
10,5
9,5
9,1
F
-~-- - - -
щч
'
1
J
Двух факторный дисперсионны~ анализ с повтор ...
В!одной интервал:
1SAS1 :SDS1З
!~]
Ч_11сло строк ДЛR выборкw. ~
1
l
[
~
х
?
Вl<одные данные
8"ьфа:
8,9:
8,5:
10,1:
1
10,71
1
н
G
ок
Отмена
1
]
.(;прав~
Параметры вывода
@ В!!!_ходной интервал:
1SFS1
О Новый рабочий дисr.
1
1• 1
1
О Новая рабочая ьниrа
10,2 ______9,8:
1
Рис.
9.35.
Диалоговое окно инструмента
Двухфакторный дисперсионный анализ с повторениями
Завершив настройку данных, нажмите на кнопку ОК, и инструмент выведет ре
зультаты в нескольких таблицах. Самые важные результаты находятся в таблице
Дисперсионный анализ (рис.
9.36).
Дисперсионный анализ
ss
df
F критическое
столбцы
MS
F
2 17,96194444 36,56030908
2 3,576944444 7,280625707
Р-Значение
35,92388889
7,153888889
О,002958792
З,354130829
Взаимодейсrвие
2,536111111
4
0,б34027П8
О,298457563
2,72Пб530б
13,265
27
О,49U9629б
58,87888889
35
Источник вариации
Выборка
Внутри
Итого
Рис.
9.36.
1,290520166
2,07178Е-08
З,354130829
Вывод инструмента Двухфакторный дисперсионный анализ с повторениями:
таблица Дисперсионный анализ
Надстройка Пакет анализа
1 253
Пояснение
В этом разделе для анализа ситуации, когда измерения выборки (в нашем случае
затраченное время) зависят от двух факторов (марки закваски и модели йогуртни
цы ), применен инструмент Двухфакторный дисперсионный анализ с повторе
ниями
в
(ANOVA: Two-Factor With Replication).
названии
инструмента
означает,
что
Словосочетание «с повторениями»
существует
несколько
точек
данных
для
каждой комбинации факторов.
Инструмент использует эти данные, чтобы оценить влияние каждого фактора и их
взаимосвязь. Для этого здесь проверяется нулевая гипотеза о том, что факторы
не влияют на результаты,
-
против альтернативной гипотезы о том, что это не так.
Самый важный статистический показатель, генерируемый рассматриваемым инст
рументом,
-
р-значения. Инструмент выводит три таких значения: по одному для
каждого фактора и еще одно для оценки взаимодействия между ними.
Главное р-значение помечено в таблице Дисперсионный анализ (см рис.
9.36)
как
Взаимодействие. Если этот показатель меньше уровня значимости (альфа), кото
рое вы установили на шаге
4,
то взаимодействие между двумя факторами сущест
венно влияет на результаты. В примере, показанном в этом разделе, р-значение для
взаимодействия равно
0,298,
и это не дает нам оснований предполагать, что взаи
мосвязи между маркой закваски и моделью йогуртницы влияют на время, затрачи
ваемое на приготовление йогурта.
Если р-значение
показателя
Взаимодействие больше уровня
значимости,
вам
необходимо рассмотреть р-значения для показателей Выборка и Столбцы. Если
какое-либо из этих значений меньше уровня значимости, то связанный с ним фак
тор существенно влияет на результаты. В примере, показанном в этом разделе,
р-значения показателей Выборка и Столбцы меньше уровня значимости
0,05,
а
это означает, что марка закваски и модель йогуртницы оказывают влияние на вре
мя, затрачиваемое на приготовление йогурта.
Инструмент Двухфакторный дисперсионный анализ с повторениями
Two-Factor With Replication)
(ANOVA:
работает с наборами данных, имеющими несколько
точек данных для каждой комбинации факторов. Если у каждого фактора сущест
вует только одна точка данных для каждой комбинации, используйте инструмент
Двухфакторный дисперсионный анализ без повторений
(ANOVA: Two-Factor
Without Replication).
9.19.
Проводим анализ Фурье
Задача
У вас есть периодический набор данных, и вы хотите преобразовать его в другую
область с помощью метода Быстрое преобразование Фурье
(FFT)).
(Fast Fourier transform
Глава
254
9
Решение
Предположим, вы фиксировали значения сигнала каждые О, 1 секунды, и вам надо
преобразовать результаты из временного ряда в частотную область. Пусть в диапа
зоне А2:А33 приведены индексы каждой точки данных, в диапазоне В2:В33
текшие секунды, в диапазоне С2:С33
-
-
ис
параметры сигнала, а первая строка диапа
зонов содержит метки. Для решения поставленной задачи:
1.
Перейдите на вкладку Данные
(Data) и в разделе Анализ (Analyze) нажмите
(Data Analysis ). Затем выберите из списка инструментов
анализа пункт Анализ Фурье (Fourier Analysis) и нажмите кнопку ОК, чтобы
открыть диалоговое окно инструмента (рис. 9.37).
кнопку Анализ данных
2.
В поле Входной интервал
(Input Range)
выберите диапазон С l :СЗЗ для списка
параметров сигнала, включая метку в ячейке С 1.
3.
Установите флажок Метки в первой строке
(Labels in first row),
т. к. первая
строка входных интервалов содержит метки данных.
4.
В поле Выходной интервал
(Output Range) раздела Параметры вывода (Output
D2 - чтобы значения FFT для каждой строки
вставьте ссылку на ячейку
options)
выводились рядом с исходными данными.
А
1
с
в
Индекс
Время
D
r!.,. ______
----,
!
Сигнал
2
о
3
4
1
2
0,2205845
о
0,1 -0,30238413
5
з
6
7
4
5
8
0,6 -1,03505546
9
6
7
10
8
32
33
34
30
31
0,8 0,01317697
3 0,36759665
к
0
х
?
~одной интервал :
SCS1 : SCSЗЗ
ок
~
Отмена
метки в первой строке
!;правка
Параметры выводi!I
г---
@ ~ходной иннрsал;
-0,67100523
3,1
н
G
входные д~нныt
0,3 0,14550661
0,4 0,57091573
0,5 -0,21725583
о, 7
F
Анали, Фурье
-0,5381976
0,2
Е
SDS2
О Новый рабочий аист:
О Новая рабочая ~нига
Оино,рсия
1,44106298
35
Рис.
9.37.
Диалоговое окно инструмента Анализ Фурье
Завершив настройку данных, нажмите на кнопку ОК, и инструмент выведет значе
ния
FFT
в виде комплексных чисел (рис.
9.38).
Пояснение
Инструмент Анализ Фурье
(Fourier Analysis) преобразует дискретные, периодиче
FFT. Этот алгоритм применяется во многих облас
ские данные с помощью метода
тях, включая машиностроение, музыку, науку и математику.
Распространенным
случаем
применения
метода
временного ряда в частотную область (рис.
9.39)
FFT
является
преобразование
с последующим использованим
выходных данных для построения графика зависимости модуля от частоты:
Надстройка Пакет анализа
А
1
2
в
Индекс
с
Время
О
3
1
4
О
Е
D
Сигнал
F
н
G
Фурье
0,2205845 "18,67848624&534&
2
0,1 -0,30238413 -7,9922.688ббб5048+б,19937416958388i
0,2 -0,5381976 -0,985540594832304+4,57066502113923i
5
3
0,3
6
4
7
5
8
6
9
7
0,6 -1,03505546
О, 7 -0,67100523
-О,869619340463479+1, 745%688515386i
10
8
0,8 0,01317697
7,138З1988451694+1,34735605307291i
32
30
31
33
255
0,14550661 8,1843853508566-7,71795940452832i
0,4 0,57091573 -2,41131761533812+5,95845960634738i
0,5 -0,21725583 -1,1878677499696б+З,38678196583616i
-О,932664&б4196749+2,З4683368788746i
3 0,36759665 -0,985540594832316-4,57066502113923i
3,1 1,44106298 -7,99226886665049-6,19937416958386i
34
Рис. 9.38. Вывод инструмента Анализ Фурье 4
♦
чтобы найти частоты, возьмите индекс каждой точки данных и разделите его на
количество точек данных, умноженное на частоту дискретизации;
♦
чтобы найти модули, используйте функцию мним.АВs (см. разд.
щающую абсолютное значение выходных данных
FFT,
каждое значение на количество точек данных, деленное на
в
с
4.18),
возвра
после чего разделите
2.
D
32
2
Интервал
О, 1
3
4
!индекс
Время
Сигнал
Фурье
Частота (Гц)
о
О,220584501801074
18.6784862485348
=А5/($В$1 *$В$2)
Величина
5
О
б
1
0,1
·О,302384133323371 -7.9922б88ббб5048+б.19937416958388i
=Аб/($В$1 *$В$2)
7 2
0,2
-О,538197597557162 -О.985540594832308+4.570бб50211392Зi
=А7/($В$1 *$В$2)
35 30
3
О,3 6759бб4б33049б
-О.98554059483232-4 . 570б650211392Зi
=АЗS/($В$1 *$В$2)
Зб
3,1
1,44106297815094
- 7.9922б8Вббб505-б . 1993741б95838б i
=АЗб/($В$1 *$В$2 )
31
':смним.двs(D5)/(В1/2)
':смним.АВS(Dб)/($В$1/2)
':смним.двs(D7)/($В$1/2)
':смним.двs(озs)/($В$1/2)
':смним.дВS(DЗб)/($В$1/2)
37
Рис.
9.39.
Формулы, вычисляющие частоту и модуль каждой точки
Рассчитав эти результаты, вы можете создать точечные диаграммы графиков зави
симости сигнала от времени (рис.
9 .40)
и модуля от частоты (рис.
9 .41 ).
Инструмент Анализ Фурье
(Fourier Analysis) также поддерживает обратные преоб
FFT в исходные данные. Чтобы воспользо
ваться этой возможностью, установите флажок Инверсия (Inverse) в диалоговом
окне инструмента (см. рис. 9.37).
разования, которые переводят значения
Особенности алгоритма
.
. Analysis)
Если у вас нет
• щей
4
FFT
требуют, чтобы инструменту Анализ Фурье
предоставлялся диапазон значений, кратных двум
2n
(2, 4, 8, 16, 32
(Fourier
и т. д.).
значений, вы должны заполнить конец ряда нулями до следую-
степени числа
2.
В первую строку была добавлена метка Фурье.
256
Глава
9
Сигнал/ Время
з
2
,.
i:;
1
х
8о
-1
-2 ()
0,5
1
1,5
2,5
2
3,5
Время
Рис.
9.40.
График, демонстрирующий зависимость сигнала от времени
Величина/ Частота
1
"'~
т
0,8
О,Б
~ 0,4
а:,
0,2
о
о
2
3
4
5
Частота (Гц)
Рис.
9.41.
График, демонстрирующий зависимость модуля от частоты
ГЛАВА
10
Финансовый анализ
Программа
Excel -
бесценный инструмент для финансового анализа, который
поможет вам решать широкий спектр задач. Вы можете использовать его для под
счета выплат по кредитам, прогнозируемой будущей стоимости инвестиций, амор
тизации активов и предполагаемого роста в соответствии с линейными, экспонен
циальными и сезонными моделями.
В этой главе вы познакомитесь с этими и другими областями финансового анализа,
применяя соответствующие функции, диаграммы, типы данных и листы прогноза
Excel.
10.1. Рассчитываем
платежи по кредитам
с фиксированной процентной ставкой
Задача
Вы решили взять кредит с фиксированной процентной ставкой и хотите узнать,
сколько вам надо будет платить в каждом периоде.
Решение
Предположим, вы собираетесь взять кредит на
12 месяцев в размере 50 ООО Р с го
10%, и вам надо узнать, каковы будут ежемесячные пла
тежи. Введите в ячейку В 1 процентную ставку ( 10% ), в ячейку В2 количество
месяцев ( 12), а в ячейку ВЗ тело кредита (50 ООО), как показано на рис. 10.1.
довой процентной ставкой
А
1
в
Процентная ставка (годовая)
2М~~
U
3 Сумма кредита
50 000,00 f
4 Будущая стоимость (шаровые платежи) -10 000,00 f
5
I
Рис.
10.1.
D
с
10%
Конец месяца
=ПЛТ(Вl/12;82;83)
Конец месяца (шаровые платежи)
=ПЛТ(Вl/12;82;83;84)
Начало месяца (шаровые платежи)
=ПЛТ(Вl/12; 82;83; 84; 1)
Формулы для подсчета ежемесячных платежей по кредиту
Если вы желаете произвести
12
равных платежей в конце каждого месяца, то рас
считать сумму каждого платежа можно с
помощью функции
используют в формуле =ПЛТ(ставка;кпер;пс), где ставка -
период, кпер -
-
-4 395,79f
-3599,97f
-3570,22f
плт. Обычно ее
это процентная ставка за
общее число периодов в сроке кредита, а пс -
номинальная или те-
258
1
Глава
10
кущая стоимость кредита. Поэтому для расчета своих платежей введите формулу
=ПЛТ (Bl/12 ;В2 ;ВЗ), которая вернет
--4395, 79 1?.
Убедитесь, что вы используете процентную ставку за период, чтобы аргументы
кпер и пс функции плт были приняты в одинаковых единицах изменения. То есть,
если вы работаете с ежемесячным периодами, и у вас годовая процентная ставка,
вам нужно разделить годовую ставку на
чтобы получить месячную ставку.
12,
Если вы предпочли взять шаровой кредит с конечным остатком для погашения
в конце срока, используйте формулу =ПЛТ(ставка;кпер;пс;бс), где бс -
относится
к стоимости, которая остается в конце срока погашения кредита (будущая стои
мость). Так, если вы собираетесь произвести
месяца и выплатить
значение
-10000
1О
ООО
1? в
12
равных платежей в конце каждого
конце срока погашения кредита, введите в ячейку В4
для будущей стоимости и рассчитывайте сумму ежемесячного
платежа, введя формулу =ПЛТ (Bl/12 ;В2 ;ВЗ ;В4), которая вернет
-3 599,97 1?.
Получаемые вами суммы, такие как номинальная стоимость кредита, в
Excel
счи
таются положительными значениями. И наоборот, суммы, которые вы должны вы
платить, такие как ежемесячные платежи или остаток суммы к оплате в конце сро
ка погашения кредита, считаются (и показываются в расчете) отрицательными.
Если же вы решили производить выплаты в начале каждого периода, используйте
формулу =ПЛТ(ставка;кпер;пс;бс;l). Так, чтобы рассчитать сумму каждого платежа,
производимого в начале месяца, введите формулу =ПЛТ(В1/12;В2;ВЗ;В4;1), которая
вернет
-3570,22 1?.
Пояснение
Функция плт предлагает удобный способ расчета платежей, которые вам необходи
мо будет произвести по кредиту с фиксированной процентной ставкой. При этом
вам достаточно указать процентную ставку и срок погашения кредита. Кроме того,
вы можете проверить, выгодно ли будет взять шаровой вариант кредита и произво
дить выплаты в начале или в конце каждого периода.
10.2. Рассчитываем
выплаты процентов
и основной суммы кредита
Задача
Вы решили взять кредит и хотите узнать суммы процентных начислений и погаше
ния основного долга за каждый период.
Решение
Предположим, вы собираетесь взять кредит на
довой процентной ставкой
10%,
12
месяцев в размере
50
ООО
1?
с го
и вам надо узнать, каковы будут ежемесячные
процентные платежи и сумма погашения основного долга. Введите в ячейку В 1
Финансовый анализ
А
В
1 Процентная сrавка (годовая)
2
Меся цы
З
Сумма кредита
С
10%
12
50000,001'
4
F
-248,081'
-4147,711'
-846,801'
-12 340,581'
Е
D
Проценты б месяц
=ПРПЛТ(В1/12;б; В2; В3 )
Тело б месяц
=ОСПЛТ(В1/12; б; В2; ВЗ )
Проценты 4-б месяц
=ОБЩПЛА Т(В1/U; В2; В3 ;4; б;О)
Тело 4-б месяц
=ОБLЦЦОХОД(В1/U; В2; В3 ;4; б;О)
259
5
Рис.
Формулы для подсчета процентных платежей и погашения основного долга
10.2.
процентную ставку
кредита
в ячейку В2 количество месяцев
(10% ),
ООО), как показано на рис.
(50
(12),
а в ячейку
83
тело
10.2.
Чтобы рассчитать процентные выплаты для одного периода, если вы производите
выплаты в конце периода, используйте формулу =ПРППТ(ставка;период;кпер;пс), где
ставка -
это процентная ставка за период, период -
периодов
Так,
в
если
сроке
вам
кредита,
а
пс
надо узнать
-
номинальная
это период, кпер или текущая
сумму процентных выплат за 6-й
=ПРПЛТ(В1/12;6;В2;В3)' что вернет
общее число
стоимость кредита.
месяц,
введите
-248,08 J?.
Подсчет процентных выплат за один период для шарового кредита (см. разд.
10.1)
или расчет выплат, производимых в начале периода, вы также можете выполнить
с
помощью
функции
ПРППТ.
период;кпер;пс;бс;тип), где бс
гашения
кредита,
а
тип
-
-
Обычно
ее
используют
в
формуле
=ПРППТ(ставка;
это стоимость, которая остается в конце срока по
определяет,
когда
вы
производите
платежи:
опустите
аргумент тип или установите его в значение О, если вы собираетесь производить
выплаты в конце периода (по умолчанию), или установите значение аргумента рав
ным
1,
~
если решили производить выплаты в его начале.
i
~
Если ваши выплаты по телу кредита одинаковы в каждом периоде, то для расчета
процентных платежей вы можете использовать функцию ПРОЦППАТ.
Функция осппт работает аналогично функции ПРППТ, за исключением того, что осnпт
используют
для
подсчета
суммы
погашения
основного
долга
за
один
период.
Обычно ее применяют в формуле =ОСППТ(ставка;период;кпер;пс;бс;тип), где аргумен
ты бс и тип -
необязательные. Так, чтобы рассчитать сумму погашения основного
долга для 6-го
месяца,
введите
формулу =ОСПЛТ(В1/12;6;В2;ВЗ),
которая
вернет
-4147,71 J?.
Если вам надо рассчитать процентные выплаты между двумя периодами (включи
тельно), то вы можете использовать формулу =ОБЩППАТ(ставка;кпер;пс;нач_период;
кон_период;тип), где нач_период и кон_период -
это начальный и конечный периоды, а
значение аргумента тип равно О, если вы производите платежи в конце периода, и
1,
если вы производите их в начале. Так, чтобы рассчитать процентные выплаты меж
ду 4-м и 6-м месяцами (включительно), введите формулу =ОБЩПЛАТ(В1/12;В2;ВЗ;4;6;0),
которая вернет
-846,80 J?.
Функция овпщоход работает аналогично функции ОБЩППАТ, за исключением того,
что овпщоход рассчитывает суммы погашения основного долга между двумя перио
дами. Так, чтобы рассчитать сумму погашения основного долга между 4-м и 6-м ме-
260
1
Глава
10
сяцами (включительно), введите формулу =ОБЩЦоход(В1/12;В2;ВЗ;4;б;О), что вернет
-2340,58 J.>.
Пояснение
Это решение пригодится, если вам нужно увидеть разбивку между процентным
выплатами и погашением основой суммы долга за заданный период или рассчитать
общие процентные выплаты. Эти значения изменяются в течение срока кредита:
сумма процентных выплат снижается, в то время как сумма погашения основного
долга увеличивается, поэтому вы тратите больше на выплату процентов в начале
срока, чем в конце.
10.3. Составляем
график амортизации кредита
с плавающей ставкой
Задача
Вы решили взять кредит с плавающей ставкой и хотите составить график аморти
зации, отображающий ежемесячные платежи, разбивку между процентным выпла
тами и погашением основой суммы долга и непогашенный остаток.
Решение
Предположим, вы собираетесь взять кредит на
12
месяцев в размере
50
ООО
1?
с пла
вающей процентной ставкой, и вам надо составить график амортизации (рис.
и
1.
10.4). Для
10.3
этого:
Создайте столбец для месяцев, введя Месяц в ячейку А 1, и О,
1, 2, ... , 11, 12
в ячейки А2:А\4.
2.
Создайте столбец для годовой ставки, введя Годовая ставка в ячейку В
I
и под
ходящие годовые ставки для каждого месяца в ячейки В3:В 14.
3.
Создайте столбец для платежей, введя Ежемесячные платежи в ячейку С 1
и формулу =IШТ(ВЗ/12;$А$14-А2;F2) в ячейку С3 (см. далее разд. «Пояснение»).
После чего заполните диапазон С4:С\4 формулой из ячейки С3.
4.
Создайте столбец для процентов, введя Выплата процентов в ячейку О I и
формулу =ПРIШТ(ВЗ/12;$А$14-А2;F2) в ячейку
04:014
5.
формулой из ячейки
03.
После чего заполните диапазон
03.
Создайте столбец для основного долга, введя Выплаты по основному долгу
в ячейку
El
и формулу =ОСIШТ(ВЗ/12;$А$14-А2;F2) в ячейку Е3. После чего запол
ните диапазон Е4:Е14 формулой из ячейки Е3.
6.
Создайте столбец для баланса, введя Баланс в ячейку
формулу =F2+ЕЗ в ячейку
F3,
F 1, 50000
лансу предыдущего месяца. После чего заполните диапазон
ячейки
F3.
в ячейку
F2
и
чтобы добавить погашение основного долга к ба
F4:Fl4
формулой из
Финансовый анализ
А
с
в
1 : месяц
Годовая ставка
Е
D
Ежемесячные платежи
261
F
Выплаты по основному долrу
Выплата процентов
Баланс
50000,00/?
2
о
3
1
12%
-4442,44/?
-500,00/?
4
2
12%
-4442,44/?
5
3
12%
-4442,44/?
6
4
6%
7
5
8
6
9
10 I
7
11
12
10
13
11
14
12
7%
-4 384,49
-3 942,44 /?
46 057,561'
-460,58 /?
- 3981,8611
42075,70/?
-420,76/?
-4021,681'
38054,01/?
-4334,63 /?
-190,271'
-4144,361'
33 909,65/?
12%
-4431, бб/?
-339,101'
-4092,571'
2.9817,091'
14%
-4460,671'
-347,871'
-4112,801'
2.5 704,2.8 11
10%
-4409,861'
-2.14,201'
-4195,ббl'
2.1508,621'
8
8%
-4 388,141'
-143,391'
-4 244,751'
17263,871'
9
10%
-4406,261'
-143,871'
-4 262.,391'
13 001,481'
7%
-4384,49/?
-75,84
Р
-4 308,641'
8692,841'
7%
-4 384,491'
-50,711'
-4 333,781'
4 359,061'
Р
-2.5,43 1'
-4
359,Об 1'
0,001'
15
Рис.
в
А
1
2
1Месяц
10.3.
График амортизации кредита с переменной ставкой
с
Годовая ставка Ежемесячные платежи
Е
D
F
Выплата процентов
Выплаты по основному долгу
Баланс
50000
о
3 1
0,12
=ПЛТ(В3/12;$А$14-А2;F2)
=ПРПЛТ(В3/12;1;$А$14-А2;F2)
=ОСПЛТ(ВЗ/12;1;$А$14-А2;F2)
=f2+ЕЗ
4 2
0,12
=ПЛТ(В4/12;$А$14-АЗ;F3)
=ПРПЛТ(В4/12;1;$А$14-АЗ;FЗ)
=ОСПЛТ(В4/12;1;$А$14-А3;FЗ)
=FЗ+Е4
5
з
0,12
=ПЛТ{ВS/12;$А$14-А4;F4)
=ПРПЛТ(В5/12;1;$А$14-А4;F4)
=ОСПЛТ(В5/12;1;$А$14-А4;F4)
=F4+E5
б
4
0,06
=ПЛТ(Вб/12;$А$14-А5;F5)
=ПРПЛТ(Вб/12;1;$А$14-А5;F5)
=ОСПЛТ(Вб/12;1;$А$14-А5;F5)
=FS+E6
7 5
0,12
=ПЛТ(В7/12;$А$14-Аб;Fб)
=ПРПЛТ(В7/12;1;$А$14-Аб;Fб)
=ОСПЛТ(В7/12;1;$А$14-Аб;Fб)
=fб+Е7
б
0,14
=ПЛТ(В8/12;$А$14-А7;F7)
=ПРПЛТ(В8/12;1;$А$14-А7;F7)
=ОСПЛТ(В8/12; 1;$А$14-А7;F7)
=F7+E8
8
9 7
0,1
=ПЛТ(В9/12;$А$14-А8;F8)
=ПРПЛТ(В9/12;1;$А$14-А8;F8)
=ОСПЛТ(В9/12;1;$А$14-А8;F8)
=f8+E9
10 8
0,08
=ПЛТ(В10/12;$А$14-А9;F9)
=ПРПЛТ(В10/12;1;$А$14-А9;F9)
=ОСПЛТ(В10/12;1;$А$14-А9;F9)
=F9+E10
11 19
12 10
0,1
=ПЛТ(В11/12;$А$14-А10;F10)
=ПРПЛТ(В11/12;1;$А$14-А10;F10)
=ОСПЛТ(В11/12; 1;$А$14-А10;F10)
=FlO+Ell
0,07
=ПЛТ(B12/12;$A$14-All;Fll}
=ПРПЛТ(В12/12;1;$А$14-д11;F11)
=OCПЛТ(B12/12;1;$A$14-All;Fll}
=Fll+E12
13 11
0,07
=ПЛТ{В13/12;$А$14-А12;F12} =ПРПЛТ(В13/12;1;$А$14-А12;F12)
=ОСПЛТ(В13/12;1;$А$14-А12;F12}
=fl2+El3
14 \12
0,07
=ПЛТ(В14/12;$А$14-А13;F13}
=ПРПЛТ(В14/12;1;$А$14-А1З;F13)
=ОСПЛТ(В14/12;1;$А$14-А13;F13)
=Fl3+El4
15
Рис.
10.4.
Формулы для графика амортизации кредита с переменной ставкой
Пояснение
В этом разделе для создания графика амортизации кредита используются функции
плт, ПРПЛТ и осплт. Каждый месяц в графике рассматривается как первый период со
кращающегося срока кредита, где значение основного долга
-
остаток баланса.
Это достигается с помощью следующих аргументов:
♦
ставка
♦
число периодов
-
соответствующая годовая ставка для каждого месяца, деленная на
-
12;
количество месяцев, оставшихся в сроке: общая сумма меся
цев минус номер предыдущего месяца;
♦
основной долг
♦
период для каждого месяца (используется функциями пРплт и осплт)
-
оставшийся баланс предыдущего месяца;
-
равен
1.
Глава
262
10.4.
10
Рассчитываем срок для кредита
с фиксированной ставкой
Задача
Вы решили взять кредит с фиксированной ставкой и хотите узнать, каким должен
быть его срок.
Решение
Предположим, вы собираетесь взять кредит в размере
ной ставкой
3000
10%.
50
ООО Р с годовой процент
Вы можете позволить себе в конце каждого месяца выплачивать
Р, но вам надо узнать минимально возможный срок. Введите в ячейку В
центную ставку
(10%),
тело кредита
ООО), как показано на рис.
(50
в ячейку В2 ежемесячные платежи
в
А
с
1 Процентная ставка (годовая}
2 Ежемесячные платежи
-3 ()(Ю, 00 Р
З
50()(Ю,00Р
Сумма кредита
10%
(-3000),
I
про
а в ячейку В3
10.5.
о
Число периодов
F
Е
=КПЕР(В1/12; В2; ВЗ}
G
18,01&5
4
Рис.
10.5.
Формула для подсчета количества периодов
Эту задачу вы можете решить с помощью функции КПЕР. Обычно ее используют
в формуле =КПЕР (ставка;плт;пс), где ставка выплата за период, а пс -
для
нет
расчета своих
это процентная ставка за период, плт
номинальная или текущая стоимость кредита. Поэтому
платежей введите формулу =ЮIЕР(В1/12;В2;ВЗ),
которая
вер
18,0185.
В функцию КПЕР можно добавить и дополнительные аргументы, чтобы учесть ша
10.1) или проведение платежей в начале каждого периода.
ровой кредит (см. разд.
Используйте для этого формулу =КПЕР(ставка;плт;пс;бс;тип), где бс которая остается в конце срока погашения кредита, а тип
-
стоимость,
определяет,
когда вы
производите платежи: опустите аргумент тип или установите его в значение О, если
вы собираетесь производить выплаты в конце периода (по умолчанию), или уста
новите значение аргумента равным
1,
если решили производить выплаты в его на
чале.
Пояснение
В этом разделе предлагается полезный способ выяснения минимального срока кре
дита с фиксированной процентной ставкой и номинальной стоимостью, который вы
можете себе позволить.
Если фиксированным является срок, а не процентная ставка, то можно использо
вать функцию СТАВКА, позволяющую определить максимальную ставку за период,
которую вы в состоянии выплачивать. Более подробно об этой функции рассказано
в разд.
10.10.
Финансовый анализ
10.5. Рассчитываем
1
263
номинальную или текущую стоимость
Задача
Вы решили взять кредит с фиксированной ставкой и сроком и хотите узнать, какую
номинальную стоимость можете себе позволить.
Решение
12 месяцев с фиксированной годо
5000 Р в конце каждого месяца и вам
надо узнать максимальную номинальную стоимость. Введите в ячейку В 1 процент
ную ставку (10%), в ячейку В2 число месяцев (12), а в ячейку 83 ежемесячные пла
тежи (-5000), как показано на рис. 10.6.
Предположим, вы собираетесь взять кредит на
вой процентной ставкой
10%
и с выплатой
Процентная ставка (годовая}
2
3
Месяцы
О
С
В
А
1
10%
Номинальная стоимость
F~-----E------'-- - - ' Sб 872,54 f
=ПС(В1/U;ВZ;ВЗ}
G
12
-5000,00F
Ежемесячные платежи
4
Рис.
10.6.
Формула для подсчета номинальной стоимости
Вы можете решить эту задачу с помощью функции пс . Обычно ее используют
в формуле =ПС (ставка;кпер;птл;бс;тип), где ставка -
это процентная ставка за пери
общее число периодов в сроке кредита, птл -
од, кпер -
обязательный аргумент)
-
выплата за период, бс (не
относится к стоимости, которая остается в конце срока
погашения кредита, а тип (необязательный аргумент)
-
определяет, когда вы про
изводите платежи: опустите аргумент тип или установите его в значение О, если вы
собираетесь производить выплаты в конце периода (по умолчанию), или установи
те значение аргумента равным
1,
если решили производить выплаты в его начале.
Так, для расчета своего кредита введите формулу =ПС(В1/12;В2;ВЗ), которая вернет
56 872,54
Р.
Пояснение
Функция пс возвращает номинальную или текущую стоимость. Как видите, эта
функция работает аналогично функциям плт, ПРПЛТ, осплт, КПЕР и СТАВКА, которые рас
сматривались в предыдущих разделах.
10.6. Конвертируем
номинальную процентную ставку
в реальную
Задача
Вы знаете номинальную годовую процентную ставку инвестиции и хотите найти
реальную годовую процентную ставку.
Глава
264
10
Решение
Номинальная процентная ставка
-
это годовая процентная ставка до начисления
каких-либо процентов, т. е. до того, как какие-либо полученные проценты будут
добавлены к инвестиции.
Эффективная процентная ставка включает сложный
процент, т. е. годовую процентную ставку, которую фактически приносит инвес
тиция,
-
проценты на основную сумму инвестиции или реинвестированные
про
центы.
Чтобы конвертировать номинальную ставку в реальную, используйте формулу
=ЭФФЕКТ(номинальная_ставка;кол_пер), где номинальная_ставка
инвестиции, а кол_ пер -
-
это номинальная ставка
количество периодов наращения за год (количество перио
дов, когда любые полученные проценты реинвестируются). Например, если номи
нальная процентная ставка инвестиции равна
10% и
начисляется ежеквартально, вы
можете рассчитать реальную процентную ставку, введя формулу =ЭФФЕКТ(О,1;4), что
вернет О, 103 8.
Инвестиции предполагают непрерывное начисление сложного процента, когда лю
бой процент все время реинвестируется, и вы можете конвертировать номинальную
ставку в реальную с помощью формулы =ЕХР(номинальная_ставка)-1. Так, если номи
нальная процентная ставка инвестиции равна
10%
и используется непрерывное на
числение сложного процента, для расчета реальной процентной ставки введите
формулу =ЕХР (О, 11 -1, которая вернет О, 1052.
Чтобы конвертировать реальную процентную ставку в номинальную, используйте
формулу =НОМИНАЛ (реальная_ ставка; кол_ пер) . Так, если реальная процентная ставка
инвестиции равна
12,36%,
и она начисляется каждые
6
месяцев, вы можете рассчи
тать номинальную процентную ставку, введя формулу =HCМfilAЛ(0,1236;2), что вер
нет О, 12.
Если в инвестициях используется непрерывное начисление сложного процента,
конвертировать реальную
процентную ставку в
номинальную
можно с
помощью
формулы =LN (реальная_ ставка+ 1). Так, если реальная процентная ставка инвестиции
равна
12,36%,
и используется непрерывное начисление сложного процента, для
расчета номинальной процентной ставки введите формулу =LN (О, 1236+1), которая
вернет
0,1165.
Пояснение
В этом разделе показано, как можно рассчитать
процентную ставку,
которую
реально приносит инвестиция, когда объявлена только номинальная ставка. Вы
также можете использовать этот подход для сравнения двух инвестиций, в одной из
которых указана номинальная ставка, а в другой
-
реальная.
Финансовый анализ
10.7. Рассчитываем
265
будущую стоимость
единовременной инвестиции с фиксированной ставкой
Задача
Вы осуществили единовременную инвестицию с фиксированной процентной став
кой и хотите узнать, какой окажется ее стоимость в будущем.
Решение
Предположим, вы собираетесь инвестировать
надо узнать будущую стоимость
в ячейку В
I
-
номинальную процентную ставку
инвестирования
показано на рис.
(2), а
10.7.
А
В
2
Периоды {года)
Изначальный вклад
на два года под
(7% ),
С
7%
2
и вам
7%,
в ячейку В2 количество лет для
в ячейку В3 сумму единовременного вклада
1 fпроцентная ставка (годовзя}
3
50 ООО J>
стоимость инвестиции в конце срока. Введите
О
(-50 ООО),
Е
Будущая стоимость (ежегодное начисление сложных процентов)
-=БС(Вl;В2;0;83)
Будущая стоимость (непрерывное начисление сложных процентов) =· ВЗ•ЕХР(Вl •в2)
как
F
57 245,ООР
57 513,69 Р
•50 000,00 Р
4
Рис.
10.7.
Расчет будущей стоимости единовременной инвестиции с фиксированной ставкой
Если инвестиции начисляются ежегодно, вы можете решить эту задачу с помощью
функции
БС.
Обычно
ее
используют
в
формуле
ставка ~ зто процентная ставка за период, кпер в сроке, а пс -
=БС(ставка;кпер;О;пс),
где
общее число периодов наращения
изначальная сумма вклада. Значение третьего аргумента здесь равно О
(он относится к регулярным вложениям, которые рассматриваются в разд.
10.9).
Так, для расчета будущей стоимости единовременной инвестиции с фиксированной
ставкой введите формулу =БС(В1;В2;О;ВЗI, которая вернет
57 245,00 J>.
Убедитесь, что вы используете процентную ставку за период
-
чтобы аргументы
ставка и кпер функции БС были приняты в одинаковых единицах изменения. То
есть, если у вас номинальная годовая процентная ставка и инвестиции начисляют
ся ежемесячно, вам нужно разделить годовую ставку на
12,
чтобы получить месяч-
ную процентную ставку.
Если в инвестициях используется непрерывное начисление сложного процента,
рассчитать
ее
будущую
стоимость
вы
сможете
-пс*ЕХР (номинальная_ ставка* кпер), где номинальная_ ставка
ная ставка за период, а кол_пер -
-
с
помощью
формулы
зто номинальная процент
количество периодов. Так, для расчета будущей
стоимости единовременной инвестиции с непрерывным начисленим сложного про
цента введите формулу =-ВЗ*ЕХР(Вl*В21, что вернет
57513,69 J>.
Пояснение
В этом разделе описываются два метода, которые вы можете задействовать для
расчета будущей стоимости единовременной инвестиции с фиксированной ставкой.
Глава
266
10
Как правило, они основаны на применении функции вс, если только в инвестициях
не
используется
непрерывное
начисление
сложного
процента,
-
в
этом
случае
функция вс даст неточные результаты.
10.8. Рассчитываем
будущую стоимость
единовременной инвестиции с плавающей ставкой
Задача
Вы осуществили единовременную инвестицию с плавающей процентной ставкой
и хотите узнать, какой окажется ее стоимость в будущем.
Решение
Предположим, вы собираетесь инвестировать
50
ООО
1?
на три года с ежегодным на
числением сложных процентов. Номинальная годовая ставка равна
год,
за второй и
2% -
5% -
82:84 укажите
- - -А
процентные ставки (рис.
В
1
Изначальный вклад
С
-50000,001?
2
Год
1 Ставк а
3
Год
2 Ставка
2%
4
Год З Ставка
5%
за первый
за третий, и вам надо узнать будущую стоимость
инвестиции. Введите в ячейку В 1 сумму единовременного вклада
диапазоне
7%
D
Е
Будущая стоимость
(-50
ООО), а в
10.8).
F
=БЗРАСПИС( - Вl; В2: 84)
G
57298,501?
7%
5
Рис.
10.8.
Расчет будущей стоимости инвестиции с помощью функции БЗРАСПИС
Вы можете решить эту задачу с помощью функции БЗРАспис. Обычно ее используют
в формуле =БЗРАСПИС(-пс;план), где план -
это массив ставок для каждого периода
начисления инвестиции. Формула подразумевает, что аргумент пс является отрица
тельной величиной, поскольку он определяет сумму, которую вы платите. Так, для
расчета будущей стоимости инвестиции с помощью функции БЗРАспис введите фор
мулу =БЗРАСПИС(-Вl;В2:В4), которая вернет
~
-1
57298,501?.
Обратите внимание, что функция БЗРАСПИС использует противоположный знак для
~ своего аргумента пс, в отличие от функции БС (см. разд.
10. 7).
Пояснение
Для расчета единовременной инвестиции с плавающей процентной ставкой приме
няется функция БЗРАСПИС.
Обратите внимание, что аргумент план- это массив, поэтому, если вам надо пере
дать в функцию список процентных ставок, которые не находятся в диапазоне
Финансовый анализ
ячеек,
они
должны
быть
заключены
в
фигурные
скобки,
267
например,
так:
=БЗРАСПИС(SОООО;{О,07;0,02;0,05}).
10.9. Рассчитываем
будущую стоимость инвестиции
с регулярными вложениями
Задача
Вы осуществляете регулярные вложения в инвестицию с фиксированной процент
ной ставкой и хотите узнать ее будущую стоимость.
Решение
Предположим, вы собираетесь вносить
3000 J?
в начале каждого месяца в инвести
цию с номинальной годовой процентной ставкой
вашей инвестиции через год. Введите в ячейку
ку
(7% ),
7%, и вам надо узнать стоимость
В I номинальную процентную став
в ячейку В2 количество платежных периодов, а в ячейку В3 сумму ежеме
сячного вклада
(-3000),
А
как показано на рис.
в
1
2
ГодоваR процентная ставка
З
ЕжемесRчное вложение
4
Периоды начисления
Платежные периды
D
с
7,00%
10.9.
Е
Будущая стоимость =БС(Вl/12; В2; 83 ; О; 1}
F
37 394,63 f
G
12
-3 000,00f
12
5
Рис.
10.9.
Расчет будущей стоимости регулярных вложений с помощью функции БС
Если инвестиционные платежи и периоды начисления одинаковы (например, еже
месячные), вы можете решить эту задачу с помощью функции БС. Обычно ее ис
пользуют в формуле =БС ( ставка ;кпер; плт; пс;тип), где ставка за период, кпер -
общее число периодов, плт -
период, пс (необязательный аргумент)
тип
-
-
это процентная ставка
регулярная инвестируемая сумма за
исходное единовременное вложение, а
определяет, когда вы производите платежи: опустите аргумент тип или уста
новите его в значение О, если вы собираетесь производить выплаты в конце перио
да (по умолчанию), или установите значение аргумента равным
1,
если решили
производить выплаты в его начале. Так, для расчета будущей стоимости регуляр
ных вложений с помощью функции БС введите формулу =БС(В1/12;В2;ВЗ;О;1), кото
рая вернет
37 394,63 J?.
Если инвестиционные платежи и периоды начисления различаются, рассчитать бу
дущую стоимость с помощью функции БС не получится, поскольку она использует
один и тот же аргумент для обоих значений. Однако вы можете в этом случае вруч
ную рассчитать будущую стоимость, составив график инвестиций. Например, на
рис.
10.1 О
показаны формулы для графика инвестиций, подсчитывающие будущую
стоимость инвестиции, проценты по которой начисляются ежегодно, где вложение
составляет
3000 J?
7%.
ставка равна
в начале каждого месяца, а номинальная годовая процентная
Глава
268
10
в
А
,---
1
2
Платежные nериды
0,07
12
3
Ежемесячное вложение
-3000
4
Периоды начисления
1
Годовая процентная ставка
с
D
5
Накопленный вклад
Процентная ставка за месяц
7 1
=д7•$В$3
=В7*$В$1/$В$2
8 2
=А8*$В$3
=88*$В$1/$В$2
9 3
=А9*$В$З
=В9•$В$1/$8$2
18 12
19
20 Будущая
21
=А18*$В$З
=В18*$В$1/$В$2
б
Месяц
=-СУММ(С7:С18; В18)
стоимость
Рис.
10.10.
Подсчет будущей стоимости с помощью графика инвестиций
Пояснение
Решение, приведенное в этом разделе, основывается на рекомендациях разд.
1О. 7
и демонстрирует дополнительные способы применения функции вс для подсчета
будущей стоимости инвестиции. Однако использовать функцию вс имеет смысл,
если инвестиционные платежи и периоды начисления совпадают, если же они раз
личны, результаты функции вс окажутся неточными, и вам стоит вместо этого соз
дать график инвестиций.
Вы можете сочетать решения из разд. 10.7 и 10.9 для нахождения будущей стои
мости инвестиции с фиксированной процентной ставкой, когда эта инвестиция
предусматривает как единовременную выплату, так и регулярные вложения.
10.1 О. Достигаем
инвестиционных целей
Задача
Вы поставили перед собой инвестиционную цель и хотите узнать требуемый срок,
исходную сумму единовременной выплаты, сумму регулярных платежей или срок
инвестирования.
Решение
Предположим, у вас есть инвестиция, и вам надо, чтобы ее будущая стоимость со
ставила
400
ООО Р. Введите в ячейку В 1 оценку годового процента
ку В2 число месяцев
в ячейку В4
(40000).
(60),
изначальный
(5%),
в ячейку ВЗ сумму ежемесячного довложения
вклад
(-10000),
в ячей
(-5000),
а в ячейку В5 будущую стоимость
Тип инвестиции в ячейке Вб установлен в значение О
-
это означает, что
регулярные вложения осуществляются в конце каждого месяца (рис.
10.11 ).
Чтобы определить срок инвестирования (подсчитать количество периодов), вы мо
жете применить функцию КПЕР (см. разд.
10.4).
Например, для расчета на основе
Финансовый анализ
269
оценок из диапазона В 1:В4 количества месяцев, необходимых для достижения
будущей стоимости в размере
которая вернет
В
А
1
400
j процентна~ка (годовая)
введите формулу =КПЕР(В1/12;ВЗ;В4;В5;В6),
J->,
4
Изначальный вклад
5
Будущая стоимость
400000,001?
Месяцы
З jl Ежемесячное вложение
D
С
5%
60
-5000,001?
-10000,001?
2
ООО
67, 19.
F
Е
Число периодов
=КПЕР(В1/U; ВЗ; В4; В5; Вб)
67,19157954
-46 728,621'
-5 693, 111?
0,81%
Изначальный вклад
=ПС(В1/U; В2; В3;В5; Вб)
Ежемесячное вложение
=ПЛТ(Вl/12; 82; В4; В5; Вб)
Месячная ставка
=СТАВКА(В2; 83; В4; В5 ; Вб)
Годовая ставка
=12*СТАВКА(В2;ВЗ ; В4;85;Вб
9,67%
о
б J ТИП
7
Рис.
10.11.
Формулы для достижения инвестиционных целей
ЧтоЬы выяснить, каков должен быть изначальный вклад, вы можете применить
функцию пс (см. разд.
10.5).
Например, для расчета изначального вклада, необхо
димого для достижения будущей стоимости в размере
=ПС(В1/12;В2;ВЗ;В5;В6), которая вернет-46
400
ООО
введите формулу
J->,
728,62 J->.
Чтобы узнать, какова должна быть сумма регулярных вложений, вы можете приме
нить функцию ПJIT (см. разд.
10.1).
Например, для расчета ежемесячных довложе
ний, необходимых для достижения будущей стоимости в размере
те формулу =IШТ(В1/12;В2;В4;В5;В6), которая вернет-5693,11
400
ООО
J->,
введи
J->.
Чтобы вычислить процентную ставку за период, вы можете использовать функ
цию СТАВКА. Например, для расчета месячной процентной ставки, необходимой
для
достижения
будущей
стоимости
=СТАВКА(В2;ВЗ;В4;В5;В6), которая вернет
в
годовую
ставку,
введите
в
размере
0,81%.
400
ООО
J->,
введите
формулу
Чтобы преобразовать этот результат
формулу =12*СТАВКА(В2;ВЗ;В4;В5;В6),
которая
вернет
9,67%.
Пояснение
В этом разделе представлены различные варианты, которые помогут вам достигать
ваших инвестиционных целей. Подумайте, какой вариант лучше всего подходит
для вашей ситуации, и воспользуйтесь соответствующей формулой.
10.11. Рассчитываем
чистую приведенную стоимость
Задача
Вы хотите узнать, является ли предлагаемый проект финансово жизнеспособным.
Решение
Предположим, вам предлагается проект, и вы решили узнать, будет ли он прибыль
ным, прежде чем приступить к работе над ним. Оценить это можно, рассчитав чис
тую приведенную стоимость
-
чистую стоимость текущих и будущих денежных
Глава
270
10
потоков, дисконтированных к нынешнему дню. Если полученное значение превы
сит О, проект, вероятно, принесет прибыль.
Если денежные потоки периодические и возникают в конце каждого периода, вы
можете рассчитать чистую
приведенную стоимость с
помощью
функции
Обычно ее используют в формуле =ЧПС(ставка;значения), где ставка дисконтирования (например, процентная ставка), а значения -
чпс.
это ставка
список денежных
потоков в порядке их возникновения. Так, если ячейка В4 содержит ставку дискон
тирования
10%, а в диапазоне B2:F2 приведены денежные потоки: -20 ООО J.>,
-5000 J.>, 2000 J.>, 15 ООО J.> и 25 ООО J.>, расчет чистой приведенной стоимости по фор
муле =ЧПС (В4;В2: F2) вернет4956,81 J.>(рис.10.12).
А
в
1
iгод -
:
J Чисп,1е денежные потоки
4
Ставка дисконтирования
5
Чистая приведенная стоимость =ЧПС(В4;
с
Е
D
2
з
-20000,00F -5 000,00 Р
2000,ООР
1
r;
F
4
5
15 000,00 Р 25000,00 Р
10%
4 956,81 Р
B2:F 2)
б
Рис.
1
•
10.12.
Расчет чистой приведенной стоимости с помощью функции ЧПС
Не включайте первоначальные платежи, произведенные в начале проекта, в значения, передаваемые функции чпс, которая предполагает, что денежные потоки
.
возникают в конце каждого периода. Вместо этого выполните расчет чистой привеL__
денной стоимости путем вычета первоначальных платежей из функции чпс. Так,
если первоначальный платеж составил
1О ООО
Р, вы должны рассчитать чистую
приведенную стоимость по формуле =ЧПС (В4 ;В2: F2) -10000, которая возвращает
5043,19
Р.
Если денежные потоки не периодические, вы можете рассчитать чистую приведен
ную стоимость с помощью функции чистнз. Обычно ее используют в формуле
=ЧИСТНЗ (ставка;значения;даты), где
денежные потоки, а даты
-
ставка
-
это ставка дисконтирования, значения
указывают дату
каждого из
них,
причем
первая дата
вводится первой. Так, если ячейка В4 содержит ставку дисконтирования, в диапа
зоне
B2:F2 приведены денежные потоки, а в диапазоне В 1:F 1 указаны даты:
2023, 15 августа 2023, 17 апреля 2024, 30 июня 2024 и 16 мая 2025, расчет
чистой приведенной стоимости по формуле =ЧИСТНЗ(В4;В2:F2;В1:F1) вернет I О 683, 13
28
марта
J.>(рис.10.13).
А
1
в
Дата
: ! Чистые денежные потоки
4
5
···•········· ·•········--··
с
о
Е
15-авг-2023
17-anp-2024
ЗО-июн-2024
lб-май-2.025
-20000,ООР
-5 000,ООР
2000,ООР
15000,0011
25000,0011
10%
Ставка дисконтирования
Чистая приведенная стоимость
=ЧИСТНЗ(В4; В2:F2; В1 :F 1)
10683,1311
б
Рис.
10.13.
F
28-мар-2023
Расчет чистой приведенной стоимости с помощью функции чистнз
Финансовый анализ
1
271
Пояснение
Расчет чистой приведенной стоимости является полезным способом оценки веро
ятности прибыльности предлагаемого проекта. Вы также можете использовать этот
метод для сравнения прибыльности нескольких проектов.
10.12. Рассчитываем
внутреннюю ставку доходности
Задача
Вы хотите найти ставку дисконтирования для серии денежных потоков, при кото
рой чистая приведенная стоимость будет равна О.
Решение
Внутренняя ставка доходности
стоимость (см. разд.
10.11)
это ставка, для которой чистая приведенная
-
равна О.
Если денежные потоки периодические и возникают в конце каждого периода, вы
можете рассчитать внутреннюю ставку доходности с помощью функции вед. Обыч
это список
но ее используют в формуле =Вед (значения; предположение ) , где значения -
денежных потоков в порядке их возникновения, а предположение (необязательный
аргумент)
-
первоначальное предположение (см. далее разд. «Пояснение»). Так,
B2:F2 приведены денежные потоки: -20 ООО 1?, -50001?, 2000 1?,
25 ООО 1?, расчет внутренней ставки доходности за указанный период по
формуле=всд(В2:F2) вернет 16,85%(рис. 10.14).
если в диапазоне
15 ООО 1?
и
с
в
А
1
Год
2
Чистые денежные потоки
1
F
Е
о
4
з
2
G
5
-20 000,00 Р -5 000,00 Р 2 000,00 Р 15 000,00 Р 25 000,00 Р
з
4
5
Внутренняя ставка ДОХОДНОСТИ
Рис.
10.14.
=ВСД(В2:F2)
lб,85%
Расчет внутренней ставки доходности с помощью функции вед
Если денежные потоки не периодические, вы можете рассчитать внутреннюю став
ку доходности с помощью функции чиетвндох. Обычно ее используют в формуле
=ЧИеТВНДОХ (значения;даты;предположения), где значения
-
ЭТО денежные ПОТОКИ, даты
указывают дату каждого из них (первая дата вводится первой), а предположения (не
обязательный аргумент)
B2:F2
-
первоначальное предположение. Так, если в диапазоне
приведены денежные потоки, а в диапазоне В 1:F 1
-
даты, расчет внутрен
ней ставки доходности за указанный период по формуле =чиствндох(В2:F2;В1:F1)
вернет
25,34%
(рис.
10.15).
Функции вед и чиетвндох предполагают, что процентная ставка, которую вы платите
за деньги, используемые в денежных потоках, совпадает с процентной ставкой, по
лучаемой при реинвестировании. Если эти ставки различаются, их можно учесть,
Глава
272
10
рассчитав модифицированную внутреннюю ставку доходности для серии периоди
ческих денежных потоков с помощью функции мвсд. Обычно ее используют в фор
муле =МВСД (значения;ставка_финансирования;ставка_реинвестирования), где значения
список
денежных
процентная
потоков
ставка,
реинвестирования -
в
которую
порядке
вы
их
возникновения,
платите
за
-
это
ставка_финансирования
используемые
деньги,
а
ставка_
ставка, получаемая вами при их реинвестировании. Так, если
в ячейке В4 содержится ставка финансирования
( 10%), в ячейке В5 - ставка реин
(12%), а в диапазоне B2:F2 приведены денежные потоки: -20 ООО Р,
-5000 Р, 2000 Р, 15 ООО Р и 25 ООО Р, расчет внутренней ставки доходности за ука
занный период по формуле =МВСД(В2:F2;В4;В5) вернет 15,91% (рис. 10.16).
вестирования
в
А
1 fгод
2
3
Чистые денежные потоки
4
Внутренняя ставка ДОХОДНОСТИ
с
2S-мар-202.3
15-авг-2.02.3
-20000,001!
-5000,001!
=ЧИСТВНДОХ(В2:F2;81:F1)
F
Е
D
17-апр-2024 ЗО-июн-2024
2000,001!
15000,001!
16--май-2025
19000,001!
25,34%
5
Рис.
10.15.
Расчет внутренней ставки доходности с помощью функции чиствндох
в
А
1 [гм
2 jЧистые денежные потоки
с
F
Е
D
2
G
4
5
-20000,001! -5 000,001! 2000,001! 15 000,001!
25000,001!
1
3
з
4 ! Ставка финансирования
5 ставка реинвестирования
б
!
10%
12%
Модифицированная внутренняя
ставка доходности
=МВСД(В2:F2;В4;85)
15,91%
7
Рис.
10.16.
Расчет внутренней ставки доходности с помощью функции мвсд
Пояснение
В этом разделе представлены три варианта расчета внутренней ставки доходности.
Функции вед и чиствндох для расчета внутренней ставки доходности используют
итерацию, начиная со значения необязательного аргумента предположение (или О, 1 -
если он опускается). И если функции не могут найти результат после
20
попыток,
они возвращают ошибку в значении #число 1 •
Обычно предоставлять значение предположения следует, только если функция воз
вращает #число 1 или результат не близок к тому, которого вы ожидали.
Вы должны предоставить формулам с функциями вед, чиствндох и мвсд хотя бы
одно положительное и одно отрицательное значение
-
если вы этого не сделаете,
они не смогут рассчитать внутреннюю ставку доходности.
Финансовый анализ
10.13. Рассчитываем
273
амортизацию
Задача
У вас есть актив, и вы хотите рассчитать его амортизацию.
Решение
60 ООО Р со
2000 Р (ли
Пусть предполагаемый срок службы какого-либо актива стоимостью
ставляет
5 лет.
По истечении этого срока вы собираетесь продать его за
квидационная стоимость), и вам надо рассчитать амортизацию актива для каждого
года. Введите в ячейку В I первоначальную стоимость актива, в ячейку В2 ликви
дационную
(рис.
стоимость,
а
в
ВЗ
ячейку
предполагаемый
срок
службы
актива
10.17).
А
с
в
1
2
Первоначальная сrоммость
60000,001>
Ликвидационная стоимость
2000,001'
3
Срок службы (в годах)
D
5
4
Период
б
Амортизация
5
4
3
2
1
5
=АМ($8$1;$8$2;$8$3) =АМ($8$1;$8$2;$8$3) =АМ($8$1;$8$2;$8$3) =АПЛ($8$1;$8$2;$8$3) =АМ($8$1;$8$2;$8$3)
11600,001'
7
8
Рис.
10.17.
11600,ООР
11600,00 Р
11600,001>
11600,00 Р
Прямолинейный расчет амортизации с помощью функции АПЛ
Самым простым способом расчета амортизации актива считается прямолинейный
метод, при котором для каждого периода задается одно и то же значение амортиза
ции. Обычно для прямолинейного расчета используют формулу ~АПП(нач_ стоимость;
ост_ стоимость;время_эксплуатации), где нач_ стоимость
актива,
ост_стоимость
-
его ликвидационная
продать актив, а время_ эксплуатации -
-
это первоначальная стоимость
стоимость,
за
те для этого расчета формулу =АIШ(Вl;В2;ВЗ), которая вернет
Однако
Excel
которую
вы
ожидаете
предполагаемый срок службы актива. Введи
11 600 Р.
предлагает для расчета амортизации несколько функций, которые вы
можете использовать для разных целей:
♦
АПЛ
Она рассчитывает амортизацию с помощью прямолинейного метода.
♦
АСЧ
Она возвращает амортизацию по сумме чисел лет.
♦
ФУО
Она использует для расчета амортизации метод уменьшаемого остатка.
♦ ДЦОБ
Она рассчитывает амортизацию методом двойного уменьшения остатка (или
другим указанным вами методом).
Глава
274
♦
10
ПУО
Она рассчитывает амортизацию для любого указанного вами периода, включая
частичные периоды. По умолчанию функция ПУО использует метод двойного
уменьшения остатка (или другой указанный вами метод) и может переключить
ся на прямолинейный метод, если амортизация превышает величину уменьшае
мого остатка.
Пояснение
В этом разделе предлагаются несколько способов расчета амортизации актива.
Подумайте, какой тип амортизации соответствует вашему случаю, и примените со
ответствующую функцию.
10.14. Получаем
данные акций и валют
Задача
Вы хотите добавить в
Excel
котировки акций и курсы обмена валют, но не знаете,
как это сделать.
Решение
Если у вас есть активная подписка
Microsoft 365,
для получения котировок акций и
курсов обмена валют можно использовать типы данных Акции
(Stocks)
и Валюты
и Валюты
(Currencies)
(Currencies).
Microsoft
предупреждает, что типы данных Акции
(Stocks)
предоставляют информацию 5t>инансовых рынков «как е:ть», поэтому вы не долж
. ны
использовать ее для целеи торговли или консультации.
Котировки, к примеру, индекса
1.
Введите в ячейку А
звания
2.
-
например,
S&P 5001,
I Название,
S&P).
можно получить следующим образом:
а в ячейку А2 название акции (или часть ее на
Выделите диапазон А 1:А2 и выберите на вкладке Вставка
(Insert)
раздел Таб
лицы (ТаЬ\еs), чтобы создать таблицу с заголовками.
3.
Выделите ячейку А2, перейдите на вкладку Данные
данных
4.
(Data Types)
выберите пункт Акции
(Data)
и в разделе Типы
(Stocks).
Если Ехсе\ не найдет точного совпадения, он откроет панель Мастер выбора
данных
(Data Selector),
которую можно использовать для поиска акций: щелк
ните на одной из них, чтобы увидеть больше информации, или выберите акцию,
данные которой желательно получить. В нашем примере мы решили использо-
1
Индекс S&P 500 (Standar(J & Роог·s 500) -
нейших публичных компаний
CI [!А.
ло фондовый индекс. который отражает состояние 500 круп
акции которых торгуются на биржах
NYSE
и
NASDAQ.
вать данные из индекса
S&P 500,
Финансовый анализ
275
поэтому надо нажать кнопку Выбрать
(Select)
рядом с этой акцией.
5.
Excel обновит текст в ячейке А2, отобразив название акции, и доба
вит значок типа данных Акции (Stocks) 1@1 слева от содержимого ячейки
(щелкните на этом значке, чтобы увидеть больше информации об акции). Excel
Программа
также добавит справа кнопку~ Вставить данные (lnsert Data).
6.
Щелкните на кнопке Вставить данные
собираетесь
использовать,
Котировка, Максимум
52
-
С
в
А
s _ _ _ lndex
: u.::...
2 !1111 S&P 500 lndex .. ;,..с
$5 187,70
52
недели ,
инструмента ,
в результате поля
-
10.18).
Е
D
Сrрана/реn4он Тнn инстр КonlJ)081Q
и выберите поля, которые
Страна/регион, Тип
недели и Минимум
и их значения добавятся в таблицу (рис .
Нuаание
(Insert Data)
например:
F
G
Максммум 52 недели Минимум 52 Н8Д111М
INX
$4098,92
$5 264,85
Ти~А О1М8О11
з
Рис.
10.18.
Котировки, возвращенные типом данных Акции
Вы также можете использовать типы данных для поиска обменного курса между
двумя валютами. Например, получить курс обмена доллара США на евро можно
следующим образом:
1.
Введите в ячейку А 1 Название, а в ячейку А2 пару валют С/На (в нашем случае
Доллар США/Евро).
2.
Выделите ячейки и выберите на вкладке Вставка
раздел Таблицы
(lnsert)
(ТаЬ!еs), чтобы создать таблицу с заголовками.
3.
Выделите ячейку А2, перейдите на вкладку Данные
данных
4.
(Data Types)
выберите пункт Валюты
Щелкните на кнопке Вставить данные
решили использовать (например, Курс),
(Data)
(Currencies).
и в разделе Типы
(lnsert Data) и выберите поля, которые
- так вы добавите курс обмена валюты
в таблицу.
По умолчанию данные обновляются каждые пять минут. Изменить эту настройку
можно, щелкнув правой кнопкой мыши на названии акции или валюты и выбрав
в разделе Типы данных (Data Types) пункт Обновить настройки (Refresh
Settings) . Это также можно сделать вручную, выбрав в разделе Типы данных
(Data Types) пункт Обновить (Refresh) или нажав на вкладке Данные (Data) на
кнопку Обновить все (Refresh AII).
Пояснение
Это решение пригодится при заполнении таблиц данными акций и валют с серве
ров
Bing.
упрощает
Хотя создание такой таблицы не является столь уж необходимым , она
использование
ловки таблицы.
типов
данных,
т. к.
они
автоматически
заполняют
заго
276
Глава
1
10
10.15. Получаем
исторические данные акций и валют
Задача
Вы хотите добавить в
Excel
исторические котировки акций и курсы обмена валют.
Решение
Если у вас есть активная подписка
Microsoft 365,
получить исторические котировки
акций и курсы обмена валют вы можете с помощью функции истоРИЯАКЦий.
1
•
Microsoft предупреждает, что функция истоРИЯАКЦИЙ предоставляет информацию
финансовых рынков «как :сть», поэтому вы не должны использовать ее для целей
,
торговли или консультации
Обычно функцию ИСТОРИЯАКЦИЙ используют в формуле =ИСТОРИЯАКЦИЙ(акция;ранняя_дата;
поздняя_дата;интервал;заголовки;столбцы),
С/На, ранняя_дата -
(необязательный аргумент)
2-
(необязательный аргумент)
1-
для еженедельного и
мент)
определяет,
-
аргумент)
тие,
2-
где акция
-
указывает на акцию
дата, до которой надо извлекать данные, интервал
задает интервал (О
-
для ежедневного извлечения,
для ежемесячного), заголовки (необязательный аргу
нужно ли возвращать заголовки,
указывает, какие столбцы возвращать: О
-
или пару
это дата, начиная с которой надо извлечь данные, поздняя_дата
для Открытие,
3-
для Максимум,
4-
-
столбцы (необязательный
для Дата,
для Минимум и
5-
1-
для Закры
для Объем.
Так, если вам надо узнать курс обмена доллара США на евро за последние семь
дней, введите формулу =ИСТОРИЯАКЦИЙ("д=ар США/ЕВЮ" ;СЕГОДНЯ()-? ;СЕГОДНЯ()) -
это
вернет динамический массив, отображающий обменный курс закрытия для каж
дого дня.
Обсуждение
Функция истоРИЯАКЦИЙ возвращает динамический массив исторических котировок
акций или курсов обмена валют с серверов
Bing,
содержащий заголовки в первой
строке.
10.16. Используем
биржевые диаграммы
Задача
У вас есть данные акций, и вы хотите отобразить их на диаграмме.
Решение
Программа
Excel
предлагает несколько диаграмм, которые вы можете использовать
для отображения данных акций,
-
в зависимости от того, что вам надо отобразить.
Финансовый анализ
Линейная диаграмма может отображать один показатель
277
например, котировку
-
закрытия с течением времени. Вы найдете ее, выполнив команду меню Вставка
(lnsert)
Chart).
1
Диаграммы
(Charts)
1
График/Диаграмма с областями
(lnsert Line/Area
Если вам надо отобразить максимумы, минимумы и котировки закрытия с течением
времени, а также при необходимости с котировкой открытия и дневным объемом,
вы можете использовать биржевые каскадные диаграммы (так называемые япон
ские свечи). Доступны четыре диаграммы этого вида (рис.
10.19) -
в зависимости
от того, какие параметры вам надо включить, и вы найдете их, выполнив команду
меню Вставка
(lnsert) 1 Диаграммы (Charts) 1 Каскадная (Waterfall) и выбрав
диаграмму Воронка (Funnel), Биржевая (Stock), Поверхностная (Surface) или
Лепестковая (Radar).
Открытие-Максимум- Минимум-За крытие
Максимум-Минимум-Закрытие
740,00
730.00
720,00
.....
760
75,0,00
•
740
i
720
t
710.00
t
100.00
t
690,00
2.20
2 21
м,ксмму,,,
2-22
м~ннмум
700
2000000
1500000
Открьпк~
1000000
500000
о
•2-20
■ 00..М
740.00
i
Ul
3000000
2500000
2000000
1'
1
2-22
Ма"СММVМ
720,00
t
из
Ммнимум
Рис.
1'
1
700,00
-+-
1500000
1000000
680,00
sooooo
660,00
D
2-24
•Зокрыntе
10.19.
-t-
2-22
2.23
МИН14МуМ
MattCM"4YM
2 24
Заtфытме
Объем-Оrк рыn,е - Максимум-Минимум -Закрыntе
760,00
•
2-21
2-20
Объем-Максимум-Ми н имум-Закрытие
2500000
9
660
•!нкрьmt~
3000000
"Т'
б8О
2-24
2-23
•
1
2 20
■ Обьt""
•
760
740
2.21
Открытие
-т-
1
2 22
Максимум
9
223
Ммнимум
721)
-t-
1
700
680
ббО
2.24
з,._
Четыре типа биржевых диаграмм
В зависимости от выбранной вами диаграммы она может отображать следующие
данные:
♦
максимальные и минимальные котировки.
Отображается разница между этими котировками в виде вертикальных линий;
♦
котировка закрытия.
Диаграмма отображает этот показатель в виде маркера. Он может не отобра
жаться по умолчанию, если диаграмма включает котировку открытия;
♦
котировка открытия.
Диаграмма отображает разницу между котировками открытия и закрытия в виде
полосы вверх/вниз, свечи или прямоугольника на верхней/нижней вертикальной
линии. Если котировка открытия выше котировки закрытия, это отображается
в виде закрашенного нижнего прямоугольника, а если котировка закрытия выше
Глава
278
10
котировки открытия, то это отображается в виде верхнего незакрашенного пря
моугольника;
♦ объем.
Если этот показатель включен, то он отображается в виде столбца в нижней час
ти диаграммы.
Пояснение
Решение этой задачи зависит от данных, которые требуется отобразить,
-
обычно
здесь необходимо выбрать диаграмму, которая лучше всего подходит вашим дан
ным.
Обратите внимание, что исполиовать это решение можно вместе с решением из
разд.
10.15, -
чтобы получить с помощью функции истоРиЯАКций исторические дан
ные акций и отобразить их на диаграмме.
10.17. Рассчитываем
бета-коэффициент акции
Задача
Вы хотите определить волатильность акции относительно ее бенчмарка.
Решение
Предположим, у вас есть исторические данные акции и ее бенчмарка, и вам надо
рассчитать бета-к(nффицuент акции для этого периода
-
ее волатильность отно
сительно ее бенчмарка.
Первый способ расчета бета-коэффициента
-
использовать формулу =КОВАРИАЦИя.в
(значения_акции;значеиия_ бенчмарка) /ДИСП. В (значения_ бенчмарка)
ковариацию двух наборов данных (см. разд.
марка (см. разд.
9.11)
-
она
рассчитывает
и делит ее на дисперсию бенч
R.R).
Альтернативный метод заключается в использовании формулы =НАКЛОН (значения
акции;значения_бенчмарка) -
торый
наилучшим
(см. разд.
она возвращает наклон линии линейной регрессии, ко
образом
соответствует точкам данных акции
и
бенчмарка
8.2./).
Пояснение
Бета-коэффициент акции показывает ее волатильность относительно бенчмарка
например,
S&P 500.
Бета больше
ее бенчмарк, в то время как бета
1 подразумевает,
меньше 1 говорит
-
что акция более волатильна, чем
о ее меньшей волатильности.
Дополнение
Если вы хотите выяснить, как могут быть связаны две акции или акция и ее бенч
марк, обратитесь к разд.
8.23
и
8.24.
Финансовый анализ
10.18. Прогнозируем линейный
279
и экспоненциальный рост
Задача
Вы получили исторические значения продаж и хотите определить будущие значе
ния, предполагая рост линейный или экспоненциальный.
Решение
Предположим, вы собираетесь использовать показатели продаж для ряда прошед
ших
месяцев,
чтобы
предсказать
значения
для
будущих.
Введите
в диапазон
В2:В13 продажи, в диапазон А2:А13 месяцы, за которые имеются показатели (про
нумерованные от
до
I
12),
а в диапазон А 14: 16 месяцы, для которых надо найти
данные продаж (пронумерованные от
А
1
2
в
с
=РОСТ(В2:В1З;А2:А1З;А14:Аlб}
13
1885,ЗбЗбЗб
14
15
1961,958042
2037,552448
1950,201914
2072,138018
2190,465164
2
иоо
з
990
1050
1300
1500
1450
1400
1600
1750
1700
1800
11
12
4
5
5
7
8
9
10
11
iз l
и
:!
15
17
Е
D
=ТЕНДЕНЦИЯ(В2:В1З;А2:А13;
з
9
10.20.
продажи
4
5
10 I
как показано на рис.
Прогноз экспоненциального роста
1000
7
16),
Прогноз линейного роста
1
8
до
Фактические
Месяц
б
13
Рис.
10.20.
Прогнозы линейного и экспоненциального роста
с использованием функций ТЕНДЕНЦИЯ и РОСТ
Чтобы сгенерировать прогнозируемые значения для линейного роста, можно при
менить функцию ТЕНДЕНЦИЯ. Обычно ее используют в формуле =ТЕНДЕНЦИЯ (известные_
значения_уs,
известные_значения_хs;новые_хs),
где известные_значения_уs
-
это
извест
ные у-значения (показатели продаж), известные_значения_хs -
известные х-значения
(месяцы, за которые имеются показатели продаж), а новые_хs
-
месяцы, для кото
рых надо сгенерировать будущие показатели продаж. Поэтому для генерации ли
нейных прогнозируемых значений:
1.
Выделите первую ячейку, в которую вам нужно ввести прогнозируемые значе
ния (например, С14).
2.
Введите в нее формулу =ТЕндЕНЦИЯ(В2:В1З;А2:А1З;А14:Аlб).
3.
Нажмите клавишу
<Enter>,
и
Excel
сгенерирует значения линейного прогноза.
280
Глава
10
Функция ТЕНДЕНЦИЯ возвращает динамический массив, поэтому приведенные шаги
будут работать, если вы используете Excel 2021 или Excel 365. В более ранних
версиях Excel выделите весь входной диапазон на шаге 1 (например С14:С16),
введите формулу в верхнюю левую ячейку этого диапазона, а затем нажмите комбинацию клавиш <Ctrl>+<Shift>+<Enter> (см. разд. 3.4).
,.
Чтобы
сгенерировать
прогнозируемые
значения
для
экспоненциального роста,
можно применить функцию юст. Она работает аналогично функции ТЕНДЕНЦИЯ,
и для генерации экспоненциальных прогнозируемых значений используется в фор
муле
= РОСТ (известные_ значения_ys,
нерировать
показатели
известные_ значения_ xs; новые_ xs) .
прогнозируемых
в диапазоне А14:А16, введите в ячейку
(см. рис.
'
.
•••••• •
продаж
D14
для
Так,
месяцев,
чтобы
сге
приведенных
формулу =РОСТ(В2:В1З;А2:А1З;А14:А16)
10.20).
Как и функция ТЕНДЕНЦИЯ, функция РОСТ возвращает динамический массив, поэтому
предлагаемое решение будет работать, если вы используете Excel 2021 или Excel
365. В более ранних версиях Excel выделите весь входной диапазон, введите
формулу в верхнюю левую ячейку этого диапазона и нажмите комбинацию
<Ctrl>+<Shift>+<Enter>.
Пояснение
В
этом разделе
предлагается удобный способ
генерирования
прогнозируемых
будущих значений для линейного и экспоненциального роста.
Для других типов роста следуйте шагам из разд.
8.23:
найдите линию тренда, кото
рая наилучшим образом соответствует данным, после чего для расширения линии
тренда задействуйте на панели линии тренда Формат
вперед на
мендации
(Forecast Forward). В
из разд. 8.24 и найти
(Format)
параметр Прогноз
качестве альтернативы вы можете выполнить реко
уравнение, наилучшим образом описывающее дан
ные, которые затем можно использовать для расчета будущих значений.
10.19. Прогнозируем
сезонный рост
Задача
Имея исторические значения продаж, которые следуют сезонным или периодиче
ским тенденциям, вы хотите подсчитать будущие значения.
Решение
Предположим, показатели продаж для серии кварталов следуют сезонной модели,
которая повторяется каждые четыре квартала, и вы собираетесь использовать их
для прогнозирования значений будущих кварталов. Введите в диапазон 82:В 13
продажи, в диапазон А2:А13 кварталы (пронумерованные от
строку метки (рис.
1 до 12),
Если вы используете
Лист прогноза
а в первую
10.21 ).
Excel для Windows, то можете воспользоваться инструментом
(Forecast Sheet) Excel, дающим возможность подсчитать будущие
значения, включая доверительные интервалы для этих значений:
Финансовый анализ
1
2
3
А
в
ПериодЬI (кварталЬ1)
Продажи
1
2
3
4
5
4
б
5
7
б
8
7
9
10
11
8
10
12/
13 1
12
9
11
с
D
Е
281
F
78000
60000
45000
80000
75000
70000
50000
90000
80000
52000
60000
115000
14
Рис.
1.
10.21. Данные,
следующие сезонной модели
Выделите данные, которые решили использовать для прогноза (в этом примере
диапазон А 1:В 13).
2.
Выполните команду меню Данные
(Data)
1
Прогноз
(Forecast)
1
Лист прогноза
(Forecast Sheet).
3.
В диалоговом окне Создание листа прогноза
(Create Forecast Worksheet)
убеди
тесь, что параметры по умолчанию подходят для имеющегося набора данных
(рис. 10.22). В особенности удостоверьтесь, что поле Завершение прогноза
(Forecast End) отображает последний период, для которого надо подсчитать зна
чения, а параметр Сезонность (Seasonality) соответствует вашим данным, на
пример, для моделей, которые повторяются каждые четыре строки, этот пара
метр нужно установить в значение
'•. lliii,.
4,
выбрав пункт Установка вручную.
j Вы можете использова,s для аериодов даты/время ил, числа. Одна,о между ним,
-Ж должен быть постоянный шаг, и они не могут быть равны нулю.
Завершив настройку данных, нажмите кнопку Создать
(Create),
и
вставит
Excel
новый рабочий лист, содержащий прогнозируемые данные в таблице с дополни
тельными строками и столбцами для вычисляемых значений, а также отобразит эти
данные на диаграмме (рис.
10.23).
Если вы работаете в
для
Excel
macOS,
инструмент Лист прогноза
(Forecast Sheet)
достуrю, не будет. Однако сгенерировать тот же самый прогноз можно с помощью
функци Й 1!РЕДСКАЗ. ETS И ПРЕДСКАЗ. ETS. ДОВИНТЕРВМ.
Функция ПРЕдСКАЗ.ЕТS генерирует прогнозируемое значение для целевой даты или
номера
периода.
Обычно
ее
используют
в
формуле
=ПРЕДСКАЗ .ЕТS (целевая_дата;
значения;временная_шкала;сезонность;заполнение_данных;агрегирование),
дата
-
где
целевая
это дата или номер периода, для которого вам надо сгенерировать прогноз,
значения
-
это
исторические
значения,
временная_ шкала
-
указывает на соответст
вующие даты или номера периодов, сезонность (необязательный аргумент)
сезонность, которую по умолчанию
Excel
-
это
определяет автоматически, заполнение
282
Глава
10
х
Создание листа nporнo1a
dЬ
Исnольз:уйн исторические данные Д/IА соwния липа ВИ3)'ального прогнои
160000
140000
120000
100000
воооо
60000
40000
20000
о
б
--nроnю3(ПРоДIЖМ)
Прим31(1 нмз11;ой еероятностм(Продажн
3авtршение проrноя
t1ачало прогно,а
0
1
--П рим:,ка еысокоМ верОtrТМОСТJl[Продажм)
20
12
Доверительны~ интераал
95 %
Соон н ость
@ Определять ~атоматически
ДИаnа1он ар,tJо1енной шкалы
Се1онные данные'! SАS1:SАS13
t
Диаnаэон 1н1~ений
Се1онные данные ·! SВS1 : SВS1З
t
О Уста н о в ка вручну&
Jаnолнить онутстsующие точки с поwощыо
Интерполяция
О ,6кпюч ить статистичнкие данные прогноя
06.ыдинить дУ6ликаты с no1ri1oщыo
Среднее
(O).ДilTb
Рис.
10.22.
Диалоговое окно Создание листа прогноза
D
с
в
А
1 Период (кварталы) а Продажи а Прогноз (ПрОДdН(И) а Привязка НИЗКОЙ верОЯJНСХТН а ЛрИВЯJl{ёl ВЫСОIЮЙ верОRТНОС1И а
4
5
6
1
2
3
4
78000
60000
45000
5
7
б
2
3
8
7
9
8
90000
10
11
12
13
14
9
10
11
12
13
14
80000
52000
60000
115000"
15
1 1
20
21
100000
80000
75000
70000
50000
16
17
18
200000
123456789IOUПUMU~D~~W
-- Продс,жи
--Проrно, (Продажм)
Прмая.,на t1юкой ~ятностм (ПроД3жн)
-
115000"
97957,20814
87940,99743
70760,55026
109737,5798
104463,Q294
15
lб
17
18
19
20
9444б , 818б8
77266,37151
116243,401
Рис.
10.23.
Приемо аысокой кроятностн (Продажи)
115000,00"
П340,87
64872,77
45468,64
82394,47
75197,53
63377,65
44486,08
81830,71
Вывод инструмента Лист прогноза
115000,00
118573,54
111009,23
96052,46
137080,69
133728,53
125515,99
110046,67
150656,10,
Финансовый анализ
данных (необязательный аргумент)
-
поясняет
Excel,
283
как обращаться с отсутствую
щими точками (по умолчанию он использует среднее значение соседних точек),
а агрегирование (необязательный аргумент)
-
указывает, как агрегировать точки
данных с одинаковой временной отметкой (по умолчанию используется их сред
нее).
Так,
чтобы рассчитать
в диапазоне
82:813
прогнозируемое значение для
13-го квартала,
приведены продажи, а в диапазоне А2:А13
-
где
кварталы с 1-го
ДО 12-го, введите формулу =ПРЕДСI<АЗ.ЕТS (lЗ;В2 :В1З;А2 :АlЗ).
Функция ПРЕДСКАЗ.ЕТS.ДОВИНТЕРВАJl работает аналогично функции Г!РЕДСКАЗ.ЕТS, за ис
ключением того, что она генерирует достоверность статистических показателей для
целевой даты
или
периода.
Обычно ее
используют
в
формуле
=ПРЕдСКАЗ.ЕТS.
ДОВИНТЕРВАJl(целевая_дата;значения;временная_шкала;достоверность;сезонность;заполнение
данных; агрегирование),
равен
95%).
r де
достоверность -
это уровень достоверности ( по умолчанию
Вы можете применить ее для вычисления доверительного интервала
для прогнозируемого значения, который представляет собой прогнозируемое зна
чение плюс или минус достоверность статистических показателей. Например, что
бы рассчитать статистическую достоверность
95%
для
зоне 82:В 13 приведены продажи, а в диапазоне А2:А 13
13-ro квартала, где в диапа
- кварталы с 1-ro до 12-го,
введите формулу =ПРЕДСКАЗ.ЕТS.ДОВИНТЕРВАЛ(13;В2:В1З;А2:А13).
Пояснение
В этом разделе представлен удобный способ оценки роста сезонных данных с уче
том всех периодических взлетов и падений.
Дополнение
Чтобы получить больше информации о доверительных интервалах, обратитесь
к разд.
8.21.
Если вы анализируете общую тенденцию сезонных данных, обратитесь к разд.
9.5.
ГЛАВА
11
Сводные таблицы
Сводные таблицы (PivotTaЫes)
-
одна из мощнейших функций
Excel,
потому что
позволяет интерактивно анализировать, обобщать и изучать большие объемы дан
ных с помощью всего лишь нескольких щелчков мыши. Вы можете сегментировать
и фрагментировать данные множеством способов, получать различные сводки и
вставлять пользовательские расчеты, если предпочитаете выйти за рамки встроен
ных в
Excel
функций агрегирования.
Эта глава содержит подборку решений, призванных помочь вам получить мак
симум от использования сводных таблиц, и включает в рассмотрение следующие
области:
♦
обобщение данных с помощью различных агрегаций;
♦
отображение значений в виде процентов, промежуточных сумм и многого другого;
♦
изменение компоновки сводных таблиц, выполненной по умолчанию;
♦
фильтрацию данных с помощью срезов и временных шкал;
♦
группировку полей данных/времени и чисел и определение специальных групп
вручную;
♦
использование вычисляемых полей и элементов для вставки пользовательских
формул;
♦
применение кеша сводных таблиц для управления совместным использованием
групп, вычислений и фильтров, а также для восстановления удаленных таблиц
без обращения к резервной копии.
11.1. Организуем данные для сводных таблиц
Задача
Вы хотите организовать данные таким образом, чтобы их можно было использо
вать для создания сводной таблицы.
Решение
Предположим, у вас есть набор данных, который вам надо обобщить с помощью
сводной таблицы. В таком случае данные должны иметь следующую структуру:
Глава
286
11
♦ уникальные заголовки столбцов в первой строке, где каждый столбец представ
ляет собой уникальную категорию (например, Продукт, Месяц и Сумма);
♦
каждая строка
-
это отдельная запись или элемент данных (например, торговая
сделка);
♦
вы также должны преобразовать данные в таблицу, потому что это упрощает
работу со сводными таблицами.
На рис.
1 1. 1
приведены два примера. Левый пример должным образом структури
рован для сводных таблиц, поскольку у него есть уникальные столбцы для катего
рий: Месяц и Сумма. В отличие от него, таблица в правом примере не подходит,
потому что в ней содержатся отдельные столбцы для каждого месяца.
Продуит а Январь а Феврала
1254,15
4125,41
47862,12
7142, 27
Чай
Пи ожные
1457 57
6543,98
765,97
Чай
Кое
Январь
Пирожные
Январь
Кофе
Февраль
Чай
Февраль
Пи ро жн ы е
Февраль
Чай
Рис.
11.1. Две
1457,57
4125,41
7142,27
6543,98
765,97
таблицы, содержащие одни и те же данные, но с разной структурой
Если у вас есть данные, которые не структурированы должным образом, вы може
те преобразовать их с помощью параметра Отменить свертывание столбцов
(Unpivot Columns)
инструмента
Power Query
(см. разд.
15.17).
Пояснение
Прежде чем приступать с созданию сводной таблицы, следует убедиться, что ис
ходные данные структурированы должным образом. Это упростит управление
сводной таблицей для получения необходимых результатов.
11.2. Вставляем
сводную таблицу
Задача
У вас есть таблица, и вы хотите вставить сводную таблицу, которая использует ее
данные.
Решение
Предположим, вы собираетесь вставить сводную таблицу, основанную на данных
имеющейся у вас таблицы. Вы можете это сделать, выполнив следующие шаги:
Сводные таблицы
1.
Выделите одну ячейку в таблице и выполните команду меню Вставка
Таблицы (ТаЫеs)
(ТаЫе
Design)
1
1
287
(lnsert)
1
Сводная таблица (PivotTaЬles) или Конструктор таблицы
Инструменты
(Tools)
1
Сводная таблица
(Summarize with
PivotTaЬle).
2.
В диалоговом окне Сводная таблица из таблицы или диапазона (PivotTaЫe
from
tаЫе
or range)
убедитесь, что поле Таблица или диапазон (TaЫe/Range)
содержит название таблицы. Затем выберите,
лицу
--
куда поместить сводную таб
на новый рабочий лист или на существующий, и оставьте флажок
Добавить эти данные в модель данных
шенным (рис.
(Add this data to the Data Model)
сбро
11.2).
х
Сводная таблица И3 таблицы или диаnа3она
Выбрать таблицу или диапазон
Iаблица или диапазон:
III
ТаблицаПродУкты
Укажите, куда следУет помесrить сводную таблицу
О ]:!овый лисr
@ й,щесrвующий лисr
fасnоложение:
Сводная!SЕS2\
Укажите, следУет ли проанализировать несколько таблиц:
О Добавить ли данные в модель данных
ОК
Рис.
11.2.
Отмена
Использование диалогового окна Сводная таблица из таблицы или диапазона
для вставки сводной таблицы
Помимо использования таблицы в качестве источника для сводной таблицы, вы
можете также задействовать именованный диапазон или диапазон рабочего листа.
Для этого на шаге 2 введите или выберите имя диапазона или собственно диапа
зон в поле Таблица или диапазон (TaЫe/Range).
3.
Нажмите кнопку ОК, и
Excel
вставит в указанное местоположение пустую
сводную таблицу и откроет панель Поля сводной таблицы (PivotTaЫe
как показано на рис.
Fields),
11.3.
Пояснение
В этом разделе рассказано, как вставить на основе имеющейся таблицы пустую
сводную таблицу, которую можно затем заполнить, используя советы из разд.
11.3
и др.
При необходимости вы можете вставить предварительно заполненную сводную
таблицу, выделив ячейку в таблице и выполнив команду меню Вставка
Таблицы (ТаЫеs)
1
или Главная (Ноте)
вы используете
(Insert)
(Recommended PivotTaЫes)
данных (Analyze Data). Если
1
Рекомендуемые сводные таблицы
1
Анализ
Excel 365,
(Analysis)
Анализ
то можете воспользоваться для этого также функцией
анализа данных, выполнив команду меню Главная (Ноте)
1
Анализ
(Analysis)
1
Глава
288
11
с
А
-G~ - -н
D
а Ме<•ц а Сумм, а
1254,15
Январь
2 Кофе
47862,12
Январь
3 Чай
1457,57
Январь
4 Пирожные
4125,41
Февраль
5 Кофе
7142,27
Февраль
6 Чай
6543,98
Февраль
7 Пирожные
41258,24
Январь
8 Пицца
81458,24
Февраль
9 Пицца
6549,23
Январь
10 Кофе
765,23
Январь
11 ' Чай
634,98
Январь
12 Пирожные
78934,65
Январь
13 Пицца
1457,02
Февраль
14 Кофе
45781,25
Февраль
15 Чай
1457,21.
Февраль
16 Пирожные
17
18
Проду1<Т
"
Поля сводной таблицы
Выбq)итt: поля для А~вления I отчn:
Чтобы создать отчет, выберите
~-«
--
Х
V
[
€} .,,]
--~
необходимые поля в сnиа.е полем
сводной таблицы
□ n-..
О мющ
О Сумuа
Друrиt: табАмцы ...
19
20
21
Пt:рnащмтt: na.nя а нужную обл;кт~
22
23
Т Фкт.тры
t
~ Строем
Е Зн1.чен~
Столбцы
24
25
26
27
28
29
30
31
Рис. 11.З. Таблица (слева), ее пустая сводная таблица (в центре)
и панель Поля сводной таблицы (справа)
Анализ данных
(Analyze Data)
(Analyze Data)
и выбрав в открывшейся панели Анализ данных
одну из доступных сводных таблиц или введя соответствующий
вопрос в поле Задайте вопрос о своих данных
(Ask
а
question).
Дополнение
По умолчанию в основе сводной таблицы может быть только одна таблица. Однако
если вы работаете в Ехсе\ для
Windows,
то можете применить модель данных
Excel,
чтобы использовать данные из нескольких связанных таблиц . Более подробно об
этом рассказано в главе
11.3. Добавляем
16.
строки, столбцы и значения
Задача
У вас есть пустая сводная таблица, и вы хотите добавить в нее строки, столбцы
и итоговые значения.
Решение
Предположим, вы создали пустую сводную таблицу на основе таблицы данных
продаж со столбцами Продукт, Ме с яц и Сумма . Для расчета общей суммы для каждого
Сводные таблицы
продукта и месяца используйте панель Поля сводной таблицы (PivotTaЫe
289
1
Fields),
позволяющую управлять ее содержимым.
i,,,,,,,,,,~
Когда в сводной таблице выделяется какая-либо ячейка,
Поля сводной таблицы (PivotТaЫe
открыть можно, выполнив команду меню Анализ
, • •••
Список полей
отображает панель
(Analyze)
1 Показать
(Show)
1
(Field List).
Панель Поля сводной таблицы (PivotТaЫe
♦
Excel
Если вы закрыли эту панель, вновь ее
Fields).
Fields) содержит
следующие разделы:
Список полей
Поля этого списка соответствуют заголовкам столбцов в исходной таблице.
♦
Фильтры
(Filter)
Этот раздел позволяет применить фильтр к сводной таблице (см.разд.
♦
Столбцы
(Columns)
и Строки
11.14).
(Rows)
Эти разделы позволяют указать, какие поля вы собираетесь использовать для
столбцов и строк сводной таблицы.
♦
Значения
(Values)
Этот раздел позволяет указывать, какие расчеты и типы сводок вам нужно ото
бражать в сводной таблице.
Обычно сводную таблицу заполняют путем добавления полей в разделы Столбцы
(Columns),
Строки
(Rows)
и Значения
(Values).
щую сумму для каждого продукта и месяца (рис.
1.
Например, чтобы подсчитать об
11 .4):
Перетащите поле Продукт из списка полей в раздел Строки
так вы до
(Rows) -
бавите отдельную строку для каждого уникального значения столбца Продукт
исходной таблицы.
2.
Перетащите поле месяц в раздел Столбцы
(Columns) -
так вы добавите отдель
ный столбец для каждого уникального значения столбца месяц исходной таб
лицы.
3.
Перетащите поле Сумма в раздел Значения
(Values) -
в результате будет вычис-
лена сумма значений столбца Сумма для каждого продукта и месяца.
Поскольку столбец Сумма содержит числовые значения, раздел Значения
суммирует их по умолчанию. Если вы добавите в раздел Значения
(Values)
(Values) тек
стовый столбец или числовой столбец с пустыми ячейками, то сводная таблица
подсчитает и их. Чтобы узнать, как изменить эти настройки, обратитесь к разд.
11.9.
Пояснение
В
этом
разделе
(PivotTaЫe
Fields)
показано,
как
использовать
панель
Поля
сводной
таблицы
для управления строками, столбцами и значениями сводной таб
лицы. Дополнительные способы использования ее разделов вы найдете в разд.
11.9
и
11.10.
11.4,
Глава
290
11
с
А
Продукr
■ Ме-t:Я.Ц а сумМd а
1254,151
~~2!.!~J
1457,~;.1
4125,~~j
7142,2,71
6543,98!
~
-
...==-
Е
D
F
Сумма no nо11ю Сумма на-зван.u. сrоnбцов
..,.
Наз.вани:я
Кофе
G
R
Январь
Поля сводной таблицы
Фe8pallb
otl
ий итог
Чай
7803,38
2092,SS
120192,89
48627,35
5582,43
8001,19
81458,24
52923,52
13385,81
10093,74
201651,13
101550,87
Общимктоr
118716,17 147965,38
326681,SS
Пирожные
Пицца
Вь16t:ритt: non,i дм до6•1м11ия • отча
[.nош
v
х
!€} ..-1
PI
11 Пpoдylff
11 Ме<:11щ
а су.....
<1258,2,I
·······-·;1
45~,~
Друrиt: тгблицы .. ,
17 •
18
19
,o l
Пt:р~•щ1-1тt: noJU I нужную о6лкtь:
21
22
I!
23
Стстбцы
Мt:с.11ц
24 1
25
26
27
28
29
30
1: Зн1ч.~~я
31
32
33
Суt..1м1
Рис.
11.4.
no nо11ю Сум~& "
Таблица (слева), ее сводная таблица (в центре) и панель Поля сводной таблицы (справа)
11.4. Используем дополнительные
строки
Задача
У вас есть сводная таблица, и вы хотите использовать для ее строк два или более
полей.
Решение
Предположим, вы создали пустую сводную таблицу на основе таблицы данных
продаж со столбцами Категория, Продукт, Месяц и Сумма, и вам надо подсчитать общую
сумму для каждой категории, продукта и месяца.
Решить эту задачу можно, добавив в сводную таблицу дополнительные строки
(рис.
11.5):
1.
Перетащите поле категория из списка полей в раздел Строки
2.
Перетащите поле Продукт из списка полей в раздел Строки
под полем Категория -
(Rows).
(Rows ),
поместив его
так вы добавите в сводную таблицу дополнительные
строки, так что каждое значение Продукта будет отображаться под соответст
вующей Категорией.
3.
Перетащите поле месяц в раздел Столбцы
чения
(Values) -
(Columns)
и поле Сумма в раздел Зна
так вы вычислите сумму значений столбца Сумма для каждой
категории, продукта и месяца.
Сводные таблицы
F
Названия строк
Названия столбцов
r.1 Январь
8 ЕДа
Пирожные
Пицца
Чай
:> Напитки
1
н
G
сумма по попю сумма
!
Кофе
Чай
Общиliитоr
•
1
Февраль
122285,44 135240,68
2092,55
8001,19
120192,89 81458, 24
45781,25
12n4,1
56430,73
7803,38
5582,43
48627,35
7142,27
178716,17 147965,38
Общиi\итоr
257526,12
10093,74
201651,13
45781,25
69155,43
13385,81
55769,62
326681,55
--
•
Поля сводной таблицы
ВыЬlрите nолА для до61влени.я в отчет:
Про,1\УКТ
r.11
Сум...
х
[В
PI
1 ПоисlС
111
111
111
V
291
К.Пеrормя
Месоц
Другие тс1 6.n ицы ...
Перетащите поля I нужную обл1сть:
Т Фильтры
1
Стол6ць1
I[.мшц
---· · .1
1
1
-
~ Строки
1
Катего~ия
[11роду<Т
·~~
....
.
.
Е' Значения
1~ ма
по полю Сумма .., \
1
Рис.
11.5. Добавление
в сводную таблицу дополнительных строк
Добавить в сводную таблицу дополнительные строки можно и так: выполните на
строке или элементе столбца в сводной таблице двойной щелчок мышью и укажи
(Show Detail), какие данные
те в открывшемся диалоговом окне Показать детали
вам нужно отобразить.
Пояснение
Дополнительные строки позволяют сегментировать, фрагментировать и группиро
вать данные сводной таблицы и включать итоговые значения для различных их
комбинаций. Вы также можете добавить в сводную таблицу и дополнительные
столбцы, перетащив дополнительные поля в раздел Столбцы
(Columns).
11.5. Обновляем данные сводной таблицы
Задача
У вас есть сводная таблица, созданная на основе таблицы данных, и вы хотите
обновить эту сводную таблицу при обновлении данных исходной таблицы.
292
1
Глава
11
Решение
Сводная таблица представляет собой моментальный снимок данных исходной таб
лицы,
поэтому при обновлении исходной таблицы нужно вручную
обновить
сводную таблицу, чтобы обновились содержащиеся в ней результаты вычислений.
Обновить сводную таблицу можно с помощью следующих методов:
♦ щелкните правой кнопкой мыши на сводной таблице и выберите из контекстно
го меню пункт Обновить
♦
(Refresh);
выделите ячейку в сводной таблице и выполните команду меню Анализ свод
ной таблицы (PivotТaЬle
Analyze)
1 Данные
(Data)
1
♦
выполните команду меню Данные
nections)
1
Обновить
(Refresh)
(Data)
1
(Refresh) или
(Refresh AII);
Обновить
берите в этом раскрывающемся списке пункт Обновить все
Подключения
или Обновить все
вы
(Queries & Con-
(Refresh AII).
Обычно для обновления выбранной сводной таблицы применяют параметр Обно
параметр Обно
вить (Refresh), а для обновления всех данных в рабочей книге вить все
(Refresh All).
Чтобы автоматически обновлять сводную таблицу при открытии рабочей книги,
выделите ячейку сводной таблицы, выполните команду меню Анализ сводной
таблицы (PivotTaЫe Analyze) 1 Сводная таблица (PivotTaЫe) 1 Параметры
(Options) и на вкладке Данные (Data) открывшегося диалогового окна Параметры
сводной таблицы (PivotТaЫe Option) установите флажок Обновить при открытии файла
(Refresh data when opening the file).
Пояснение
В этом разделе показано, как обновлять сводную таблицу при обновлении исходно
(Refresh) является более эффек
го источника данных. Выбор параметра Обновить
тивным способом, чем выбор параметра Обновить все
(Refresh All),
однако он мо
жет привести к тому, что в других сводных таблицах останутся устаревшие данные.
«Под капотом» при обновлении данных сводной таблицы обновляется и ее кеш.
Более подробно об этом рассказано в разд.
11.6. Перемещаем
11.28.
сводную таблицу
Задача
У вас есть сводная таблица, и вы хотите переместить ее в другое место.
Решение
Чтобы переместить сводную таблицу, выделите одну из ее ячеек, выполните ко
Analyze) 1 Действия (Actions) 1
(Move ), в открывшемся диалоговом окне Переместить сводную
(Move PivotTaЬle) выберите для сводной таблицы новое местоположение
манду меню Анализ сводной таблицы (PivotTaЬle
Переместить
таблицу
и нажмите кнопку ОК.
Сводные таблицы
1
293
В качестве альтернативы выделите всю сводную таблицу, нажмите комбинацию
клавиш
<Ctrl>+<X>,
чтобы ее вырезать, выберите новое местоположение и нажми
те комбинацию клавиш
<Ctrl>+<V>,
чтобы вставить ее туда.
Пояснение
В этом разделе представлены два способа перемещения сводной таблицы в новое
местоположение. Какой из них использовать, зависит в основном от личных пред
почтений.
11.7. Изменяем
внешний вид сводной таблицы
Задача
У вас есть сводная таблица, и вы хотите скорректировать ее стиль или внешний
вид.
Решение
Внести общие изменения во внешний вид сводной таблицы можно, выделив в ней
ячейку и выбрав на вкладке Конструктор
♦
Промежуточные итоги
(Subtotals)
(Design)
следующие параметры:
и Общие итоги
(Grand Totals)
Эти параметры позволяют вам включать или отключать общие и промежуточ
ные итоги сводных таблиц.
♦
Макет отчета
(Report Layout)
Этот параметр позволяет выбирать для сводной таблицы различные макеты и
повторять метки элементов.
♦
Пустые строки
(Blank Rows)
Если вы используете дополнительные строки, то можете применить этот пара
метр, чтобы отделить каждую группу пустой строкой.
♦
Заголовки строк
(Row Headers)
и Заголовки столбцов
(Column Headers)
Эти параметры позволяют изменять формат заголовков строк и столбцов свод
ной таблицы.
♦ Чередующиеся строки
(Banded Rows)
и Чередующиеся столбцы
(Banded
Columns)
Эти параметры позволяют затенять чередующиеся строки или столбцы, чтобы
было проще систематизировать значения сводной таблицы.
♦ Стили сводной таблицы (PivotTaЬ\e
Sty\e)
Этот параметр предоставляет галерею стилей, чтобы вы могли быстро изменить
стиль и цветовую схему сводной таблицы.
294
Глава
11
Пояснение
В этом разделе рассказано о том, как изменять общий вид сводной таблицы . По
пробуйте поэкспериментировать с представленными здесь параметрами, пока свод
ная таблица не примет нужный вам вид .
Дополнение
Вы
также
(см. разд.
можете
применять
к сводным таблицам условное
форматирование
1.9).
11.8. Изменяем
макет по умолчанию
Задача
Вы хотите заменить стиль по умолчанию, который
Excel
использует для новых
сводных таблиц.
Решение
Если вы используете
Excel 2019
или более позднюю версию для
нить стиль по умолчанию, который
Excel
Windows,
то изме
применяет ко всем новым создаваемым
вами сводным таблицам, можно, выполнив команду меню Файл
(File) 1 Парамет
(Options) 1 Данные (Data) и щелкнув на кнопке Изменить макет по умолча
нию (Edit Default Layout), чтобы открыть диалоговое окно Изменение макета по
умолчанию (Edit Default Layout), показанное на рис. 11.6.
ры
Это диалоговое окно предлагает набор параметров
ставлены в разд.
11. 7, так
-
как тех, что уже были пред
и следующих дополнительных:
Изменение макета по умолчанию
?
х
Импорт макета
Промежуточные итоги
~ ока.з.ать все промежуточные итоги в верхней части группы
О Вtиlючать отобранные фидьтро•t злементы в итоги
Q6ЩЖ! итоги
}
Вtиlючить для стро к и столбцов
Макет от~ета
О Повторять все метки мементов
По казать в сжатой форме
Пустые строl<М
О Вставлять nyqyю строку после каждого -,лемента
r
1 §осстановить
значения
Excel
Рис.
по у•tолчанию
11.6. Диалоговое
[ Параметры fВодной таблицы ...
ок
окно Изменение макета по умолчанию
От.tена
Сводные таблицы
♦
Импорт макета
1
295
(Layout Import)
Используйте этот параметр, если у вас уже есть сводная таблица, стиль которой
вы хотите применять по умолчанию. Выделите ячейку в сводной таблице, а за
тем щелкните на кнопке Импорт
♦
(lmport),
Параметры сводной таблицы (PivotTaЫe
чтобы импортировать настройки.
Options)
Открывает диалоговое окно Параметры сводной таблицы (PivotTaЫe
♦
Восстановить значения
Excel
по умолчанию
Options).
(Reset to Excel Default)
Используйте этот параметр для восстановления настроек сводной таблицы
Excel
по умолчанию.
Пояснение
Это экономящее время решение пригодится, если вам требуется, чтобы у создавае
мой новой сводной таблицы был конкретный стиль. Однако этот инструмент дос
тупен только для пользователей
11.9. Изменяем
Excel 2019
или более поздних версий для
Windows.
агрегацию значений
Задача
У вас есть сводная таблица, и вы хотите изменить агрегацию суммарных значений,
которые она отображает.
Решение
По умолчанию
дел Значения
Excel суммирует все числовые поля, которые вы добавляете в раз
(Values) панели Поля сводной таблицы (PivotTaЫe Fields). Однако
вы можете изменить эту агрегацию, чтобы отобразить среднее, максимальное зна
чение, минимальное значение и многое другое.
Чтобы изменить агрегацию значений (рис.
1.
В разделе Значения
(Values)
11. 7):
панели Поля сводной таблицы (PivotTaЫe
Fields)
просто щелкните на поле мышью или правой кнопкой мыши (в зависимости
от вашей версии
и в открывшемся контекстном меню выберите пункт
Excel)
Параметры полей значений
2.
На вкладке Операция
(Value Field Settings).
(Summarize Values Ву) открывшегося диалогового окна
(Value Field Settings) выберите тип расчета, кото
Параметры поля значений
рый собираетесь использовать (например, Среднее).
3.
Нажмите кнопку ОК, чтобы закрыть диалоговое окно и обновить сводную таблицу.
Вы также можете задействовать диалоговое окно Параметры поля значений
для изменения имени агрегации и формата ее чисел. Так,
чтобы изменить имя агрегации по умолчанию, впишите нужный текст в поле Поль
(Value Field Settings)
зовательское имя
(Custom Name),
а чтобы отформатировать значения чисел,
296
Глава
11
щелкните на кнопке Числовой формат
(Number Format) и воспользуйтесь возмож
(Format Cells) (см. разд. 1.3).
ностями открывшегося диалогового окна Формат ячеек
Пояснение
В этом разделе предлагается удобный способ изменения операций по умолчанию
Ехсе\ для значений сводной таблицы. Обратите внимание, что вы также можете
использовать его для добавления нескольких агрегаций одного и того же поля:
добавьте несколько раз нужное поле в раздел Значения
(Values) панели Поля
Fields), а затем используйте диалоговое окно Пара
(Value Fie\d Settings), чтобы назначить для добавленных по
сводной таблицы (PivotTaЬ\e
метры поля значений
лей требуемые операции.
о
Параметры поля 3Начений
Имя источника:
Суш,а
f!опьзоватепьское и••я:
Операция
х
Сум ,а по полю Су••••~
Дополнительные вычисления
Qne...
ВЫ берите операцию, которую следУет использовать для сведения
данных в вы6ранноtt1 поле
,.,
Количество
Среднее
МаКСИh1У•1
МИНИh1УМ
Произведение
[ ~исловой формат
Рис.
11.7. Диалоговое
11.10. Отображаем
ок
Отмена
окно Параметры поля значений
различные вычисления значений
Задача
У вас есть сводная таблица, и вы хотите отобразить ее значения в виде процентов,
промежуточных сумм и пр.
Решение
Выполните шаги из разд.
11. 9, чтобы открыть диалоговое окно Параметры поля
(Value Field Settings), и выберите агрегацию. Затем перейдите на вкладку
Дополнительные вычисления (Show Values As) и в раскрывающемся списке
значений
выберите один из доступных параметров:
♦ Без вычислений
(No Calculation)
Отображает значение агрегации без дополнительных вычислений.
Сводные таблицы
♦
%
от общей суммы(%
297
of Grand Total)
Этот параметр отображает значения в виде процентов от их общей суммы.
♦
%
от суммы по столбцу
(% of Column Total)
и
%
от суммы по строке
(% of
Row Total)
Эти параметры отображают значения в каждом столбце или строке в виде про
цента от содержащихся в них сумм.
♦
Доля(%
Ot)
Отображает значения в виде процентов от значения базового элемента в базовом
поле (которое вы выбираете сами).
♦
%
от суммы по родительской строке(%
родительскому столбцу(%
of Parent Row Total)
of Parent Column Total)
и
%
от суммы по
Пригодятся, если в вашей сводной таблице используются дополнительные стро
ки или столбцы, поскольку указанные параметры отображают значение в виде
процента от суммы по родительской строке или родительскому столбцу. «Под
капотом» эти параметры используют формулу (значение элемента)/ (значение роди
тельского элемента в выбранном базовом поле)
♦
%
от родительской суммы
.
(% of Parent Total)
Используйте этот параметр с дополнительными строками или столбцами, чтобы
отобразить значение в виде процента от родительского значения в базовом поле
(которое вы выбираете сами).
♦
Отличие
(Difference From)
и Приведенное отличие
(Difference From)
Эти параметры отображают разность и разность в процентах между значением
и базовым элементом в базовом поле (которое вы выбираете сами).
♦
С нарастающим итогом в поле
щим итогом в поле(%
(Running Total in)
Running Total in)
и
%
от суммы с нарастаю
Эти параметры отображают промежуточные суммы и проценты для элементов
в базовом поле (которое вы выбираете сами) (см. разд.
♦
Сортировка от минимального к максимальному
и Сортировка от максимального к минимальному
8.2).
(Rank Smallest to Largest)
(Rank Largest to Smallest)
Эти параметры отображают ранг каждого значения, начиная с ранга
разд.
♦
1
(см.
8.5).
Индекс
(Index)
Этот параметр рассчитывает индекс для каждого значения с помощью формулы
( (значение в ячейке) х (общий итог)) / ( (итог строки) х (итог столбца)).
Пояснение
Это решение позволяет настроить способ отображения значений в сводных табли
цах
Excel
в виде процентов, промежуточных сумм и пр.
Глава
298
11
11.11. Создаем
пользовательские промежуточные итоги
Задача
У вас есть сводная таблица с дополнительными строками или столбцами, и вы
хотите отобразить пользовательский промежуточный итог с агрегацией, отличной
от агрегации значений сводной таблицы.
Решение
Предположим, ваша сводная таблица использует поля Категория и Продукт для строк
и поле Сумм для значений, отображающее общую сумму для каждой категории и про
дукта. Вам же надо настроить промежуточный итог категории таким образом, чтобы
подсчитывалось число значений, в то время как суммы продуктов оставались бы
неизменными.
Для решения этой задачи вы можете изменить настройки поля категория (рис.
1.
В разделе Строки
панели Поля сводной таблицы (PivotTaЬle
(Rows)
11.8):
Fields)
просто щелкните мышью или правой кнопкой мыши (в зависимости от вашей
версии Ехсе\) на поле Категория и в открывшемся контекстном меню выберите
пункт Параметры поля
н
G
назааКМJt арок
s ~ -~--- ....
...
Сумма по nо11ю
. ......~~·····
Пирожные
Пицца
1зо11а,о!. / n~pJ1.н"1µ1ii ~ю/н1
80()1,S.5
_ _ _ _ _ бО313
Кофе
Поля сводной таблицы
мма
122716,48
95
8 Наnмт1СМ
(Field Settings).
5379:56
Чай
55004,39
Общиi мтоr
191101,98
V
Им• МСТОЧНМII:~ bтtroplUI
---
DoAi.юнu111o((OtMМJt
К.тr:rорИJ1
1 f'\pOMOt'fl'OЧttыt мтоrм " фК111tl'l)W
1111 к,..,..,...
Ктоrw
■ Прсщtп
О .11nо.-.н,чr:о::иr:
О моащ
■ c,-
OJ:!tT
@APYf11.t
..
вa.6tp"1t
,,..
ONfY
Дp-/ntr: табltицы.~
КIIM нtCl:o.o«O ~ЦМ.С
CptA,ttt t
М.11ксммум
....,.
Минимум
ПPOIOIU.tttMt
1 0 ~JОЧ~ ttOllllt .МtUttmf 8 ♦М1Мttр
~
,., 4
Отмtт
flep~IЩWtt пом & Н)'ЖН)'IО облкта:
pu
Т Фкт,тры
Рис.
11.8. Использование диалогового окна Параметры поля для подсчета значений Количество
поля Категория. Значения сумм для продуктов при этом остаются неизменными
Х
Сводные таблицы
2.
1
299
На вкладке Промежуточные итоги и фильтры
(Subtotals & Filters) открывше
(Value Field Settings) устано
вите переключатель в положение Другие (Custom Subtotals) и выберите тип опе
рации, который решили применить, - например, Количество (Count).
гося диалогового окна Параметры поля значений
3.
Нажмите кнопку ОК, чтобы закрыть диалоговое окно и обновить сводную таблицу.
Некоторых пользователей могут сбить с толку промежуточные итоги, использую
щие агрегацию, отличную от агрегации значений сводной таблицы. Попробуйте
вместо этого воспользоваться решением из разд.
агрегаций в раздел Значения
(Values)
11. 9,
чтобы добавить несколько
панели Поля сводной таблицы (PivotTaЫe
Fields).
Пояснение
Этот мало кому известный метод демонстрирует процесс создания пользователь
ских промежуточных итогов с агрегациями, отличными от агрегаций значений
сводной таблицы.
Обратите внимание, что увидеть эти промежуточные
итоги
можно только в сводных таблицах, использующих дополнительные строки или
столбцы.
11.12. Сортируем данные
Задача
У вас есть сводная таблица, и вы хотите отсортировать ее данные.
Решение
По умолчанию Ехсе\ добавляет стрелки раскрывающихся списков сортировки
и фильтрации для меток строк и столбцов сводной таблицы, и вы можете использо
вать их, чтобы указать метод сортировки данных.
Если стрелки сортировки и фильтрации в сводной таблице отсутствуют, добавить
их к заголовкам можно, выделив ячейку в сводной таблице и выполнив команду
меню Анализ сводной таблицы (PivotтaЫe
ки полей
Analyze) 1 Показать (Show) 1 Заголов
(Field Headers).
Чтобы отсортировать элементы строк или столбцов, откройте меню сортировки и
фильтрации, щелкнув на стрелке раскрывающегося списка, выберите поле (если вы
используете дополнительные строки или столбцы), а затем воспользуйтесь доступ
ным параметрами, чтобы указать порядок сортировки. Вы можете отсортировать
элементы по возрастанию или по убыванию, а также выбрать вариант Дополни
тельные параметры сортировки
по вычислениям
(More Sort Options),
чтобы отсортировать данные
значений сводной таблицы или определить пользовательский
порядок сортировки.
300
Глава
11
Когда вы сортируете элементы сводной таблицы по возрастанию или по убыванию,
Excel
сначала
(см. разд.
1.13).
проверяет,
являются
ли
они
частью
пользовательского
списка
Так, если сводная таблица содержит, например, элементы янв и
Фев, и существует пользовательский список месяцев, в который они включены,
сводная таблица будет использовать для их сортировки именно этот список.
Пояснение
Ехсе\ автоматически сортирует сводные таблицы по умолчанию. Однако это реше
ние позволяет изменить сортировку по умолчанию, чтобы отсортировать значения
в любом предпочтительном для вас порядке.
11.13. Перемещаем
элементы вручную
Задача
У вас есть сводная таблица, и вы хотите вручную переместить ее элементы, а не
сортировать их.
Решение
Чтобы
вручную переместить элемент в строке или столбце сводной таблицы,
щелкните
правой
Переместить
кнопкой
(Move)
мыши
на элементе
и
используйте
команды
пункта
открывшегося контестноrо меню для изменения его местопо
ложения. В зависимости от текущей позиции элемента обычно его перемещают
вверх, вниз, в начало или в конец его группы.
Пояснение
Этот решение пригодится, если вам понадобится вручную отсортировать сводную
таблицу определенным образом. Например, можно использовать его для переме
щения вычисляемого элемента (см. разд.
11.23)
в верхнюю или нижнюю часть его
группы.
11.14. Фильтруем данные
Задача
У вас есть сводная таблица, и вы хотите отфильтровать ее данные.
Решение
Наиболее удобный способ фильтрации сводной таблицы заключается в использо
вании стрелок раскрывающихся списков сортировки и фильтрации, которые
добавляет к меткам строк и столбцов (см. разд.
11.12).
Excel
Чтобы применить фильтр
с помощью этого метода, откройте меню сортировки и фильтрации, щелкнув на
Сводные таблицы
301
стрелке раскрывающегося списка, выберите поле (если вы используете дополни
тельные строки или столбцы), а затем воспользуйтесь доступным параметрами,
чтобы отфильтровать метки или значения данных.
Второй способ фильтрации сводной таблицы состоит в добавлении поля в раздел
Фильтры
Excel
(Filter)
панели Поля сводной таблицы (PivotТaЬle
Fields).
При этом
создает над сводной таблицей отдельный фильтр, который вы можете исполь
зовать для фильтрации данных (рис.
11.9).
F
н
G
---
Старрубль
Компани я
Названия строк
.r
(Jlмма по полю Сумма
16547
Валентин
Л ариса
Рис.
11.9.
U48
Людмила
23457
общийитоr
41252
Поле Компания сводной таблицы добавлено в раздел Фильтры
панели Поля сводной таблицы
•
•
Вы не можете добавить поле в раздел Фильтры
(Filter) и одновременно включить
(Rows) или Столбцы (Columns). Если вы попробуете это
сделать, Excel автоматически удалит поле из других разделов.
его в разделы Строки
/
Еще один способ фильтрации данных заключается в использовании среза
пла
-
вающего объекта, который позволяет выбирать, какие значения отображать. Для
вставки среза выделите ячейку в сводной таблице, выполните команду меню Ана
лиз сводной таблицы (PivotTaЫe
Slicer),
Analyze)
1
Фильтр
(Filter)
1
Вставить срез
(lnsert
выберите, для каких полей вам надо включить срезы, и нажмите кнопку
ОК. Чтобы воспользоваться срезом, щелкните на значении, которое должна ото
бразить сводная таблица, и нажмите кнопку множественного выбора G.!], позво
ляющую выбрать несколько значений (рис. 11.1 О). Несколько значений также мож
но выбрать, удерживая во время их выбора нажатой клавишу <Ctrl> ( <Cmd> ) .
Сумма по полю су Названия столбцов
.т
Названия строк ·µ1 nосмделкино
Компания
СТаррубль общий итоr
16547
Людмила
690324
6742
67643
Общийитоr
764709
Валентин
Лариса
Рис.
11.10.
1248
706871
7990
23457
91100
41252
805961
,.,_
✓-
✓-
?х
Манrафе
( Посиделкино
]
1Старрубль
]
Сводная таблица, отфильтрованная с помощью среза Компания
Если сводная таблица содержит какие-либо поля данных, для фильтрации ее значе
ний вы можете использовать временную шкалу
-
плавающий объект, который ра
ботает аналогично срезу, но фильтрует данные по годам, месяцам, календарным
302
Глава
11
кварталам или дням. Для вставки временной шкалы выделите ячейку в сводной
таблице, выполните команду меню Анализ сводной таблицы (PivotTaЬ\e
Фильтр
(Filter)
1
Вставить временную шкалу
(lnsert Timeline),
Analyze)
1
выберите, для
каких полей данных вам надо включить временную шкалу, и нажмите кнопку ОК.
Чтобы воспользоваться временной шкалой, выберите тип периода, по которому
нужно отфильтровать сводную таблицу, а затем требуемый период (рис.
'!;.;
Дата заказа
2022
КВАРТАЛЫ
2022
Kl
2023
К2
кз
К4
Kl
К2
кз
◄
Рис.
11.11.
11. l l ).
К4
►
Временная шкала, фильтрующая сводную таблицу по кварталам
Временная шкала может фильтровать сводную таблицу только по смежным пе
риодам. Если же вам нужно отфильтровать ее по несмежным периодам, лучше
сгруппируйте сводную таблицу по дате (см. разд.
11.16)
и используйте срезы для
фильтрации групп.
Пояснение
В этом разделе представлены несколько методов фильтрации данных сводной таб
лицы. Первоочередное внимание уделяется способу фильтрации сводной таблицы и
целевой аудитории. И хотя срезы и временные шкалы обычно проще использовать
и интерпретировать, параметры раскрывающихся списков сортировки и фильтра
ции все же более эффективны.
Временные шкалы могут фильтровать данные только по календарным кварталам,
но не по финансовым. Чтобы отфильтровать данные по финансовым кварталам,
воспользуйтесь рекомендациями разд.
6.4
для извлечения квартала, добавьте его
в исходную таблицу в виде вычисляемого столбца, после чего отфильтруйте свод
ную таблицу по этому полю. Есть и альтернативный подход - для его реализации
16.13 (если вы работаете в Excel для Windows).
обратитесь к разд.
11.15. Используем
фильтр
для создания нескольких сводных таблиц
Задача
У вас есть сводная таблица, и вы хотите быстро создать отдельные сводные табли
цы для каждого поля значений.
Сводные таблицы
1
303
Решение
Предположим, ваша сводная таблица содержит поля Компания, Продавец, дата заказа и
Сумма, и вам надо создать отдельную сводную таблицу для каждого значения поля
Компания. Вы можете сделать это, выполнив следующие шаги:
1.
На панели Поля сводной таблицы (PivotTaЬle
Fields)
перетащите поле, для ко
торого собираетесь создать новую сводную таблицу (в нашем примере это поле
компания), в раздел Фильтры
2.
Выполните команду меню Анализ сводной таблицы (PivotTaЬle
Сводная
таблица
(PivotTaЬle)
(Options) выберите пункт
Filter Pages) - откроется
чета (Show Report Filter).
3.
(Filter).
и
в
раскрывающемся
Analyze)
1
списке
Параметры
Отобразить страницы фильтра отчета
(Show Report
диалоговое окно Отображение страниц фильтра от
Открывшееся диалоговое окно отображает список полей раздела Фильтры
(Filter)
панели Поля сводной таблицы (PivotTaЫe
Fields),
и вы можете исполь
зовать этот список, чтобы указать, для каких полей вам надо создать новые
сводные таблицы. В нашем примере вы собирались создать отдельные сводные
таблицы для каждого значения поля Компания, поэтому установите флажок на по
ле Компания.
4.
Нажмите кнопку ОК, и Ехсе\ создаст новые сводные таблицы для каждого зна
чения, размещая их на отдельных рабочих листах.
Пояснение
В этом разделе представлен быстрый способ создания отдельных сводных таблиц
для каждого элемента поля. Учтите также, что если вы добавите в поле новое зна
чение, Ехсе\ не создаст автоматически новую сводную таблицу, поэтому вы долж
ны сделать это вручную.
11.16. Группируем
по дате/времени
Задача
У вас есть сводная таблица с полем даты, и вы хотите выбрать способ группировки
вычислений: по году, кварталу, месяцу и далее.
Решение
По умолчанию Ехсе\ автоматически группирует все поля даты и времени, которые
вы используете для строк и столбцов. Так, если ваша сводная таблица содержит
поле даты, и вы добавляете это поле в раздел Строки
таблицы (PivotTaЫe
Fields),
(Rows)
панели Поля сводной
Ехсе\ автоматически группирует его значения по году,
кварталам и месяцам. Аналогично, если вы добавите в раздел Строки
времени, Ехсе\ автоматически сгруппирует его значения по часам.
(Rows)
поле
Глава
304
11
Чтобы отключить автоматическую группировку для полей даты/времени в Excel для
Windows, выполните команду меню Файл (File) 1 Параметры (Options) 1 Данные
(Data) и установите флажок Отключить автоматическое группирование столб
цов даты и времени в сводных таблицах (DisaЫe automatic grouping of DatefТime
columns in PivotTaЫes). Если вы работаете в Excel для macOS, то найдете эту
опцию, выполнив команду меню Excel I Параметры (Preferences) 1 Таблицы и
фильтры (ТаЫеs & Filters).
Добавив в сводную таблицу поле даты/времени, вы сможете вручную настроить
способ его группировки. Выделите для этого одну из ячеек даты/времени, выпол
ните команду меню Анализ сводной таблицы (PivotTaЬ\e
(Group)
1
Группировка по выделенному
шемся диалоговом окне Группирование
(Group Se\ection) и
(Grouping) нужный
Analyze)
1
Группа
выберите в открыв
вам способ группи
ровки данных, щелкнув мышью на требуемом варианте. Вы также можете здесь
нажать клавишу
<Ctrl>
и, не отпуская ее, последовательно щелкнуть на нескольких
подходящих вариантах. Нажмите затем кнопку ОК, и
пировку (рис.
Е
применит вашу груп
Excel
11.12).
F
н
G
к
L
м
Названия crpoк f .., сумма по полю сумма
1
1+ 2022
~ мар
78976
1525973
1417072
702211
23289
691572
+1 Кв-л2
108901
-'1 2023
;J Кв-лl
янв
фев
Общий итог
1604949
х
?
Группирование
Авто
БZJ.5;
14.12.2022
Б2J по.: [09.04.2023
С шагом~
Секу нды
Минуты
Часы
!
Мtсяцы
Кsартзлы
Го ы
ОК
Рис.
11.12. Диалоговое
0т••ена
окно Группирование для полей даты/времени
и соответствующая сводная таблица
Использовать диалоговое окно Группирование
(Grouping)
даты/времени можно и
для задания первой и последней даты, которые должна отображать сводная таб
лица, и группировки результатов за указанное количество дней. Так, чтобы упоря
дочить значения в трехдневные группы, выберите пункт Дни
в поле количество дней
(Days)
и введите
3
(Number of days).
И наконец, вы можете разгруппировать даты, выделив ячейку, содержащую один
из
элементов
(PivotTaЬ\e
группы,
Analyze)
1
и
выполнив
Группа
(Group)
команду
1
меню
Анализ
Разгруппировать
сводной
(Ungroup).
таблицы
Сводные таблицы
1
305
Пояснение
В этом разделе показано, как группировать сводную таблицу с помощью полей
даты/времени. Обратите внимание, что вы можете отфильтровать любые добавлен
ные вами группы, используя это решение вместе с решением ю разд.
11.14.
Дополнение
Excel
добавляет все созданные вами группы в каждую сводную таблицу, исполь
зующую один и тот кеш. Более подробно об этом рассказано в разд.
11.17. Группируем
11.28.
по числу
Задача
У вас есть сводная таблица с числовым полем, и вы хотите сгруппировать итоговые
значения по числовым диапазонам.
Решение
Предположим, в вашей сводной таблице имеются поля Студент и оценка, причем
в поле Оценка содержатся числовые значения, а в поле Студент
-
текстовые значе
ния, и вам надо подсчитать, сколько студентов получили оценку от
до
1.
20,
от
21
до
30
На панели Поля сводной таблицы (PivotTaЫe
в раздел Строки
2.
(Rows),
а поле Студент
до
I О,
от
11
-
Fields)
перетащите поле Оценка
в раздел Значения
(Values).
В сводной таблице выделите ячейки поля Оценка и выполните команду меню
Анализ сводной таблицы (PivotTaЬle
по выделенному
3.
I
и т. д. Вы можете сделать это, выполнив следующие шаги:
Analyze)
1
Группа
В открывшемся диалоговом окне Группирование
с
(Group)
1
Группировка
(Group Selection).
(Grouping)
используйте поля
(Ending At) - чтобы указать нижний и верхний пределы
- чтобы задать интервал для каждой группы. Так,
группировки значений от 1 до 100, где интервал для каждой группы ра
I О, введите 1 в поле с (Starting At), 100 в поле по (Ending At) и 10 в поле С
(Starting At)
и по
групп, и поле С шагом (Ву)
для
вен
шагом (Ву).
4.
Нажмите кнопку ОК, и
(рис.
Excel
применит сделанные изменения к сводной таблице
11.13 ).
Чтобы удалить группы, выделите ячейку, содержащую один из элементов группы,
и выполните команду меню Анализ сводной таблицы (PivotTaЫe
па
(Group)
1 Разгруппировать
Analyze)
1
Груп
(Ungroup).
Пояснение
Это решение аналогично решению из разд.
11.6,
за исключением того, что оно
показывает, как группировать сводную таблицу с помощью числовых полей.
Глава
306
11
с
Е
D
..,
Названия сrрок
!1-10
F
н
G
Сумма по полю Количесrво
!
71-80
81-90
Авто
75
85
91-100
100
Общий итог
470
о~
11
0п.о:
100
С шагом :
10
ок
Рис.
11.13. Диалоговое
х
?
Группирование
5
205
бl-70
Отмена
окно Группирование для числовых полей
и соответствующая сводная таблица
Дополнение
Excel
добавляет все созданные вами группы в каждую сводную таблицу, исполь
зующую один и тот кеш. Более подробно об этом рассказано в разд.
11.18. Группируем
11.28.
вручную по текстовым значениям
Задача
У вас есть сводная таблица с текстовым полем, и вы хотите вручную сгруппировать
расчеты по текстовым значениям.
Решение
Предположим, в вашей сводной таблице имеются поля Продукт и Сумма, причем в по
ле
Продукт
содержатся
текстовые
значения,
а
в
поле
Сумма
-
числовые
значения,
и вам надо создать специальные группы для некоторых продуктов и отобразить
сумму их сумм. Сделать это можно, выполнив следующие шаги:
1.
На панели Поля сводной таблицы (PivotTaЫe
в раздел Строки
2.
(Rows),
Fields)
перетащите поле Продукт
а поле Сумма- в раздел Значения
(Values).
В сводной таблице выделите ячейки, содержащие названия схожих продуктов,
и выполните команду меню Анализ сводной таблицы (PivotTaЫe
Analyze)
Группа
чтобы их
(Group)
1
Группировка по выделенному
(Group Selection),
1
сгруппировать.
3.
Повторите шаг
4.
Назовите каждую группу, выделив метку группы и введя ее имя в ячейку или
2,
чтобы создать группы для оставшихся элементов поля Продукт.
в панель формул (рис.
11.14 ).
Чтобы удалить созданные группы, выделите их и выполните команду меню Анализ
сводной
таблицы
(Ungroup).
(PivotTaЫe
Analyze)
1
Группа
(Group)
1
Разгруппировать
Сводные таблицы
с
в
д
1 ~~iil.iL.:..UGlill:.шl...;..Jlw.i.;a;iilbl..:..J,;Uli/,lolilli,l..;..j
Названия строк
2
:::l [Да
Напитки
Чай
4
Еда
Б почка
Январь
5
Напитки
Кофе
Февраль
6
Напитки
Чай
Февраль
7
Еда
Булочка
Февраль
8
Еда
Пицца
Январь
9
Еда
Пицца
Февраль
3
Январь
47862,12
1457,57
4125,41 ,
7142,27
6543,98
41258,24
81458,24
н
G
F
D
•
307
Сумма по полю Сумма
Чай
130718,03
8001,55
122716,48
60333,95
5379,56
55004,39
Общий итог
191101,98
Булоч ка
Пицца
-~ напитки
Кофе
10
Рис.
11.14.
Исходная таблица (слева) и сводная таблица,
отображающая две созданные вручную группы (справа)
Пояснение
Это решение пригодится, если вы хотите воспроизвести результаты , аналогичные
полученным
при использовании дополнительных строк (см . разд.
11.4),
но не
можете задействовать для получения групп значения другого поля . Вместо этого вы
можете вручную добавить специальные группы .
Дополнение
Excel
добавляет все созданные вами группы в каждую сводную таблицу, исполь
зующую один и тот кеш . Более подробно об этом рассказано в разд.
11.19. Включаем
11.28.
группы с отсутствующими данными
Задача
У вас есть сводная таблица, строки которой сгруппированы , и вы хотите , чтобы она
отображала каждую группу, включая группы, в которых нет данных .
Решение
Предположим , ваша сводная таблица содержит поля Студент и Оце н ка, и вы восполь
зовались рекомендациями разд.
Строки
(Rows)
11.1 7,
чтобы добавить группу поля оценка в раздел
и группу поля С туде нт в раздел Значения
(Values).
При этом вам
нужно, чтобы сводная таблица отображала все группы поля Оценка , включая те, что
не содержат данных .
По умолчанию сводная таблица отображает только те группы, которые содержат
значения. Однако вы можете изменить это, выполнив следующие шаги :
1.
В разделе Строки
(Rows)
панели Поля сводной таблицы (PivotTaЫe
Fields)
просто щелкните мышью или правой кнопкой мыши (в зависимости от вашей
версии
Excel)
на поле и в открывшемся контекстном меню выберите пункт
Параметры поля
(Field Settings).
308
2.
1
Глава
11
(Layout & Print) открывшегося диалогового окна
(Value Field Settings) установите флажок Показать
без данных (Show items with по data).
На вкладке Разметка и печать
Параметры поля значений
элементы
3.
Нажмите кнопку ОК, и Ехсе\ применит сделанные изменения к сводной таблице.
Пояснение
В этом разделе предлагается удобный способ сделать так, чтобы сводная таблица
отображала строки для всех групп, включая те, что не содержат данных. Обратите
внимание, что по умолчанию все строки, не содержащие данных, отображают свои
значения в виде пустых ячеек, а не в виде нулей, но вы можете изменить это пове
дение, воспользовавшись рекомендациями разд.
11.20. Изменяем
11. 20.
формат пустых ячеек
Задача
У вас есть сводная таблица с пустыми ячейками, и вы хотите изменить их формат,
чтобы они отображали нули или н/д.
Решение
Если в какой-либо ячейке сводной таблицы нет значения, по умолчанию эта ячейка
остается пустой. Однако, выполнив следующие шаги, вы можете изменить формат
по умолчанию и заменить пустые ячейки заданным числом или текстовым значе
нием:
1.
Выделите ячейку в сводной таблице и выполните команду меню Анализ свод
ной таблицы (PivotTaЬ\e
Analyze)
1
Сводная таблица (PivotTaЬ\e)
1
Параметры
(Options).
2.
(Layout & Format) открывшегося диалогового окна
Параметры сводной таблицы (PivotТaЬ\e Option) установите флажок Для
пустых ячеек отображать (For empty cells show) и укажите число или текст,
На вкладке Макет и формат
которые должна отображать сводная таблица в пустых ячейках. Так, чтобы ото
бражать, например, ноль, вы должны ввести О.
3.
Нажмите кнопку ОК, и Ехсе\ применит сделанные изменения к сводной таб
лице.
Пояснение
В этом разделе представлен быстрый способ изменения отображения в сводной
таблице ячеек с пустыми значениями. Его удобно использовать в сочетании с ре
шением из разд.
11.19,
поскольку он дает вам возможность форматировать значе
ния любой группы с отсутствующими данными.
Сводные таблицы
11.21. Используем
1
309
вычисляемые поля
Задача
У вас есть сводная таблица, и вы хотите добавить пользовательскую формулу,
которая ссылается на одно или более полей.
Решение
Предположим, ваша таблица содержит столбцы Продавец, Количество и Сумма, и вам
надо создать сводную таблицу, отображающую бонус каждого продавца, который
составляет
2%
от общего количества, если будет продано более
5000
единиц това
ра. Чтобы решить эту задачу, вы можете включить в создаваемую сводную таблицу
вычисляемое поле
-
пользовательскую формулу, использующую одно или более
полей сводной таблицы (рис.
1.
11.15):
Создайте сводную таблицу и добавьте поле Продавец в раздел Строки
а поле Сумма- в раздел Значения
?
Вставка вычисляемого поля
х
Доо_авить
Бонус
~рмула :
(Rows),
(Values).
:ЕСЛИ(Количество> 5000;Суыма*2%;0)
,дашть
---
Сумма
!Добавить пов_е 1
ОК
Рис.
2.
3.
окно Вставка вычисляемого поля
Выделите ячейку в сводной таблице и выполните команду меню Анализ свод
ной таблицы (PivotTaЫe
1
Вычисления
ты и наборы
1
Вычисляемое поле
Analyze)
(Fields, Items, & Sets)
(Calculations) 1 Поля, элемен
(Calculated Field).
В поле Имя
поля
4.
11.15. Диалоговое
Закрыть
(Name) открывшегося диалогового окна Вставка вычисляемого
(lnsert Calculated Field) введите имя вычисляемого поля (например, Бонус).
Добавьте в поле Формула
чтобы вернуть
2%
(Formula)
пользовательскую формулу. Например,
от количества, если было продано более
введите формулу =ЕСЛИ(Количество>SООО;Сумма*2%;0).
5000
единиц товара,
Глава
310
11
Вместо того чтобы вручную вводить название поля, вы можете добавить его имя
в формулу вычисляемого поля, выполнив на нем двойной щелчок мышью в списке
Поля
диалогового окна Вставка вычисляемого поля
(Fields)
(lnsert Calculated
Это поможет избежать опечаток, и особенно полезно для имен полей, со
держащих пробелы, которые необходимо заключить в одиночные кавычки , на
Field).
пример, 'Цена Единицы'.
По нажатию кнопки ОК
Excel закроет диалоговое окно Вставка вычисляемого
(lnsert Calculated Field), добавит новое вычисляемое поле к списку полей па
нели Поля сводной таблицы (PivotTaЬ\e Fields), добавит его в раздел Значения
(Values) (как Сумма по полю Бонус) и отобразит результаты в сводной таблице
(рис. 11.16).
поля
А
С
8
3
4
D
• IЦфjф/§Jlфl"' G§SM@M .. ~
1 ·.
2
87
Алексей
Ларис.а
5
Алексей
б
Людмила
7
Лари~
в
Валею-мн
9
10
Людмила
1500
900
1859
45017
4200
44982
Валентин
54
1400
Нмвания строк • Сумма по полю Бонус
Алексей
23457 1
678754 1
О
Валентин
14137,42
159,8
2647,16
32098,98
Лариса
1248
7В976
Людмила
Общиймтоr
676431
6742
16547
690324
Поля сводной таблицы
V
Х
Вы~рите пот~ для добаем1-н1.я е отчет:
1!1
Про,о,вец
О Колнчtсrео
О Сумма
1!1
41258.
Бонус
Дpyr11t таблнць1 ...
11
12
13
14
15
16
17
1В
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Перенщите поля е нужную сбмст11;
Т Фм~.тры
"'
Строки
Прод111tц
Рис.
11.16.
1 Столбцы
Е Зн"чени.я
..,
Сумм,1 по полю Бонус
.,,
Исходная таблица (слева) и сводная таблица (в центре),
включающая вычисляемое поле Бонус
Чтобы удалить вычисляемое поле из сводной таблицы, удалите его из раздела
Значения
(Values)
панели Поля сводной таблицы (PivotTaЬ\e
Fields).
Вы также
можете изменить или навсегда удалить его следующим образом:
1.
2.
Выделите ячейку в сводной таблице и выполните команду меню Анализ свод
ной таблицы (PivotТaЬ\e
1
ты и наборы
1
Analyze)
(Fields, ltems, & Sets)
В раскрывающемся списке Имя
ка вычисляемого поля
Вычисления
(Calculations) 1 Поля, элемен
Вычисляемое поле (Calculated Field).
(Name) открывшегося диалогового окна Встав
(Insert Calculated Field) выберите вычисляемое поле.
Сводные таблицы
3.
Либо измените формулу и нажмите кнопку Изменить
формулу, нажав кнопку Удалить
(Close),
(Modify),
311
либо удалите
Затем нажмите кнопку Закрыть
(Delete ).
чтобы закрыть диалоговое окно.
•··~···
•• •• • Программа Excel добавляет все созданные вами вычисляемые поля в кеш сводной
таблицы (см. разд. 11.28), поэтому они становятся автоматически доступными для
i•.
всех других сводных таблиц, использующих тот же самый кеш. Так что, если вы
измените или навсегда удалите вычисляемое поле в одной сводной таблице, это
!
• • •••
повлияет и на другие сводные таблицы.
У вычисляемых полей имеются следующие ограничения:
♦
вы можете добавлять их только в раздел Значения
ной таблицы (PivotTaЫe
(Columns)
♦
или
Fields),
Фильтры (Filters);
панели Поля свод
(Values)
но не в разделы Строки
(Rows),
Столбцы
они не могут ссылаться на ячейки рабочего листа или на какие-либо итоги или
промежуточные итоги сводной таблиц;
♦
в их формулах учитывается сумма всех полей, на которые они ссылаются, и все
формулы
образом,
тат
или
функции,
вычисляемое
вычисления
по
включаемые
поле с
формуле
=ЕСЛИ(Количество>5ООО;Сумма*2%;0)
вами,
формулой
=СУММ (Сумма),
неявно
используют эти
=Сумма
а
неявно
формула
возвращает
суммы.
Таким
возвращает резуль
вычисляемого
результат
поля
вычисления
по
формуле =ЕСЛИ (СУММ (Количество) >lООО;СУММ (Сумма) *2%; О);
♦
изменение агрегации вычисляемого поля в разделе Значения
Поля сводной таблицы (PivotTaЬle
Fields)
(Values)
панели
не влияет на его возвращаемое зна
чение. Например, если вы измените агрегацию с Сумма на Количество, вычисляемое
поле останется неизменным.
Г ••
'
Вычисляемые поля легко интерпретировать неправильно, т. к. они неявно суммируют все поля, на которые ссылаются, вместо того, чтобы использовать значения
•
базовой таблицы. Поэтому, если сводная таблица содержит поля с названиями
Количество И ЦенаЕдиницы, формула вычисляемого поля =Количество*ЦенаЕдиницы не-
явно добавляет в сводную таблицу вычисление по формуле =СУММ (Количество)*
СУММ (ЦенаЕдиницы) вместо =СУММ (Количество* ЦенаЕдиницы).
Пояснение
В этом разделе представлен способ использования вычисляемых полей, позволяю
щий добавлять в сводную таблицу пользовательские формулы, которые ссылаются
на одно или более полей. Вычисляемые поля работают аналогично вычисляемым
столбцам в таблице
руют все поля,
(см.
разд.
2.19),
за исключением того, что они неявно сумми
на которые ссылаются,
поэтому могут возвращать разные резуль
таты.
Дополнение
Другой способ добавления пользовательских формул состоит в использовании вы
числяемых элементов (см. разд.
11.23).
312
Глава
11
11.22. Используем
вычисляемые поля
для подсчета элементов
Задача
У вас есть сводная таблица, и вы хотите добавить пользовательскую формулу,
которая ссылается на подсчет одного или нескольких полей.
Решение
Вычисляемое поле (см. разд.
11.21)
неявно использует в своей формуле сумму каж
дого поля, поэтому формула =Сумма в вычисляемом поле неявно вычисляет значение
по формуле =СУММ (Сумма). Если вам надо использовать количество элементов поля
вместо его суммы, можно пойти следующим обходным путем:
1.
Добавьте в исходную таблицу сводной таблицы новый столбец
-
к примеру,
с именем КоличествоЭлементов. Затем в первую строку столбца введите =1 и на
жмите клавишу
2.
<Enter>,
чтобы вставить
1в
каждую его строку.
Обновите данные для всех сводных таблиц, ссылающихся на исходную таблицу
(см. разд.
11.5),
чтобы добавить новый столбец в список полей сводной таблицы
в качестве нового поля.
3.
Когда вам потребуется подсчитать число элементов, создайте вычисляемое поле,
формула которого ссылается на новое поле.
Так, чтобы вернуть количество элементов таблицы, нужно создать вычисляемое
поле с формулой =КоличествоЭлементов, которая неявно вычисляет значение по фор
муле =СУММ (КоличествоЭлементов). Поскольку поле КоличествоЭлементов равно
дого элемента, то формула =СУММ (КоличествоЭлементов)
Аналогично
неявно
формула
использует
СУММ(Сумма)*2%;0)
и
вычисляемого
вычисление
возвращает
по
2%
поля
каж
=ЕСПИ (Количествоэлементов>5;Сумма*2%; О)
формуле
от
1 для
возвращает число элементов.
общей
=ЕСЛИ (СУММ (КоличествоЭлементов) >5;
суммы,
если
элементов
больше
пяти.
Пояснение
В этом разделе предлагается полезный обходной путь, дающий возможность доба
вить пользовательскую формулу, которая подсчитывает элементы поля, а не сум
мирует их.
11.23. Используем
вычисляемые элементы
Задача
У вас есть сводная таблица, и вы хотите добавить пользовательскую формулу, ко
торая ссылается на один или более элементов в одном поле.
Сводные таблицы
313
Решение
Предположим, ваша таблица содержит поля Сумма и Статус, где поле Статус может
принимать
значения
Задерживается,
Отправлено,
Возвращено
или
Отменено,
и
вам
надо
создать сводную таблицу, отображающую итоговую сумму для каждого статуса
и включающую дополнительную строку, содержащую сумму всех неудач (сумм
со статусом Возвращено или Отменено), которая затем вычитается из общего итога.
Решить эту задачу можно, включив в создаваемую сводную таблицу вычисляемый
элемент
-
пользовательскую формулу, которая ссылается на один или более эле
ментов в одном поле сводной таблицы (рис.
1.
11.17):
Создайте сводную таблицу и добавьте поле Статус в раздел Строки
а поле Сумма в раздел Значения
2.
В сводной таблице выделите одно из значений поля статус.
3.
Выполните команду меню Анализ сводной таблицы (PivotTaЫe
Analyze)
(Fields, Items, & Sets)
числения
(Calculations) 1 Поля, элементы и наборы
(Calculated Item), чтобы открыть диалоговое
вычисляемого элемента (Insert Calculated ltem) для этого поля.
числяемый объект
4.
В поле Имя
(Name)
В поле Формула
примера:
=-
1
Вы
1
Вы
окно Вставка
открывшегося диалогового окна введите имя вычисляемого
элемента (например, Возмещено)-это имя
5.
(Rows),
(Values).
(Formula)
Excel
отобразит в сводной таблице.
введите пользовательскую формулу (для нашего
(Отменено+Возвращено) ).
Вы
также
можете
добавлять
в формулу, добавив, например, поле Регион в список Поля
(fi.:ds)
элементы
диалогового
окна и выполнив двойной щелчок мышью на элементе в списке Элементы
(ltems ). Можно
(Insert ltem).
также выбрать элемент и нажать кнопку Добавить элемент
По нажатию кнопки ОК
Excel
добавит элемент в поле в качестве нового значения
и отобразит его в сводной таблице как новую строку. Это значение включено
?
Вставка вычисляемого элемента в "С татус"
Имн;
- - ~v
Воз ~1ещено
~рмула: [ =-( От.1енено ~ Возвращено)
Qоля:
Сумма
1441Щ
!1_з_м_ен_ит_ь_ __.
1
...._ _
__ J
~-----------~
х
l'далить
2лементы:
Возвращено
Задерживается
Отменено
Отправлено
V
Добавить ПО!!е
ОК
Рис.
11.17. Диалоговое
1
3акрыть
окно Вставка вычисляемого элемента
Глава
314
11
в общий итог, поэтому в нашем примере любые неудачи из него вычитаются
(рис.
1 1.18).
: ~ Если в разных полях у вас содержатся одинаковые значения, и вы попытаетесь
.,·.
сослаться на такое значение в формуле вычисляемого элемента, Excel может ото•
бразить сообщение об ошибке. В этом случае вам следует указать, на какое имен• но значение вы ссылаетесь, включив в формулу имя поля. Например, чтобы
сослаться на значение возвращено в поле статус, используйте в формуле имя Ста
тус [Возвращено]
А
1
2
с
в
-
.
-1
23457,01 Отправлен о
1
..
Е
D
На з вания строк
•
Сумма по полю Сумма
764709
Возвращено
Отправлено
Задерживается
Задерживается
Отменено
Задерживается
Отправлено
Воз в ращено
Возмещено
-781256
Общий итог
823694
3
678754
4
1248
5
78976,99
б
57643
7
5742
Возвращено
1
16547
J
743469,01
15547
690324
Возвращено
10
41258
Отправлено
х
V
~
Вь1бе:рите nол.я ДЛR добавления а отчет:
80224,99
Р]
Поиск
r.11
r.11
Отмене н о
8
9
Поля сводной таблицы
Сум ...
Статус
Другие таблицы ...
1
11
12
13
14
15
16
17
1
18
- --·---
19
Перет11щите пол.я а нужную область:
20
21
Т Фильтры
22
1
Столбцы
1
23
24
25
26
27
28
29
-
30
Строки
Статус
31
.
I: Значен•t.я
Сумма
no
nолю Сумма
'W
17.
Рис.
11.18.
Сводная таблица, включающая вычисляемый элемент Возмещено
Для удаления вычисляемого элемента вы можете применить исключающий его
фильтр. Изменить или навсегда удалить из сводной таблицы вычисляемый элемент
можно следующим образом:
1.
Выделите вычисляемый элемент в сводной таблице и выполните команду меню
Анализ сводной таблицы (PivotTaЫe
Поля, элементы и наборы
Analyze) 1 Вычисления (Calculations) 1
(Fields, Items, & Sets) Вычисляемый объект
1
(Calct1lated ltem).
2.
Выберите в открывшемся диалоговом окне Вставка вычисляемого элемента
(lnsert Calcнlated ltem)
(Name).
вычисляемый элемент из раскрывающегося списка Имя
Сводные таблицы
3.
Измените формулу и нажмите кнопку Изменить
лу, нажав кнопку Удалить
(Delete).
(Modify)
315
либо удалите форму
Затем нажмите кнопку Закрыть
(Close),
чтобы закрыть диалоговое окно.
Вы также можете изменить формулу вычисляемого элемента в сводной таблице,
выделив ячейку, содержащую один из вычисляемых элементов, и изменив формулу
в панели формул.
Программа
Excel
добавляет все созданные вами вычисляемые элементы в кеш
сводной таблицы (см. разд.
11.28),
поэтому все другие сводные таблицы, исполь
зующие тот же самый кеш, наследуют их. Таким образом, удаление вычисляемого
элемента из одной сводной таблицы повлияет и на другие сводные таблицы.
У вычисляемых элементов имеются следующие ограничения:
♦
они не могут ссылаться на ячейки рабочего листа или на какие-либо итоги или
промежуточные итоги сводной таблиц;
♦
если поле включает вычисляемый элемент, это поле нельзя добавить в раздел
Фильтры
♦
(Filters)
панели Поля сводной таблицы (PivotTaЫe
если вы добавляете такое поле в раздел Значения
(Values),
Fields);
сводная таблица не
включает вычисляемый элемент;
♦
добавить поле можно только в один раздел сводной таблицы. Если сводная таб
лица включает вычисляемый элемент, добавить два экземпляра одного и того же
поля в раздел Значения
(Values),
чтобы отобразить его разные агрегации, не
получится.
В отличие от вычисляемых полей (см. разд.
ся в разделе Значения
(Values)
11.21),
агрегация, которая использует
панели Поля сводной таблицы (PivotTaЫe
Fields),
влияет на вычисления. Например, если в поле статус есть вычисляемый элемент
с
формулой
=- (Отменено+Возвращено),
в разделе Значения
(Values),
и
вы
указываете
Подсчет
количества
вычисляемый элемент неявно выполняет расчет по
формуле =СЧЁТ ( Сумма со Статусом Отменено) + СЧЁТ ( Сумма со Статусом Возвращено).
Пояснение
В этом разделе показано, как добавлять пользовательские формулы с помощью
вычисляемых элементов. В отличие от вычисляемых полей, формулы которых ссы
лаются на одно или более полей (см. разд.
11.21),
вычисляемый элемент может
ссылаться на один или более элементов в одном поле.
Дополнение
Если в вашей сводной таблице имеются несколько полей с вычисляемыми элемен
тами, у вас может возникнуть необходимость указать порядок, в котором
должен будет их вычислять. Более подробно об этом рассказано в разд.
11.25.
Excel
Глава
316
11
11.24. Ссылаемся
на местоположение
в формуле вычисляемого элемента
Задача
Вы хотите добавить вычисляемый элемент, формула которого ссылается на эле
мент по его местоположению.
Решение
Предположим, ваша сводная таблица содержит поля Регион и Сумма, и вам надо вста
вить вычисляемый элемент, чтобы рассчитать
на.
Для
решения
(см. разд.
11.23).
этой
задачи добавьте
от суммы для первого регио
элемент
к
полю
Регион
Обычно, чтобы сослаться на элемент по его местоположению, ис
пользуют синтаксис поле[позиция], где поле
позиция -
10%
вычисляемый
-
это поле вычисляемого элемента, а
это его местоположение в сводной таблице. Поэтому введите в поле
Формула (Formula) диалогового окна
Calculated ltem) формулу =Регион[1]*10%,
Вставка вычисляемого элемента
(Insert
где Регион[l] ссылается на первый элемент
поля Регион в сводной таблице.
Когда вы ссылаетесь на элемент по его местоположению, он может измениться,
,
если вы измените порядок сортировки сводной таблицы или примените фильтр.
~~~:~:.:~~~;~~т:м~~~~а;~ь~иа~:с~е:;у::ь~:~. которая возникает, если формула
Вы также можете ссылаться на элементы по местоположению относительно вычис
ляемого элемента. Например, формула =Регион [ -1 J * 10% ссылается на элемент, распо
ложенный одной строкой выше вычисляемого элемента, и умножает его на
10%.
И напротив, формула =Регион [ +2] *10% использует вместо этого элемент, располо
женный двумя строками ниже вычисляемого элемента.
Если вы ссылаетесь на элемент, расположенный над первой строкой или под по
следней, вычисляемый элемент не сможет вычислить формулу и отобразит ошиб
ку в значении #ССЫПКА!.
Пояснение
В некоторых случаях вам может понадобиться сослаться на элемент по его место
положению в сводной таблице
-
например, если требуется сослаться на самую
последнюю дату. В этом разделе показано, как такой цели достичь.
11.25. Изменяем
порядок расчета вычисляемого элемента
Задача
У вас есть сводная таблица с вычисляемыми элементами в ее строках и столбцах,
и вы хотите указать, какую формулу использовать при возникновении противо
речий.
Сводные таблицы
317
Решение
Когда вы добавляете вычисляемые элементы в строки и столбцы сводной таблицы,
могут возникнуть противоречия, если сводная таблица вычисляет значения ячеек
с использованием нескольких формул. Предположим, к примеру, что ваша исход
ная таблица продаж содержит столбцы Страна, Сумма и Статус, в столбце Страна име
ются значения КНДР, Китай и Россия, столбец статус может принимать значения Отправ
лено и Возвращено, и вам надо создать сводную таблицу, отображающую для каждой
страны коэффициент возврата
ное на число продаж,
-
число возращенного объема продаж, разделен
-
а также вычислить коэффициент возврата для Китая и Рос
сии суммарно (назовем этот вычисляемый элемент здесь условно Евразия, что гео
графически не совсем верно, поскольку КНДР тоже расположена на этом матери
ке). Итак:
1.
Создайте сводную таблицу на основе исходной таблицы и добавьте поле Страна
(Rows), поле Статус в раздел Столбцы (Co\umns) и поле Сум
(Values ). Измените агрегацию поля с Сумма на Количе
в раздел Строки
ма в раздел Значения
ство (см.разд.
11. 9).
Выделите сводную таблицу и выполните команду меню Конструктор
2.
Общие итоги
(Grand Totals)
and Columns),
чтобы скрыть общие итоги.
1
Отключить для строк и столбцов
(Design) 1
(Off for Rows
Выделите одну из меток поля Статус в заголовке столбца (например, Возвращено)
3.
и создайте новый вычисляемый объект Коэффициент возврата с формулой = Возвра
щено/ (Возвращено+Отправлено).
4.
Выделите одну из меток поля Страна в первом столбце (например, Китай) и соз-
дайте новый вычисляемый объект Евразия с формулой =Китай+Россия.
В такой конфигурации сводная таблица рассчитывает коэффициент возврата Евра
зии, используя как вычисляемый элемент Евразия, так и вычисляемый элемент Коэф
фициент
возврата,
и возвращает разные результаты
в зависимости
от того,
что она
вычислила первым. Например, опираясь на предыдущие шаги, сводная таблица
сначала использует формулу элемента Коэффициент возврата, чтобы подсчитать ко
эффициент возврата для Китая и России, а затем использует формулу элемента
Евразия, чтобы сложить их вместе. Таким образом, если коэффициенты возврата для
Китая и России равны
Евразии будет равен
А
в
0,91 и 0,27 соответственно, то
1, 18, т. е. более 100% (рис. 11.19).
с
1 Странаа сумма а Статус
678754
2
Е
D
а
Отп авл ен о
Названия сrр<>к
Китай
4
КНДР
,------~-~---;
Россия
Евразия
16547
Отп~лено
690324
Воз в а щено
G
Сумма по полю Сумма
3
5
коэффициент возврата для
..,
Названия сrолбцов
Возв
а
н
•
ициент воз врата
ено
0,91
678754
0,00
6742
1ms
0,27
764709
96771,99
1,18
9
Рис.
11.19.
Сводная таблица, которая использует первой формулу элемента Коэффициент возврата
Глава
318
11
Чтобы это исправить, вам надо изменить порядок расчета: выделите ячейку в свод
ной таблице, выполните команду Анализ сводной таблицы (PivotTaЫe
Analyze)
(Calculations) 1 Поля, элементы и наборы (Fields, Items, & Sets) 1 По
рядок вычислений (Solve Order), выберите в открывшемся диалоговом окне
Calculated Item Порядок выполнения вычислений (Solve Order), отображающем
1
Вычисления
список вычисляемых элементов в порядке их вычисления сводной таблицей, вы
числяемый элемент Евразия и нажмите кнопку Вверх
его вверх по иерархии (рис.
(Move Up)
для перемещения
11.20).
х
?
Порядок выполнения вычислений
Пор.а.цок выполнения вычислений
Ев а,.,я
=
китай-Росш~
' Ко3ффициент возврата · = Во;вращено /(Во;вращено + Отnравлено)
Если значение ячейки сводной таблицы определяется дву•1я или более
эле•tентами, значение определяется по последней формуле .
Закрыть
Ввер
Рис.
11.20. Диалоговое
По нажатию кнопки Закрыть
окно Порядок выполнения вычислений
(C\ose)
Ехсе\ закроет диалоговое окно и обновит
сводную таблицу. На этот раз она сначала выполнит расчет по формуле элемента
Евразия для
подсчета числа отправленных и
возвращенных элементов,
а затем
по
формуле элемента Коэффициент возврата для расчета собственно коэффициента воз
врата. Как показано на рис.
в
А
2
3
КНДР
4
он теперь равен
а
•
Отправлено
U48
Отправлено
Китай
Китай
78976,99
отправлено
КНДР
5
Китай
67643
Возвращено
Россия
6
Россия
6742
Возвращено
Еврази•
7
8
Росси я
16547
Отп р авлено
690324
Возвращено
Китай
или
89%.
н
G
сумма по полю сумма
678754
Росси•
0,89,
D
с
1 Странаа Сумма а Статус
11.21,
Названия столбцов
•
Возвращено
отп авлено Коэффициент возврата
757967
78976,99
678754
0,91
6742
764709
17795
0,27
96771,99
0,89
0,00
•
9
Рис.
11.21.
Сводная таблица, которая использует первой формулу элемента Евразия
Пояснение
В этом разделе показано, как просматривать и изменять порядок расчета для свод
ных таблиц с двумя или более вычисляемыми элементами. Это поможет вам ука
зать, какие вычисления выполнять в первую очередь, чтобы вы смогли управлять
Сводные таблицы
1
319
тем, какие из них должны применяться первыми в случае возникновения противо
речий.
11.26. Формируем
список пользовательских формул
Задача
У вас есть сводная таблица, содержащая вычисляемые поля и элементы, и вы хоти
те сгенерировать список для каждого из их.
Решение
Чтобы вывести список всех пользовательских формул сводной таблицы, выделите
ячейку
и
выполните
команду
меню
Анализ
Analyze) 1 Вычисления (Calculations) 1 Поля,
& Sets) 1 Вывести формулы (List Formulas) -
сводной
таблицы
элементы и наборы
(PivotTaЫe
(Fields, Items
это создаст новый рабочий лист, на
котором будут показаны все вычисляемые поля и элементы, включая их имена,
формулы и порядок расчета.
Обсуждение
Управление несколькими пользовательскими формулами в сводной таблице может
быстро превратиться в громоздкую задачу. В этом разделе показано, как вывести
каждую формулу таким образом, чтобы вы могли видеть все вычисления в одном
месте.
11.27. Изменяем
источник данных сводной таблицы
Задача
У вас есть сводная таблица, и вы хотите изменить ее, чтобы использовать другой
источник данных.
Решение
Предположим, ваша сводная таблица основана на одной из исходных таблиц, но
вам надо поменять источник данных на другой:
1.
Выделите ячейку в сводной таблице и выполните команду меню Анализ свод
ной таблицы (PivotTaЫe
Analyze)
1
Данные
(Data)
1
Источник данных
(Data
Source).
2.
В поле Таблица или диапазон (TaЬ\e/Range) открывшегося диалогового окна
Изменить источник данных сводной таблицы
(Change
введите или выберите новый источник.
3.
Нажмите кнопку ОК, и Ехсе\ обновит сводную таблицу.
PivotTaЬ\e
Data Source)
320
Глава
,-С'
11
Если сводная таблица использует имена полей из старого источника, которые не-
/,,.ъ доступны в новом,
Excel
автоматически удалит их ИЗ сводной таблицы.
Пояснение
В этом разделе показан быстрый способ изменения источника данных сводной таб
лицы с тем, чтобы в ее основу положить другую таблицу или диапазон. Приме
ненный здесь подход работает наилучшим образом, если в новом источнике те же
заголовки столбцов, что и в старом.
11.28. Используем
кеш сводной таблицы
Задача
У вас есть две сводные таблицы, основанные на одной и той же исходной таблице,
и вам надо решить, следует ли совместно использовать одни и те же группы, поль
зовательские формулы, срезы и временнь1е шкалы.
Решение
Когда вы создаете новую сводную таблицу,
Excel
копирует данные, на которых она
основана, и сохраняет их в кеше сводной таблицы
нения, которую
Excel
-
дополнительной области хра
сохраняет вместе с рабочей книгой (рис.
11.22).
Сводная таб
лица использует данные из этого кеша как основу для своих операций, поэтому,
если вы обновите только исходную таблицу, сводная таблица не включит ваши из
менения,
-
вам также нужно будет обновить и сводную таблицу (см. разд.
11.5),
обновив тем самым ее кеш.
Сводная
таблица
Рис.
Excel
11.22.
Сводная таблица получает данные из кеша сводной таблицы
-
копии исходных данных
автоматически повторно использует кеш сводной таблицы для всех новых
сводных таблиц, которые вы создаете на основе того же источника данных. То есть,
если у вас есть две сводные таблицы, основанные на одной и той же исходной таб
лице, они автоматически совместно используют один и тот же кеш (рис.
11.23).
Повторное использование кеша для нескольких сводных таблиц может помочь
уменьшить размер файла, поскольку кеш сводной таблицы не дублируется, однако
это действие имеет также некоторые последствия:
♦
при обновлении сводной таблицы все другие сводные таблицы, использующие
тот же кеш, также обновляются;
Сводные таблицы
321
Сводная
таблица
Сводная
таблица
Рис.
♦
11.23. Две
сводные таблицы, совместно использующие один и тот же кеш сводной таблицы
все срезы и временнь1е шкалы, которые вставляются в сводную таблицу, могут
совместно использоваться и другими сводными таблицами, ориентированными
на тот же кеш (см. разд.
♦
11.29);
при группировке поля в одной сводной таблице, та же группировка применяется
ко всем сводным таблицам, использующим тот же кеш;
♦
Excel
добавляет все создаваемые вами пользовательские формулы в кеш свод
ной таблицы, поэтому они совместно используются каждой сводной таблицей,
которая ориентирована на тот же кеш. Например, при добавлении вычисляемого
элемента в поле одной сводной таблицы он автоматически добавляется и в дру
гие сводные таблицы.
Поэтому, если нужно создать две сводные таблицы, основанные на одной и той же
исходной таблице, но не ориентирующиеся на один и тот же кеш, чтобы все добав
ляемые группы и пользовательские формулы не использовались совместно, можно
пойти следующим обходным путем:
1.
Выделите ячейку в таблице и вставьте первую сводную таблицу, используя в ка
честве источника имя таблицы,
-
Excel
скопирует и сохранит данные таблицы
в новом кеше сводной таблицы.
2.
Выделите исходную таблицу и выполните команду меню Конструктор табли
цы (ТаЫе
Design)
to Range ),
преобразующую таблицу в диапазон рабочего листа.
1
Инструменты
(Tools)
1
Преобразовать в диапазон
Excel
(Convert
при этом
автоматически изменит источники первой сводной таблицы на диапазон рабоче
го листа.
3.
Выполните команду меню Вставка
(lnsert)
1
Таблицы (ТаЫеs)
1
Таблица
(ТаЫе), чтобы преобразовать диапазон обратно в таблицу.
4.
Вставьте вторую сводную таблицу, основанную на исходной таблице, используя
в качестве источника ее новое имя,
-
Excel
создаст новый кеш сводной таблицы
для второй сводной таблицы.
5.
Повторите шаги со
2-ro
по 4-й для каждой сводной таблицы, которую нужно
создать с новым кешем.
Как только вы это сделаете, все добавляемые в какую-либо сводную таблицу груп
пы или пользовательские формулы не будут более совместно использоваться с дру
гими таблицами, поскольку они станут орие,пироваться на свой отдельный кеш
(рис.
11.24 ).
Глава
322
11
Сводная
таблица
Сводная
таблица
Рис.
11.24.
Две сводные таблицы, основанные на одной и той же таблице,
но использующие разный кеш
Пояснение
В этом разделе представлено описание работы кеша сводной таблицы и возможных
последствий его использования. В случае необходимости вы можете воспользо
ваться приведенными здесь рекомендациями, чтобы создать несколько сводных
таблиц, основанных на одной и той же исходной таблице, но с отдельным кешем
для каждой из них,
-
с тем, чтобы при добавлении группы или пользовательской
формулы в одну сводную таблицу
11.29. Фильтруем
Excel
автоматически не добавлял бы их в другие.
несколько сводных таблиц,
совместно использующих один кеш
Задача
У вас есть несколько сводных таблиц, основанных на одной и той же исходной таб
лице, и вы хотите отфильтровать их с помощью одного набора срезов и временнь1х
шкал.
Решение
Предположим, две ваши сводные таблицы совместно используют один кеш свод
ной таблицы (см. разд.
11.28).
Вы собираетесь вставить в них один или несколько
срезов и/или временных шкал и применить их для фильтрации обеих сводных таб
лиц.
Чтобы решить эту задачу (рис.
1.
Выделите ячейку в первой сводной таблице и воспользуйтесь решением из
разд.
2.
11.25):
11.14,
чтобы вставить срезы и/или временные шкалы.
Выделите ячейку во второй сводной таблице и выполните команду меню Ана
лиз сводной таблицы (PivotTaЬle
к фильтрам
3.
Analyze)
1
Фильтр
(Filter)
1
Подключения
(Filter Connections).
В открывшемся диалоговом окне Подключения фильтров
(Filter Connections)
показаны срезы и временные шкалы, используемые первой сводной таблицей,
Сводные таблицы
323
поскольку они используют один и тот же кеш сводной таблицы. У становите
флажок рядом с теми срезами и временными шкалами, которые нужно также
применить ко второй сводной таблице, и нажмите кнопку ОК.
ПодК11ючения фильтров (Сводная таблица17)
х
?
Выбор фильтров для подК11ючения к этой сводной таблице
! подпись
l имя
! лист
о
Дата заказа
Дата заказа
Фильтрация
а
Компания
Компания
Фильтрация
ОК
Рис.
11.25. Диалоговое
J
I Отмена
]
окно Подключения фильтров
Вы также можете выбрать срез или временную шкалу и указать, к какой сводной
таблице их применить, выполнив команду меню Срез
(Slicer) 1 Под
(Timeline)
(Report Connections ).
(Slicer)
1
Срез
ключения к отчетам
или Временная шкала
Временная шкала
к отчетам
(Report Connections)
(Timeline) 1 Подключения
1
Пояснение
В этом разделе показано, как фильтровать несколько сводных таблиц, используя
одни и те же срезы и/или временные шкалы, если они ориентированы на один и тот
же кеш сводной таблицы, что обычно бывает, если сводные таблицы основаны на
одном и том же источнике данных.
11.30. Уменьшаем
размер файла рабочей книги
Задача
У вас есть рабочая книга со сводными таблицами, и вы хотите сократить размер ее
файла.
Решение
Когда вы вставляете сводную таблицу,
Excel
автоматически копирует ее исходные
данные и добавляет их в кеш сводной таблицы (см. разд.
11.28).
Это действие
повышает эффективность сводной таблицы, но также и увеличивает размер файла
рабочей книги.
Если вам желательно не наращивать при этом размер файла, вы можете не сохра
нять кеш сводной таблицы, а создавать его заново каждый раз при открытии рабо
чей книги и использовать его в памяти. Вы можете сделать это, выполнив следую
щие шаги:
324
1.
1
Глава
11
Выделите ячейку во второй сводной таблице и выполните команду меню Ана
лиз сводной таблицы (PivotTaЫe
Параметры
2.
Analyze)
1
Сводная таблица (PivotТaЬle)
1
(Options).
В открывшемся диалоговом окне Параметры сводной таблицы (PivotТaЫe
Option)
выберите вкладку Данные
(Data) и в разделе Данные сводной таблицы
Data) сбросьте флажок Сохранять исходные данные вместе с фай
лом (Save source data with file) и установите флажок Обновить при открытии
файла (Refresh data when opening the file ).
(PivotTaЫe
3.
Нажмите кнопку ОК, чтобы применить изменения.
Пояснение
Это решение пригодится, если у вас есть рабочая книга, включающая сводную таб
лицу, и вам надо уменьшить объем ее файла. Обратите внимание, что этим дейст
вием вы можете замедлить открытие рабочей книги, потому что ей придется вновь
создавать кеш сводной таблицы при каждом ее открытии.
Альтернативный подход заключается в сохранении кеша сводной таблицы, но уда
лении ее исходной таблицы, если она больше не нужна. Подробнее об этом подходе
рассказано в разд.
11.31.
11.31. Восстанавливаем
исходные данные
сводной таблицы
Задача
Предположим, у вас есть сводная таблица, основанная на удаленной таблице. Вы
хотите восстановить эту таблицу, не прибегая к резервной копии файла.
Решение
Представьте, что сводная таблица, основанная на исходной таблице, сохраняет свой
кеш в файле рабочей книги (см. разд.
11.30).
Если вы используете исходную табли
цу только для этой сводной таблицы и не собираетесь вносить в нее какие-либо
дополнения или обновления, то можете удалить ее, а сводная таблица продолжит
работать как ни в чем не бывало, потому что сохраняет копию таблицы в своем кеше.
Если же вам потребуется восстановить таблицу, убедитесь сначала, что сводная
таблица не отфильтрована, и выполните двойной щелчок мышью на ячейке, ото
бражающей общий итог по строкам и столбцам (рис.
11.26), -
это действие вста
вит исходную таблицу на новый рабочий лист.
Пояснение
Этот малоизвестный прием будет полезен, если вы удалили источник данных свод
ной таблицы, но решили вернуть его обратно. Единственное требование заключает-
Сводные таблицы
Сумма по полю Сумма
Названия строк
Названия столбцов
•
Посмделкино СТаррубль Общий итог
.т Манrафе
Але~сей
757730
Валентин
Лариса
Людмила
Общий итог
Рис.
757730
690324
16547
706871
6742
U48
7990
4Ш8
67643
798988
764709
23457~_1_3_23_58...,
4Ш21
1604949!
Выполните двойной щелчок мышью на выбранном общем итоге,
11.26.
и
325
Excel
вставит исходную таблицу на новый рабочий лист
ся в том, что сводная таблица должна была ранее сохранить копию данных в свой
кеш.
11.32. Ссылаемся
на значения сводной таблицы
Задача
У вас есть сводная таблица, и вы хотите сослаться на одно из ее значений из друго
го места.
Решение
Предположим, вам надо добавить формулу в ячейку рабочего листа, которая ссы
лается на значение в сводной таблице. Чтобы это сделать, начните вводить форму
лу, а затем щелкните на той ячейке сводной таблицы, на которую нужно сослаться.
По щелчку на ячейке
Excel
вставляет вызов функции получить.дАННЫЕ.сводной.тАБлицы,
возвращающей вычисление сводной таблицы. Так, если сводная таблица начина
ется в ячейке
Ехсе I
F 1,
добавляет
и щелчок выполнен на ее общем итоге
в
формулу
фрагмент
-
з,шчении Сумма сумм,
ПОЛУЧИТЬ. ДАННЫЕ. СВОДНОЙ. ТАБЛИЦЫ ( "Сумма
сумм"; $F$1). Точно так же, если щелчок выполнен на значении Сумма сумм для эле
мента
Задерживается
в
поле
Статус,
Ехсе\
добавит
в
формулу
фрагмент
ПОЛУЧИТЬ.дАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("Сумма сумм";$F$1;"Статус";"Задерживается").
Учтите при этом, что ссылка на значение с помощью функции полУЧИТЬ.дАННЫЕ.
сводной. ТАБЛИЦЫ возвращает вычисление сводной таблицы вместо ссылки на кон
кретную ячейку, и если будет изменен порядок сортировки,
Excel
вернет то же
вычисление. Так что, когда вам нужно сослаться на саму ячейку, введите такую
ссылку вручную (например,
$G$6).
Использовать функцию ПОЛУЧИТЬ. дАННЫЕ. СВОДНОЙ. ТАБЛИЦЫ в формуле можно, только
выбрав ячейку в сводной таблице. При попытке добавить или изменить ее вручную
Excel
-
отобразит сообщение об ошибке. А если впоследствии вы удалите вычисле-
ние из сводной таблицы, Excel отобразит ошибку в значении #ССЬmКА 1 .
326
1
Глава
11
Пояснение
В этом разделе рассказано, как можно добавлять ссылки на значения сводной таб
лицы из другого места. Вместо того, чтобы для ссылки на местоположение значе
ния применять ссылки на ячейки, описанный здесь подход предлагает использовать
функцию ПОЛУЧИТЬ. дАННЫЕ. СВОДНОЙ. ТАБЛИЦЫ, возвращающую вычисление.
Вы можете отключить функцию ПОЛУЧИТЬ .дАННЫЕ. сводной. ТАБЛИЦЫ для всех рабочих
книг, выделив ячейку сводной таблицы, выполнив команду меню Анализ сводной
таблицы
(Options)
(PivotTaЬ\e
Analyze)
1
Сводная таблица (PivotТaЬ\e)
и сбросив флажок Создать
по щелчку на ячейке сводной
1
Параметры
GetPivotData (Generate GetPivotData). Тогда
таблицы Excel вместо использования функции
ПОЛУЧИТЬ. дАННЫЕ. СВОДНОЙ. ТАБЛИЦЫ просто вернет ссылку на ячейку.
ГЛАВА
12
Диаграммы
Диаграммы могут сделать таблицы с числовыми данными более понятными и по
мочь вам легче увидеть закономерности, взаимосвязи и тенденции. Благодаря этим
возможностям диаграммы незаменимы при анализе данных и передаче кому-либо
сообщений об этих данных.
Excel
предлагает ряд предустановленных диаграмм, и решения, приведенные в этой
главе, помогут вам работать с ними более эффективно. Мы рассмотрим здесь сле
дующие вопросы:
♦
когда использовать каждый тип диаграммы и как вставлять их на основе табли
цы, диапазона рабочего листа, динамического именованного диапазона или
сводной таблицы;
♦
как настраивать диаграммы, добавляя и форматируя элементы, динамически
изменяя
заголовки,
вставляя
метки данных,
изменяя записи легенды
и
многое
другое;
♦
как создавать собственные типы диаграмм и сохранять их в виде шаблонов диа
грамм.
12.1.
Используем различные типы диаграмм
Задача
Вы хотите узнать, какие типы диаграмм предлагает
Excel
и в каких случаях их сле
дует использовать.
Решение
Excel
предлагает широкое разнообразие диаграмм, каждая из которых предназна
чена для конкретной цели.
♦
Круговые диаграммы
Круговые диаграммы
показывают относительный
в виде процента от целого.
кольцевые диаграммы
-
Excel
размер
включает круговые
2D-
каждого
значения
и 3D-диаграммы и
круговые диаграммы с пустотой посередине (рис.
12.1 ).
Существуют также вторичная круговая диаграмма и вторичная линейчатая
дишршwма, которые позволяют отображать некоторые значения на отдельной
мини-диаграмме,
-
используйте их, чтобы выделить выбранные значения или
улучшить читаемость долей с небольшими процентами (см.разд.
12.12).
Глава
328
12
А
4
в
с
Продукт
а СумМd
G
D
лимонад
53
Кофе
65
5
Пицца
б
Суп
356
салат
143,
2-D
н
круговая
Кольцевая
489
8
9
10
111
12
13
14
■ п1~М~'1дд ■ КоФе
15
П1ч.щd
Суп ■ Салат
16
Рис.
12.1.
Круговая 2D-диаграмма и кольцевая диаграмма
Обычно круговые диаграммы работают наилучшим образом при наличии неболь
•
шого количества точек данных с положительными значениями. Если данные вклю
чают отрицательные значения,
• будто
Excel
отображает их на круговых диаграммах как
они положительные, поскольку может оперировать здесь только абсолют
ными значениями. Впрочем, вы можете использовать метки данных, чтобы выделять отрицательные значения.
♦
Столбчатые или линейчатые диаграммы (гистограммы)
Эти диаграммы позволяют сравнивать значения по категориям в одной или не
скольких сериях данных. Используйте гистограмму с группировкой для сравне
ния значений, гистограмму с 11акопление.w для сравнения итоговых значений по
категориям, а нормированные гистограммы с накоплением для сравнения
сительных процентных соотношений внутри каждой категории (рис.
--------
с
А
Wtыдid ~ l;мti "8
:лимонад
4
•
53
35
65
82
489
765
Суп
356
543
Салат
143
165,
Кофе
пицца
---------
- - - - - - - - -
G
D
отно
12.2).
н
М
С I руппировкой
С Н~1КОП!lf-''НИ()М
__
N_
Нормированная с
1руппировкой
60.С
,юс
8
9
10
11
12
13
-----
- - - -
Рис.
12.2.
Гистограмма с группировкой, гистограмма с накоплением
и нормированная гистограмма с группировкой
♦
Графики
Графики отображают тенденции или разброс с течением времени. Используйте
простые графики для сравнения тенденций, графики с 11акоплеиием для сравне
ния тенденций всех итоговых значений, а Iюрмирова111Iые графики с накопле11ие.11,1 для сравнения относительных процентных соотношений (см. рис.
12.3).
Диаграммы
с
А
График
600
800
7SO
4
01. фев.22
1000
1200
5
01.мар.22
990
6
0J.anp.22
7
01.ман.22
800
l<XX>
8
01.мюн.22
1050
1300
1500
uoo
,00
01.ИIOJ'l.22.
1450
1200
01. авr .22
1400
01.сен .22
1600
17SO
1600
1400
1500
ОLНОА .22
1700
1350
01.дек .22
1800
1200.
01.RHB.22
10
11
12
13
14
01.окт.22
м
н
G
D
График с
1500
900
.
~
~
•
о
N
Нормированный
,рафике
накоплением
2000
329
наноплением
1500
fЁ~ """'::.... - - - l<XX>
-
~ -
SOO
о
""
- Кoм.tltДIA
-тн~А.+8
15
Рис.
12.3.
График, график с накоплением и нормированный график с накоплением
Графики с накоплением накладывают значения друг на друга, что у обычных поль
•
зователей может сформировать неверное представление о данных . Вы можете
смягчить это, уточнив заголовки графиков и имена серий, прояснив таким образом
их назначение.
♦
Иерархические диаграммы
Эти диаграммы пригодятся, если вам надо сравнить значения данных, организо
ванных в иерархическом порядке . Используйте диаграмму Дерево для отобра
жения пропорционального прямоугольника для
каждого значения или диаграм
му Сол11еч11ые лучи для отображения пропорций в концентрических кольцах
12.4). В качестве альтернативы можно предложить
(см. разд. 12.20), также отображающую этот тип данных .
(рис.
G
А
1
2
3
4
5
~&IШl-i.Z
'F
WdJ,fU
<r
WШi·& ~
!
напиток
лимонад
100
напиток
Кофе
120
Еда
Пицца
б
[Еда
7
Еда
НаПИ'Юk
8
к
н
Солнечные лучи
Дерево
8
сводпую диаграмму
(да
•
Напиток
8
W
Суп
143
салат
3
9
10
11
12
13
14
15
16
Рис.
♦
12.4.
Диаграммы Дерево и Солнечные лучи
Статистические диаграммы
Эти диаграммы отображают статистический анали з ваших данных
-
в их число
обычно включают гистограмму, диаграмму Парето и диаграмму «ящик с уса
ми». Более подробно об этих типах диаграмм рассказано в разд.
8.3, 8.10
и
12.13.
Глава
330
♦
12
Точечные (ХУ) и пузырьковые диаграммы
Точечная (ХУ) диаграмма позволяет указать точки Х и У и отобразить тем самым
взаимосвязи между двумя переменными. Пузырьковая диаграмма похожа на то
чечную, но она отображает каждую точку в виде своеобразного «пузыря»
вы
-
можете использовать размеры этих «пузырей» для представления третьего пока
зателя (рис.
Другие способы определения взаимосвязи между двумя или
12.5).
несколькими переменными представлены в разд.
А
в
с
Е
D
F
9.10, 9.12
и
8.23.
н
G
к
1
Ш#ЫФI
•G%/415000• LМMjgj
1000
20%
:1
2500
35000
20000
1000
2000
500
5
б
Точечная ( ХУ)
90%
40000
бО%
30000
10%
20000
•
]0000
7 1
8
20000
•
•
О
40000
•
•
о
9
Пузырьковая
60000
]000
о
2000 3000
·20000
0
1000 2000 3000
10
Рис.
♦
12.5. Точечная
(ХУ) и пузырьковая диаграммы
Каскадная диаграмма
Этот тип диаграммы используют для отображения промежуточных сумм и на
копительного эффекта положительных и отрицательных чисел (рис.
А
1
2
3
в
f'Ыf W
с
•
01.яне.22
• ~,
■J.ЫiФ4,iИ
1000
4
01.фее . 22
5 1
б \
01.мар.~ ..
7
01.май.22
8
01 . июн.22
01.июл . 22
10
11j
12
13
14
U
0l.aer.22
1.сен . 22
01 . окт.22
01.H0R.22
01.де к. 22
н
G
F
Каскадная диаграмма
1200
__
01 . а п р . 22
9
Е
D
12.6).
■ Уеепичеttие
90
■ Уменьшение
■ Итог
10000
-500
1300
1500,
1600
8000
6000
1500
~ 1400
■
•
4000
во
1300 •
1200 90
2000 1000 •
•
•
-500
1400
1600
.50001
1
1700 1800
•
•
·5000
о
◊
◊
◊
◊
◊
◊
~
~
~
.,. "
,§''. ,._, , . i
,r~;,.,
,,,,,~,t· ,. оt
е е е е е е е а е е
1700
1800,
~
◊
◊
,,
е
◊
,t'
't
е
15
Рис.
♦
12.6.
Каскадная диаграмма
Воронкообразная диаграмма
Эта диаграмма отображает относительные значения этапов в процессе (рис.
♦
12. 7).
Биржевые диаграммы
Эти диаграммы применяются для отображения динамики курса акций с течени
ем времени (см. разд. 1О.16).
Диаграммы
с
в
А
Е
о
►-JЫ,1 т IGФIФФ,1:1·1 • 1
2
3
Этап
1
1000
4
Этап
2
5
Этап
3
б
Этап4
5000
10000
7000
7
Этап5
2000.
331
G
F
Воронкообразная
Этап
1
Этаn з
Этоn5
8
Рис.
12.7.
Воронкообразная диаграмма
Поверхностные диаграммы
♦
Эти диаграммы отображают две или более серий данных на 30-поверхности
и работают аналогично топографическим картам (рис .
с
в
А
1
2
Е
D
4
Кофе
5
Пицца
б
суп
7
салат
Поверхностная диаграмма
82
45
83
765
800
800
600
543
673
400
200
165
204_.
35
60
65
358
356
143
Лимонад
к
н
G
~Ш • IФЮfiШiii • ISЮf lJШfJ • IBЮFIIШII • t
з
12.8).
Маrа314н
3
о
8
Маrа3ин
1
9
10
11
12
13
Рис .
♦
■
■ 0-200
12.8.
200-400
8 400-600
■ бОО-800
Поверхностная диаграмма
Лепестковые диаграммы
Лепестковые диаграммы используют для каждой категории отдельные оси , рас
ходящиеся от центра наружу. Такие диаграммы могут пригодиться для работы
с
данными ,
мы ,
организованными
в
категории,
которые
напрямую
например , производительность или данные опросов (рис .
-
о
с
в
А
1
2
f:@ФIШ@Шl·Н •
·18
3
Отжимания
4
Приседания
13
5
Подтягивания
15
б
7
8
!
Пресс
10
Жим
2
Тренажер
9.
Е
F
15
10
~
Жим
Пресс
12.9.
Приседания
Подтягиеан
ия
11
Рис.
G
Отжимания
9
10
12.9).
Лепестковая диаграмма
Трена"ер
Лепестковая диаграмма
несопостави
н
Глава
332
♦
12
Комбинированные диаграммы
Эти диаграммы позволяют отображать два или более типов диаграмм (напри
мер, гистограмму и график) в одной диаграмме. Они могут оказаться полезны
ми, если у вас есть смешанные типы данных или серии данных с сильно разли
чающимися диапазонами значений (см.ртд.
12.14).
♦ Диаграмма «Заполненная карта»
Эта диаграмма позволяет сравнивать значения в различных географических ре
гионах, таких как страны и города (рис.
Windows,
12.1 О).
мента 3D-карта
Excel
для
(3 D Maps) ( см. ра1д. 13.12).
А
о
G
н
"'
W.filfl •;;.;,; ФУ,! /.1 •1
КНДР
Р000<•
t<и1ай
Иран
о
N
Карта
30
170
5580
500
10
Пакмстан
6
Если вы работаете в
то также можете нанести географические данные с помощью инстру
-..Ооо
>580
1n,
Индия
,о
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
lб
Рис.
♦
12.10. Диаграмма
«Заполненная карта»
Сводная диаграмма
Сводная диаграмма отображает данные сводной таблицы (см. раз().
12.20).
Ис
пользуйте ее для сегментации и фрагментации данных и отображения сводок
иерархических данных вместо диаграмм Дерево и Солнечные лучи.
Пояснение
В этом разделе представлен обзор доступных в
Excel
типов диаграмм и случаев их
использования. Вы также можете применять их для создания своих пользователь
ских диаграмм ( см. пример, приведенный в разд.
12.21).
Дополнение
Чтобы создать точечную диаграмму или пиктограмму, обратитесь к ртд.
5.14
и
12.11.
Чтобы создать диаграмму, отображающую сезонный или циклический прогноз, об
ратитесь к разд.
10.19.
Диаграммы
1
333
12.2. Вставляем диаграмму
Задача
У вас есть таблица, которая включает числовые данные, и вы хотите визуализиро
вать ее с помощью диаграммы.
Решение
Предположим, ваша таблица содержит два столбца: Продукт и Сумма, и вы решили
использовать круговую диаграмму, позволяющую сравнить относительные величи
ны сумм каждого продукта ( см. рис.
12.1 ).
ЧтоСы вставить диаграмму, обычно выделяют ячейку в таблице, а затем на вкладке
Вставка
(lnsert)
выбирают тип диаграммы, которую хотят использовать. Так, что
бы вставить круговую 2D-диаrрамму, выполните команду меню Вставка
(lnsert) 1
(Charts) 1 Вставить круговую или кольцевую диаграмму (Insert Pie
or Doughnut Chart) и выберите вариант круговой диаграммы из раздела 2-D Pie
(Круговая). В качестве альтернативы выполните команду меню Вставка (lnsert) 1
Диаграммы (Charts) 1 Рекомендуемые диаграммы (Recommended Charts) что
Диаграммы
бы вставить диаграмму, которую Ехсе\ рекомендует для ваших данных.
Если вы работаете в
Excel 365, то также можете создать диаграмму с помощью
(Analyze Data). Выделите ячейку в таблице, выполните
команду меню Главная (Home) 1 Анализ (Analysis) 1 Анализ данных (Analyze Data)
и выберите в открывшейся панели Анализ данных (Analyze Data) одну из доступ
ных диаграмм или используйте поле Задайте вопрос о своих данных (Ask
а question), чтобы задать соответствующий вопрос.
функции Анализ данных
Выбранную диаграмму Ехсе\ добавит на рабочий лист в виде плавающего или
встроенного объекта, что даст возможность перемещать и изменять размер диа
граммы, щелкая на ней и перетаскивая всю диаграмму или ее углы. Диаграмму
также можно переместить на другой рабочий лист, выделив ее, выполнив команду
меню Конструктор диаграмм
(Chart Design) 1 Расположение {Location) 1 Перемес
(Move Chart) и выбрав в открывшемся диалоговом окне Переме
диаграммы (Move Chart) вариант На имеющемся листе (Object ln) для
тить диаграмму
щение
перемещения диаграммы на существующий рабочий лист или вариант На отдель
ном листе
(New Sheet)
для создания нового листа диагршwмы (отдельного рабоче
го листа, содержащего только диаграмму).
Чтобы поменять тип созданной диаграммы, выделите ее, выполните команду меню
Конструктор диаграмм
(Change Chart Туре)
(Chart Design)
1 Тип (Туре) 1 Изменить тип диаграммы
и выберите тип, который решили использовать.
1
Пояснение
В этом разделе показано, как вставить диаграмму на основе табличных данных.
Строить диаграмму на основе таблицы обычно лучше, чем на основе диапазона ра-
334
Глава
12
бочего листа, поскольку такая диаграмма автоматически учитывает все изменения,
которые производятся в исходной таблице. Если же диаграмма основана на диапа
зоне рабочего листа, а в него добавляются или удаляются строки, вам придется
вручную настроить выборку данных диаграммы, что можно сделать, выбрав диа
грамму для отображения ее диапазона данных, после чего щелкнуть на нем и пере
тащить его углы, чтобы изменить размер до нужного.
Дополнение
Для получения информации об использовании спарклайна для вставки линии или
столбца диаграммы в какую-либо ячейку обратитесь к разд.
13.1 О.
12.3. Фильтруем диаграмму
Задача
У вас есть диаграмма, и вы хотите исключить из нее некоторые данные.
Решение
Предположим, вам надо отфильтровать данные, которые отображает диаграмма.
Один из подходов заключается в том, чтобы отфильтровать таблицу, на которой
основана диаграмма, поскольку по умолчанию при фильтрации таблицы диаграмма
также фильтруется. При необходимости можно отключить такое поведение (чтобы
диаграмма отображала все данные таблицы)
-
для этого выделите диаграмму, вы
полните команду меню Конструктор диаrрамм
(Chart Design) Данные (Data)
(Select Data), в открывшемся диалоговом окне Выбор источника
данных (Select Data Source) щелкните на кнопке Скрытые и пустые ячейки
(Hidden and Empty Cells) и установите флажок Показывать данные в скрытых
строках и столбцах (Show data in hidden rows and columns).
1
1
Выбрать данные
В зависимости
от того,
где размещена диаграмма относительно ее таблицы,
фильтрация таблицы может переместить и/или изменить размер диаграммы. Этим
поведением можно управлять - откройте область диаграммы на панели Формат
(Format) (см. разд. 12.б), перейдите на
Properties) и выберите один из вариантов
вкладку Размер
и свойства
(Size &
(Properties): Пере
мещать и изменять объект вместе с ячейками (Move and size with cells), Пере
мещать, но не изменять размеры (Move but don't size with cells) и Не переме
щать и не изменять размеры (Don't move and size with cells).
Если вы работаете в
в разделе Свойства
Windows, то можете применить фильтр к диаграмме,
не фильтруя таблицу (рис. 12.1 1), выделите диаграмму, щелкните на кнопке
Фильтры диаrраммы (Chart Filters) рядом с диаграммой и используйте для
Excel
для
фильтрации диаграммы по сериям и категориям данных открывшуюся панель
Фильтры диаrраммы
(Chart Filters).
Диаграммы
WШiдW •iШ-Ы!Ы§,ц.w •
лимонад
53
Кофе
б5
Количество
489
356
143
Пицца
Суп
салат
335
Имtна
В~енияl
v
Ряд
О Количество
v
К..,еrории
l',jl
■ Лимонад ■ Кофе ■ Пицц,,
1 Cyn
(Выбрать а«)
■ С.пот
l',jl I
Л имонод
l',jl I
Коф,
l',jl I Пицц•
Суп
l',jl
l',jl
Рис.
12.11.
Фильтрация диаграммы в
Excel
I
Салат
1
Применить I
для
Windows
Вь~6рать 4аннь1е,..
Пояснение
В этом разделе показаны два способа фильтрации диаграммы
вашей версии программы
-
в зависимости от
Excel.
По умолчанию при фильтрации таблицы будут отфильтрованы все основанные на
ней
диаграммы.
(см.разд.
2.18),
Это
поведение
удобно,
если
вы
добавляете
в таблицу
срез
потому что оно может вам помочь создать инструментальную
панель, отображающую различные представления одних и тех же данных.
12.4. Настраиваем
внешний вид диаграммы
Задача
У вас есть диаграмма, и вы хотите быстро изменить ее макет, стиль и цветовую
схему.
Решение
Excel
предлагает несколько предустановленных макетов, стилей и цветовых схем
диаграммы, которые вы можете выбрать, чтобы изменить ее внешний вид.
336
1
Глава
12
Чтобы изменить макет, выделите диаграмму, выполните команду меню Конструк
тор диаграмм
макет
(Chart Design) 1 Макеты диаграмм (Chart Layouts) 1 Экспресс
(Quick Layout) и щелкните на макете, который собираетесь применить.
Чтобы изменить стиль, выделите диаграмму, выполните команду меню Конструк
тор диаграмм
(Chart Design) 1 Стили диаграмм (Chart Styles) и щелкните
(Quick Styles) на стиле, который собираетесь применить.
в галерее
Экспресс-стили
Чтобы изменить цвета, выделите диаграмму, выполните команду меню Конструк
тор диаграмм
(Chart Design)
(Change Colors)
и щелкните на цветовой палитре, которую собираетесь применить.
Если вы работаете в
1
Стили диаграмм
Excel
для
Windows,
(Chart Styles)
1
Изменить цвета
то также можете выбрать стиль или цве
товую палитру, выделив диаграмму, щелкнув на кнопке инструмента Кисть [Z],
расположенной рядом с диаграммой, и выбрав из открывшейся панели Стили диа
грамм
(Char1 Styles)
вариант Стиль
(Style)
или Цвет
(Color).
Пояснение
В этом разделе рассказано, как быстро настроить макет, стиль и цветовую палитру
диаграммы.
Вы также можете навести курсор мыши
на каждый предлагаемый
вариант, чтобы предварительно посмотреть на внешний вид диаграммы.
12.5. Добавляем
и удаляем элементы диаграммы
Задача
У вас есть диаграмма, и вы хотите добавить или удалить такие ее элементы, как
оси, заголовки или линии тренда.
Решение
Изменить вставленную диаграмму можно, добавив в нее дополнительные элементы
или удалив существующие.
Чтобы добавить в диаграмму элемент, выделите диаграмму, выполните команду
меню Конструктор диаграмм
(Chart Design) 1 Макеты диаграмм (Chart Layouts) 1
(Add Chart Eleme11t) и выберите нужный вам эле
Добавить элемент диаграммы
мент из списка доступных. Список доступных элементов варьируется от диаграм
мы к диаграмме, поэтому добавить все элементы в каждый тип диаграммы не полу
чится. Если вы работаете в Ехсе\ для
диаграммы, выделив диаграмму,
Windows,
то также можете добавить элемент
щелкнув на кнопке О, расположенной рядом
с диаграммой, и выбрав нужный ,лемент из открывшейся панели 'Элементы диа
граммы
(Chart Eleme11ts).
Чтобы удалить существующий элемент, выделите элемент в диаграмме и нажмите
клавишу
<Del>.
В качестве альтернативы удалить элемент диаграммы можно, вы
полнив команду меню Конструктор диаграмм
(Chart Layouts)
1
(Chart Desig11) i Макеты диаграмм
(Add Chart Element) и выбрав Нет
Добавить элемент диаграммы
337
Диаграммы
(None)
для элемента диаграммы, который нужно удалить, или отме1шв его выбор
в панели Элементы диаграммы
кнопки О, если вы работаете в
(Chart Elements),
Excel для Windov. s.
открывающейся по нажатию
1
Пояснение
В этом разделе показано, как изменить диаграмму, добавляя дополнительные эле
менты или удаляя существующие. Описание элементов диаграммы вы найдете
вртд.
12.6.
12.6. Форматируем
элементы диаграммы
Задача
У вас есть диаграмма, и вы хотите изменить формат одного или нескольких ее эле
ментов.
Решение
Для внесения базовых изменений в элемент диаграммы (например, изменения его
стиля,
цвета и размера) выделите этот элемент и
параметрами вкладки Формат
(Fonnat).
воспользуйтесь доступными
Вы также можете щелкнуть на элементе
правой кнопкой мыши, чтобы отобразить миниатюрную панель инструментов.
Чтобы внести в элемент диаграммы расширенные или специфические изменения,
такие, например, как изменение типа отображаемой линии тренда, выполните на
элементе двойной щелчок мышью или выделите элемент и выполните команду ме
ню Формат
(Format) 1 Текущий фрагмент (Current Selection) 1 Формат выделен
(Fonnat Selection). В результате откроется соответствующий элементу вариант
панели Формат (Format) воспользуйтесь там доступными параметрами форма
ного
тирования элемента.
Чтобы переключиться на форматирование другого элемента, выделите его на диа
грамме, выполните команду меню Формат
Selection)
(Format)
1 Текущий фрагмент
(Current
и щелкните на элементе в раскрывающемся списке раздела Текущий
фрагмент
(Current Selection) или выберите его из раскрывающегося
(Chart Options) панели Формат (Format).
списка разде
ла Параметры диаграммы
Далее представлены некоторые полезные элементы диаграммы (рис.
12. 12),
расска
зано, для чего они предназначены, а также описаны удобные способы их формати
рования.
♦
Область диаграммы
'Этот прямоугольный модуль содержит все элеме1пы диаграммы. Выберите его,
если собираетесь изменить размер, шрифт и стиль всей диаграммы, не меняя
каждый элемент в отдельности. Вы также можете с его помощью управлять
перемещением диаграммы или изменением размера ячеек на рабочем листе
(см. разд.
12.3).
338
Глава
12
l
Область диаrрам\ы
Название диаграммы
Продажи продукции/
Область построения
/Метки данных
900
800
765
/
700
600
500
400
300
200
100
о
■ янв
■ Фее
489
543 ~ Ряды данных
-- •• 1 il
Лимо11ад
Кофе
Пицца
Суп
ii
53
65
489
356
143
35
82
765
543
165
65 82
53 35
Са/lат
~ Таблица данных
■ Яне ■ Фен ~--------- Легенда
Рис.
♦
12.12.
Основные элементы диаграммы
Область построения
Этот прямоугольный модуль содержит сам график.
Excel
автоматически меняет
его размер, когда элементы добавляются в диаграмму или удаляются из нее.
Именить размер модуля также можно и вручную
любые фигуры (см.разд.
♦
13.3),
-
чтобы поместить в него
которые требуется добавить в диаграмму.
Название диаграммы
Этот короткий заголовок указывает цель диаграммы. Можно изменить его ме
стоположение, отредактировать в нем текст или выполнить шаги из разд.
12. 7,
чтобы создать динамический заголовок диаграммы, основанный на содержимом
ячеек.
Добавить в диаграмму описательный текст можно, вставив текстовое поле. Для
этого выделите диаграмму и выполните команду меню Вставка (lnser1) 1 Текст
(Text) 1 Надпись (Text Вох) или команду меню Формат (Format) 1 Вставка фигур
(lnsert Shapes) и выберите Надпись (Text Вох) в галерее Фигуры (Shapes).
♦
Ряды данных
Это визуальные элементы диаграммы, которые представляют данные:
срезы
круговых диаграмм, линии графиков, столбцы гистограмм и т. п. Форматируя
ряды данных,
можно развернуть круговую диаграмму, изменив угол ее первого
среза, настроить расстояние между столбцами в гистограмме, изменив перекры
тие рядов и ширину промежутков, сгладить или добавить стрелки к линиям
в графике и многое другое.
♦
Легенда
Этот прямоуголhllый модуль содержит ключи и текст, идентифицирующие каж
дый элемент или ряд данных. Форматировать легенду можно либо целиком, ли-
Диаграммы
339
бо выбрать и отформатировать ее отдельные элементы . Если нужно изменить
вводимый в легенду текст, обратитесь к разд.
♦
12.17.
Метки данных
Эти элементы добавляют метки к точкам данных диаграммы . Чтобы указать, ка
кие метки нужно отображать, щелкните на кнопке Параметры метки
Options)
на панели Формат
(Format)
(Label
и выберите подходящий вариант из доступ
ных параметров. В зависимости от типа диаграммы, они могут включать имя,
значение,
процентное соотношение
каждой точки данных
и
многое другое.
Можно также привязать текст метки данных к значениям ячейки (см . разд.
12. 8)
или выбрать отдельную метку данных, чтобы жестко зафиксировать ее текст
или динамически обновлять его на основе содержимого какой-либо ячейки
(см.разд. 12. 7).
Чтобы настроить отображение значения точки данных, когда на нее наводится кур
Excel для Windows команду меню Файл (File) 1 Параметры
(Advanced) и установите или сбросьте флажок Пока
зывать значения точек данных при наведении указателя (Show data point
values оп hover) в разделе Диаграмма (Chart) . Если вы работаете в Excel для
macOS, то найдете эту опцию, выполнив команду меню Excel I Параметры
(Preferences) 1 Диаграмма (Chart).
сор мыши, выполните в
(Options)
♦
1 Дополнительно
Таблица данных
Этот элемент представляет собой таблицу , содержащую данные диаграммы . Его
можно использовать в качестве альтернативы легенде и / или меткам данных.
♦
Оси
Большинство диаграмм содержат одну или несколько осей (рис .
12.13).
Исполь
зуйте эти элементы , чтобы указать границы диаграммы, отображаемые ею зна
чения , положения любых делений оси и многое другое (см. разд.
12. 9) .
Продано э кз и Общие прода жи
40000
..
s
ЭЕ
•
35000
30000
~ 25000
20000
~ линии сетки
g.
~ 15000
10000
О 5000
J
\/
О
Оси
•.
500
Линия тренда
1000
1500
2000
2500
3000
П родано экз
i
Метка оси
Рис.
12.13. Дополнительные
элементы диаграммы
340
♦
Глава
12
Метки осей
Метки (заголовки) осей позволяют указать, что представляет собой каждая ось
(см. рис.
12.13).
Можно либо жестко зафиксировать текст заголовка оси, либо
выполнить шаги из разд.
12. 7,
чтобы динамически менять его на основании со
держимого какой-либо ячейки.
♦ Линии сетки
Эти линии, расположенные через равные интервалы (см. рис.
12.13),
помогают
читать значения точек данных на осях диаграммы. Диаграмма может включать
основные
и
второстепенные
и управлять
разд.
♦
их
горизонтальные
местоположением
можно
и
вертикальные
линии
сетки,
путем форматирования осей (см.
12.19).
Линия тренда
Этот элемент отображает линию, которая наилучшим образом соответствует се
рии точек данных (см. разд.
8.23).
Вы можете отобразить экспоненциальную,
линейную, логарифмическую, полиномиальную, степенную линию тренда или
линию тренда со скользящим средним, привести ее уравнение (см. разд.
и использовать параметры раздела Прогноз
тренда для составления
8.24)
(Forecast), чтобы продлить линию
( см. разд. 1О.18). Пример
краткосрочных прогнозов
линии тренда показан на рис.
12.13.
♦ Планки погрешностей
Вы можете добавить к диаграмме планки погрешностей, отображающие значе
ния точек данных плюс и/или минус другое значение,
-
например, проценты,
стандартное отклонение, стандартную ошибку или фиксированное или пользо
12.14 ).
вательское значение (рис.
Продажи
2500
К---Планки погрешносrей
2000
1500
1000
500
о
...... ... ,,. ........,: ........, ....... ...
... !... ...~ ....., ...f ..."' ..." ..... ... ...
..
N
N
N
N
Q.
-z:
"1
С)
С)
о
N
ci
N
С)
N
N
N
~
,с
о
2
51
о
о
J:
~
х
С)
о
N
i:::
t;;
~
о
о
:r::
..;
С)
.......
...{
С)
Рис.12.14. Диаграмма, отображающая планки погрешностей
♦
Полосы повышения и понижения
Если у вас есть график с двумя или более сериями, этот элемент позволяет срав
нить эти серии в каждой точке данных (рис.
12.15).
Диаграммы
341
Продажи
2000
~~~Полосы повышения и понижения
1500
1000
500
()
.. ..
....." .i... ..i ....."'
N
N
N
N
N
N
N
N
а.
С)
о
а.
о
о
N
N
,s
...i
о
N
N
...,.~
ж
!/
...
,:
о
о
::::
..... s.."
N
:.::i
N
~
!;
:i:
N
N
N
N
!';
... ... ...&
о
о
,;
о
о
о
--командаБ
-- команда А
Рис.
N
N
12.15. Диаграмма,
отображающая полосы повышения и понижения
♦ Линии
Вы можете добавить в график коридоры колебаний или линии проекции. Кори
доры колебаиий служат той же цели, что и полосы повышения и понижения,
и отображают разницу между двумя или более сериями в каждой точке данных
(рис.
12.16),
в то время как лu11uu проекции добавляют вертикальную линию,
идущую от каждой точки данных вниз к горизонтальной оси (рис.
12.17).
Продажи
2000
1500
~Коридоры колебаний
1000
500
о
- команда А
Рис.
-команда Б
12.16. Диаграмма,
отображающая коридоры колебаний
Продажи
2000
1500
~
1000
линии проекции
500
о
,.
:::i
,.,
r
~ .. ~ !;iq "' "~
2 ,.
"i ~ i .. r ,.
... ... ... ... ... ... ... ... ... ... ...
"'N,,; NN.,
ж
о
о
N
N
ci
о
N
N
о.
с:
о
N
N
..
о
- Команда А
Рис.
N
N
N
N
N
N
N
N
N
N
N
ж
о
,:
о
о
о
о
о
о
о
-комамаБ
12.17. Диаграмма,
отображающая линии проекции
342
Глава
12
Чтобы настроить отображение имени элемента диаграммы, когда на него наводит
ся курсор мыши, выполните в
Windows команду меню Файл (File) 1 Па
(Advanced) и установите или сбросьте фла
жок Показывать имена элементов диаграммы при наведении указателя (Show
char1 element names оп hover). Если вы работаете в Excel для macOS, то найдете
эту опцию, выполнив команду меню Excel I Параметры (Preferences) 1 Диаграмма
(Char1).
раметры
(Options)
1
Excel
для
Дополнительно
Пояснение
В этом разделе представлен обзор элементов диаграммы
Excel
и описаны их назна
чения и способы форматирования. Попробуйте поэкспериментировать с парамет
рами, чтобы увидеть, какой эффект они оказывают.
12.7. Создаем
динамические заголовки и метки
Задача
У вас есть диаграмма, и вы хотите, чтобы ее заголовок или заголовки ее осей осно
вывались на значениях ячеек.
Решение
По умолчанию
Excel
жестко фиксирует заголовок диаграммы, чтобы он динамиче
ски не обновлялся. Однако его можно связать со значением ячейки, выделив заго
ловок диаграммы
и
введя в поле формул запись =саылка_на_ячейку,
где
ссьтка_
на _ячейку- :по полная ссылка на ячейку, включающая имя рабочего листа. Так,
чтобы использовать значение из ячейки А I рабочего листа Продажи для заголовка
диаграммы, нужно выделить заголовок диаграммы и ввести в поле формул заrшсь
=Продажи!Аl.
Аналогичный 1юдход можно применить и к другим заголовкам, таким как заголов
ки осей и метки отдельных точек данных.
Пояснение
В этом разделе пока1ано, как использовать значение ячейки для заголовка диа
граммы или оси, чтобы он динамически обновлялся при изменении этого значения.
А11алогичный подход вы можете использовать для динамического обновления ·эле
ме11тов легенды диаграммы
12.8.
( см. pmo. 12.17).
Настраиваем текст меток данных
Задача
Вы хотите настроить метки данных диаграммы, чтобы отобразить что-то, отличное
от '3начения или имени точки данных.
Диаграммы
343
Решение
Предположим, вам надо вставить гистограмму с накоплением , метки данных к ол,
рой отображают итог каждого столбца. Хотя этот вариант недоступен по ум ш ,ча
нию, можно настроить метки данных , чтобы достичь желаемого результата:
1.
Добавьте новый столбец в таблицу, на которой вы собираетесь основать свою
диаграмму, и заполните его значениями, которые требуется отобразить в метке
данных каждой строки . То есть для добавления меток дан~1ых, отображающих
итоги , следует добавить новый вычисляемый столбец, который рассчитывает
итог каждой строки (см. разд.
2.
2. 19).
Выделите столбцы таблицы , на которых будете основывать диаграмму , исклю
чая столбцы для меток данных, которые созданы на шаге
1.
Затем вставьте д иа
грамму (в этом примере гистограмму с накоплением) и добавьте в нее метки
данных.
3.
На панели диаграммы Формат
(Format)
(см. разд.
данных, щелкнув на кнопке Параметры метки
флажок Значения из ячеек
4.
12.6) отформатируйте метки
(Label Options) и установив
(Value From Cells).
При возникновении запроса выберите диапазон, который предполагаете исполь
- значения столбцов, добавленных на шаге 1, и на
зовать для меток данных,
жмите кнопку ОК, чтобы добавить значения к меткам данных.
5.
Снимите флажки со всех параметров меток, которые не собираетесь отображать
например, с параметра Значение (Value). Здесь также мо
в метках данных, жет понадобиться удалить какие-либо дополнительные метки данных, которые
Excel
На рис .
мог создать для вас на шаге
12.18
2.
показан пример диаграммы, созданной с помощью этого метода,
и табличные данные, на которых она основана.
в
А
1
2
3
4
с
Е
D
к
н
G
Общий объем продаж
5
Пицца
489
765
б
суп
356
143
543
147
1254
899
165
зо~
65
Салат
7
8
9
10
11
12
82
1500
500
1000
о
@]
~
ЛИа.\ОНа,д
Кофе
1i
Пнцца
Суп
~
Са
т
■ Яне ■ Фее
Рис.
12.18. Диаграмма,
метки данных которой основаны на столбце Итого таблицы
Пояснение
Параметр форматирования меток данных Значения из ячеек
(Value From Cells)
предлагает гибкий способ настройки текста , отображаемого для каждой точки да.1-
Глава
344
12
ных. Его также можно использовать, к примеру, чтобы применить пользователь
ский числовой формат (см. разд.
12.9. Управляем
1. 5)
или добавить нужные символы.
осями и линиями сетки диаграммы
Задача
У вас есть диаграмма с осями, и вы хотите управлять ее границами, линиями сетки,
делениями оси и многим другим.
Решение
Предположим, ваша диаграмма содержит одну или несколько осей
дет, например, точечная диаграмма,
-
пусть это бу
и вам надо настроить эти оси с тем, чтобы
-
отрегулировать ее границы, масштаб или расположение делений оси. Обычно это
можно сделать, щелкнув на кнопке Параметры оси (Axis Options) и применив дос
тупные параметры в открывшейся панели диаграммы Формат
(см. разд.
(Format)
для оси
12.6).
Диапазон числовых значений, которые способна отображать диаграмма, можно из
границы
отрегулировав
менить,
(\1inimum)
и Максимум
осей,
(Maximum)
полями
воспользуйтесь
-
раздела Границы
(Bounds),
Минимум
чтобы указать
сuотв~тственно наименьшее и наибольшее значения, которые диаграмма может
отображать на каждой оси.
Для изменения интервала отображения чисел на оси введите нужное значение ин
(Major) раздела Единицы измерения (Units). Так, при вво
1ООО отображаются числа О, 1ООО, 2000 и т. д. в зависимости
тервал в поле Главные
де в это поле значения
от границ оси. Настроить отображаемые единицы изменения также можно, выбрав
нужный параметр из раскрывающегося списка Отображаемые единицы
units)
и применив числовой формат (как показано в разд.
шись параметрами из раздела Число
1.4
и
1.5),
(Display
воспользовав
(Number).
Если диаграмма содержит один или несколько рядов данных, значения которых
используют различные шкалы, то
-
в зависимости от типа диаграммы
-
можно
разместить их на дополнительной оси. Для этого выделите ряд данных, щелкните
на кнопке Параметры ряда (Series Options) панели Формат (Format) и выберите
параметр Вспомогательная ось (Secondary Axis). В качестве альтернативы рассмотрите возможность применения комбинированных диаграмм (см. разд. 12.14).
Диаграмма может включать основные и вспомогательные линии сетки, но поле
Главные
(Major)
управляет интервалом, с которым на диаграмме отображаются
только основные линии сетки. Поэтому, чтобы указать интервал и для вспомога
тельных
линий
сетки,
введите
требуемое
значение
в
поле
Дополнительные
(Minor).
Если нужно отобразить значения в обратном порядке, установите флажок Значе
ния в обратном порядке
(Values in reverse order).
Например, при установке этого
параметра для вертикальной оси гистограммы получится диаграмма, столбцы кото
рой спускаются вниз от ее верхней части.
Диаграммы
345
Быстро поменять местами горизонтальные и вертикальные оси можно, выбрав
разделе Данные (Data) вкладки диаграммы Конструктор диаграмм (Char1
в
Design)
пункт Строка/столбец
Некоторые оси диаграммы
фика
-
(Switch Row/Column).
например, горизонтальная ось гистограммы или гра
-
управляются дополнительными параметрами, которые позволяют задать
тип оси и местоположение оси относительно ее делений.
Параметр Тип оси
(Axis
Туре) управляет тем, как в диаграмме распределяются зна
чения по осям. Например, когда вы вставляете гистограмму, Ехсе\ автоматически
определяет, являются ли значения для горизонтальной оси датами или временем,
и классифицирует тип оси как Ось дат
(Text),
если это не так. Если тип оси
-
(Date),
если это так, или как Ось текста
Ось текста
(Text),
то в диаграмме значения,
а следовательно, и столбцы, размещаются на равном расстоянии друг от друга. Но
если тип оси
-
Ось дат
(Date),
значения в диаграмме распределяются по шкале
дат, что может привести к появлению узких, неравномерно расположенных столб
цов. Исправить эту проблему можно, изменив параметр Тип оси
текста
(Axis Туре)
на Ось
(Text).
Параметр Положение оси
(Axis Position)
позволяет управлять местоположением
значений оси относительно делений оси диаграммы. Здесь можно выбрать пара
метр По делениям
(On tick marks) - чтобы поместить значения на делениях, или
параметр Между делениями (Between tick marks) чтобы поместить значения
между делениями. Как правило, параметр Между делениями (Bet\veen tick marks)
наилучшим образом работает с гистограммами, в то время как 11нраметр По деле
ниям (Оп
tick marks) лучше
всего подходит для графиков.
Когда вы вставляете график,
Excel
по умолчанию применяет для его горизонталь
ных осей параметр Между делениями
,
(Between tick marks),
что усложняет интер-
претацию диаграммы, поскольку деления оси при этом не совпадают с точками
• • данных
или значениями диаграммы. Чтобы исправить проблему, выберите пара-
метр По делениям (Оп
tick marks).
Пояснение
В этом разделе представлены некоторые из наиболее полезных параметров для
управления осями и линиями сетки диаграммы. Обратите внимание, что формати
ровать можно только одну ось за раз, поэтому, если вам понадобится внести одни
и те же изменения в несколько осей, вы должны будете вручную их применить
к каждой из них.
12.10. Отображаем
отрицательные значения
Задача
У вас есть диаграмма, и вы хотите управлять отображением положительных и от
рицательных значений.
346
1
Глава
12
Решение
В зависимости от типа диаграммы управлять отображением положительных и от
рицательных значений можно, форматируя ряды данных.
Если вы используете гистограмму или линейчатую диаграмму, то можете приме
нить разные цвета для положительных и отрицательных значений. Для этого от
кройте панель Формат
(Format) для ряда данных (см. разд. 12.6), щелкните на
(Fill & Line) и установите флажок Инверсия для чи
се.1 <О (lnvert if negative). Указать цвета для положительных и отрицательных зна
чсни!1 1юможет параметр Цвет (Color).
кнш1ке Заливка и линия
У 1 пи1 е также, что пузырьковая диаграмма по умолчанию не отображает пузырьки
с отрицательным размером. Чтобы отобразить эти пузырьки, откройте панель
Фор1юп
(Format)
для ряда данных, щелкните на кнопке Параметры ряда
Optioпs) и установите флажок Отрицательные значения
(Show negative
(Series
bubЬles).
Пояснение
В
по~1 разделе показано, как применять различные форматы к точкам да11ных
в ·,.11нн.:имости от того, являются ли их значения положительными или отрицатель-
11ы,1и. nктупные r~араметры зависят от типа вставляемой диаграммы.
Отфоршпировать отдельную точку данных можно и вручную, выделив ее на диа1 рамм1.: и изменив формат. Однако, если базовые значения изменятся, может пона
,'t,JtJиться вручную обновить диаграмму, чтобы отразить эти изменения.
12.11.
Используем в гистограммах рисунки
Задача
У вас есть l'Истограмма, и вы хотите использовать рисунки для ее столбцов.
Решение
1lредrюложим, вы решили заменить столбцы диаграммы рисунками или наложить
рисунки друг на друга. Сделать это можно, отформатировав ряды данных.
Откройте панель Формат
(Format) для ряда данных (см. разд. 12.6), щелкните на
(Fill & Line), выберите в разделе Заливка (Fill) параметр
l'ису1юк или текстура (Picture or texture fill), щелкните на кнопке Вставить (111sert)
н воспш1ь1уйтесь параметрами Растянуть (Stretch) и Размножить (Stack), чтобы
кнопке Заливка и линия
ука ыrъ. наJ.о ли растянуть рисунок, чтобы заменить каждый столбец, или наложить
рисунки др) г на друга (рис.
12.19).
Пояснение
R
')ТОМ разделе показано, как использовать для столбцов диаграммы рисунки вме
сто 3аливки их простым цветом. Попробуйте поэкспериментировать и с другими
Диаграммы
347
Средняя высота жирафа
20
15
10
5
о
О611асть
Рис.
12.19.
O6лааъ2
1
Область
3
О611асть
4
Использование рисунка для заполнения столбцов диаграммы
параметрами раздела Заливка
(Fill) -
такими как текстуры, шаблоны или гради
енты.
Предлагаемое здесь решение можно применить и для создания точечного графика
на основе выбранного вами рисунка.
в разд.
Еще один способ добиться этого описан
5.14.
Хотя использование рисунка для заполнения столбцов диаграммы может быть це
лесообразным в определенных обстоятельствах, убедитесь, что это не искажает
общего смысла и цели диаграммы. Например, точное считывание значения точки
данных с оси диаграммы может оказаться затруднительным при ее графическом
исполнении.
12.12. Форматируем
вторичную круговую
и линейчатую диаграмму
Задача
У вас есть вторичные круговая и линейчатая диаграммы, и вы хотите управлять
тем, какие точки данных появляются на них.
Решение
Как было показано в разд.
граммы
-
12.1,
вторичная круговая и вторичная линейчатая диа
это тип диаграмм, которые отображают некоторые точки данных основ
ных диаграмм на отдельной мини-диаграмме. Указать, какие точки данных на них
должны отображаться, можно, отформатировав ряды данных диаграммы.
На панели Формат
(Format) для ряда данных (см. разд. 12.6) щелкните на кнопке
(Series Options) и выберите из раскрывающегося списка Разде
(Split Series Ву) один из доступных параметров: Положение (Position),
(Value), Процент (Peгcentage Value) и Пользовательский (Custom). Что
Параметры ряда
лить ряд
Зна'lение
бы отобразить на отдельной мини-диаграмме, например, все точки данных с про-
348
Глава
12
центными значениями меньше
10% (рис. 12.20), выберите из раскрывающегося
(Percentage Value) и введите значение 10% в поле Зна
(Values less than), которое появится при выборе этого параметра.
списка параметр Процент
чения меньше
А
в
с
F
Е
D
н
G
1
2
з
лимонад
53
4
5
Кофе
б5
Пицца
489
б
Суп
356
7
Салат
254
8
Чай
43
9
Какао
24
Количество
10
11
12
■ Лимонад ■ Кофе ■ Пицца ■ Суп ■ Оlлат ■ Чай ■ Какао
13
14
Рис.
12.20.
Вторичная круговая диаграмма,
в которой значения меньше
10%
появляются на втором графике
Пояснение
Вторичная круговая диаграмма и вторичная линейчатая диаграмма будут полезны,
если
вам
потребуется
показать
несколько
точек
данных
основных
диаграмм
с меньшими значениями, чтобы улучшить их читаемость. В этом разделе показано,
как определить точки данных, которые будут отражены на вторичных диаграммах.
12.13. Форматируем
гистограммы
Задача
У вас есть гистограмма, и вы хотите управлять ее шириной и количеством ее ин
тервалов.
Решение
По умолчанию
лов
-
Excel
автоматически определяет ширину и количество uтперва
столбцов гистограммы, на основании предоставленных вами данных. Однако
есть возможность изменить эти настройки.
Если вы работаете в
Excel
для
Windows, выделите горизонтальную ось диаграммы,
(Axis Options) панели Формат (Format) (см.
из параметров Интервалы (Bins) раздела Параметры
работаете в Excel для macOS, то найдете эти парамет
щелкните на кнопке Параметры оси
разд.
оси
12.6)
и выберите один
(Axis Options).
Если вы
ры, вызвав форматирование рядов данных. Доступны здесь следующие параметры:
Диаграммы
♦
По категории (Ву
349
Category)
Этот параметр использует для горизонтальной оси текстовые значения или зна
чения категории вместо числовых значений, поэтому он будет удобен для ото
бражения частот дискретных значений (см.разд.
♦
Интервал
12. 6).
(Bin width)
Этот параметр позволяет управлять организацией интервалов путем указания их
ширины
♦
-
затем подсчитает, сколько интервалов отображать.
Excel
Количество интервалов
(Number of Ьins)
Этот параметр задает количество отображаемых интервалов
-
Excel
затем рас
считает ширину каждого из них.
♦
Авто
(Automatic)
С помощью этого параметра (заданного по умолчанию)
автоматически
Excel
решает, сколько интервалов отображать и какова должна быть их ширина.
Если диаграмма использует для своей горизонтальной оси числовые значения,
Excel
автоматически определяет ширину каждого интервала. Так, если диаграмма
содержит числовые значения в диапазоне от
может использовать ширину от
5 до 24
5
до
100
и указан интервал
для первого интервала, от
24
до
43
5, Excel
для вто
рого и т. д. Управлять этой шириной можно с помощью параметров Выход за
верхнюю границу интервала
тервала
(Undertlow
(Overflow
Ьin) и Выход за нижнюю границу ин
Ьin). Например, если вы выберете параметр Выход за нижнюю
границу интервала
(Underflow
Ьin) и введете значение
включать значения меньше или равные
ширину оставшихся
20
интервалов. Аналогично при
верхнюю границу интервала
(Overflow
20,
то диаграмма будет
в свой первый интервал и скорректирует
выборе параметра Выход за
Ьin) и установке его в значение
80
обно
вится последний интервал диаграммы, который будет содержать значения, превы
шающие
80
(рис.
12.21 ).
в
А
с
Е
о
1
2
Роберт
3
4
Крисrина
5
А
70
100
65
F
G
н
Распределение оценок
4,5
4
3,5
б
Филипп
5
3
7
Андрей
10
2,5
8
Ольга
95
2
9
Кирилл
70
1,5
10
НатаЛЬR
65 1
11
Галина
30
0,5
12
Виталина
55
о
13
Виктория
бО
1
~20
(20, 40\
(40, 60)
(60, 80)
>80
14
Рис.
12.21.
Гистограмма с
5 столбцами,
выходом за нижнюю границу
и выходом за верхнюю границу
80
20
350
1
Глава
12
По умолчанию
ной
0%,
Excel
устанавливает ширину промежутка между интервалами рав
поэтому промежутки между интервалами отсутствуют. Если диаграмма
исполЬ3ует дискретную категорию значений для горизонтальной оси, то стоит рас
смотреть возможность изменения этой настройки. Если вы работаете в
Wiпdows, выберите ряды данных, щелкните на кнопке Параметры
Optioпs) 11анели Формат
Если вы работаете в
Excel для
ряда (Series
(Gap Width).
(Format) и задайте параметр Боковой зазор
Excel для macOS, то найдете эту опцию, вызвав форматирова
ние rорюонтальной оси.
Пояснение
Управление интервалами гистограммы может оказаться на удивление сложным,
,ю-пому здесь подробно рассказано, как это делается. Учтите, что порядок форма
тирования горизонтальной оси или ряда данных зависит от вашей версии
12.14. Задаем
Excel.
типы диаграмм
для комбинированной диаграммы
Задача
Вы хотите использовать комбинированную диаграмму и указать, какой тип диа
граммы задействовать для каждого ряда.
Решение
Если вы работаете в
Excel
для
Windows,
то можете указать, какие типы диаграмм
включить в комбинированную диаграмму. Для вставки такой диаграммы:
1.
Выделите данные, на которых решили основать диаграмму, и выполните коман
ду меню Вставка (lпsert)
1
Диаграммы
(Charts)
1
Комбинированная
Создать настраиваемую комбинированную диаграмму
(Combo) 1
(Create Custom Combo
Cliart).
"
В открывшемся диалоговом окне Вставка диаграммы (Iпsert
убедитесь, что выбран параметр Комбинированная
Тип диаграммы
Chart) (рис. 12.22)
(Combo), затем в области
Туре) назначьте тип диаграммы для каждого ряда дан
(Chart
ных и установите флажок Вспомогательная ось
(Secondary Axis),
указываю
щий, стоит ли использовать в каком-либо ряду вспомогательные оси.
3.
Нажмите кнопку ОК, и
Excel
вставит выбранную диаграмму.
Чтобы внести дальнейшие изменения в типы диаграммы, выделите диаграмму и
выполните команду меню Конструктор диаграмм
(Chart Design) Тип (Туре)
(Change Chart Туре), которая откроет диалоговое окно
диаграммы (Change Chart Туре).
Изменить тип диаграммы
И·3менение типа
1
1
Диаграммы
х
Вставка диаграммы
РекомендУемые диаграмhlы
~
Последние
□
Шаблоны
lПа
~
(9
Г,,стограмма
~
.
~
~
[nlu]
/с
351
Все диаграмh!ы
~ ~ ~ ~~
Пользовательская комбинация
График
Круговая
Название диаграммы
Линейчатая
!,00
)0
С областями
15()
>S
Точечная
200
;о
Карта
15()
15
Биржевая
100
10
50
Поверхностна.я
о
Леnестковая
*E{jj
Дерево
@)
Солнечные лучи
lrfh
Гистограмма
н
~
Ящик с усами
Я.о
Ф•а
М,р
111 1...111
Лор
Mtii
Ию'1
Мюл
- ~jмм)
(f!w
Q,t
tloit
д"
-Яс••
Выберите тип диаграммы и ось для рядов данных:
Иh!Я ряда
Тиn диаграмh!ы
Вспомогательная ось
1
Осадки (мм)
1Гистограмма
1
Rсно
~раф;к -
Каскадная
-
с
rpynn ...
□
V
J.J
0
ОК
Рис.
12.22.
Отмена
Вставка комбинированной диаграммы,
в которой одна из диаграмм использует вспомогательную ось
Пояснение
В этом разделе показано, как вставлять комбинированную диаграмму, которая ис
пользует разные типы диаграмм для разных рядов. При выборе типа диаграммы
подумайте об общей цели, о вкладе в нее, который вносит каждый тип, и о том, на
сколько хорошо они работают вместе. Например, комбинация гистограммы с груп
пировкой и графика работает хорошо, в то время как комбинация гистограммы
с группировкой и круговой диаграммы
12.15. Управляем
-
нет.
пустыми ячейками
Задача
У вас есть диаграмма, и вы хотите управлять отображением любых недостающих
точек данных.
352
1
Глава
12
Решение
Предположим, исходная таблица графика содержит пустые ячейки для некоторых
точек данных. По умолчанию
Excel
отображает недостающие точки данных как
11ропуски. Однако это поведение можно изменить, выделив диаграмму, выполнив
команду меню Конструктор диаграмм
(Chart Design) 1 Данные (Data) 1 Выбрать
(Select Data), щелкнув в открывшемся диалоговом окне Выбор источника
данных (Select Data Source) на кнопке Скрытые и пустые ячейки (Hidden and
Empty Cells) и выбрав (Щин из параметров пункта Показывать пустые ячейки как
(Show empty cells as):
данные
♦
Пустые значения
♦
Нулевые значения
♦
Соединить пустые точки линией
(C1aps)-
по умолчанию оставляются пропуски;
(Zero)-
пустые ячейки воспринимаются как О;
по обе сто
(Connect data points with line) -
роны от недостающего значения чертится линия, соединяющая две точки дан
ных.
Здесь также можно указать, надо ли считать ошибку в значении #Н/д пустой ячей
кой и следует ли показывать или скрывать данные скрытых строк и столбцов
(см. разд.
12.3).
Пояснение
В этом разделе показано, как управлять способами интерпретации данных диа
граммой. О;11шко не все параметры досrупны для каждого типа диаграммы
-
так,
не получитсн применить, например, к круговой диаграмме параметр Соединить
пустые точки линией
(Connect data points with line).
12.16. Основываем диаграмму на
независимых данных
Задача
Вы хотите вставить диаграмму, основанную на столбцах таблицы, которые не
являются смежными или находятся в отдельных таблицах.
Решение
Чтобы создать диаграмму на основе нескольких диапазонов данных, сначала выде
лите все данные, на которых собираетесь основать диаграмму,
-
диапазон и, удерживая клавишу
в
<Ctrl>
(или клавишу
<Cmd>
выделите первый
Excel
для
macOS),
выделите все остальные диапазоны. Затем вставьте диаграмму, выбрав в разделе
Диаграммы
(Charts)
вкладки Вставка
(Insert) тип диаграммы
(см. разд.
12.2).
Пояснение
В этом разделе показано, как вставить на основе несмежных столбцов новую диа
грамму. Если вы хотите добавить дополнительный ряд данных в существующую
диаграмму, обратитесь к разд.
12.17.
Диаграммы
12.17. Изменяем
1
353
имена рядов данных
и элементы легенды
Задача
У вас есть диаграмма, и вы хотите изменить имена рядов данных и элементы ле
генды.
Решение
Когда в диаграмму добавляется легенда, Ехсе\ использует для элементов легенды
имена каждого ряда данных. Чтобы изменить один из элементов, нужно поменять
имя соответствующего ряда данных (рис.
1.
Выполните команду меню Конструктор диаграмм
(Data)
2.
12.23):
1
Выбрать данные
(Chart Design)
1
Данные
(Select Data).
В разделе Элементы легенды (ряды)
(Legend Entries (Series)) открывшегося
(Select Data Source) выберите ряды
диалогового окна Выбор источника данных
данных, имена которых решили изменить, и щелкните на кнопке Изменить
(Edit).
3.
В поле Имя ряда
ряда
(Edit Series)
(Series Name)
открывшегося диалогового окна Изменение
введите новое имя ряда или выделите ячейку, значение кото
рой собираетесь для этого использовать .
4.
Нажмите кнопку ОК, чтобы закрыть диалоговое окно Изменение ряда
Series),
(Edit
затем нажмите кнопку ОК, чтобы закрыть диалоговое окно Выбор ис
точника данных
(Select Data Source).
?
И3менение ряда
х
Имя ряда:
= ' Команда А и Б'
~
= Команда А
,аначения:
= · подъем и падение ' !SСSЗ : SСS1 , ~
ОК
Рис.
12.23.
= 1000; 1200; 99...
Отмена
Редактирование ряда данных для изменения его имени
Пояснение
В этом разделе показано, как изменить имя ряда данных диаграммы, которое
Excel
отображает в легенде. Вы можете либо жестко зафиксировать имя ряда, введя его
напрямую в поле Имя ряда
(Series Name),
либо с помощью ссылки на ячейку сде
лать так, чтобы это имя динамически обновлялось (см.разд.
12. 7).
354
1
Глава
12
12.18. Добавляем
ряд или изменяем источник данных
Задача
У вас есть диаграмма, и вы хотите изменить один или несколько диапазонов, кото
рые она использует для своих данных, или добавить новый ряд данных.
Решение
Существует несколько путей изменить способ использования данных диаграммой
или предоставить ей новые данные
-
в зависимости от того, что требуется полу
чить на выходе.
Первый вариант состоит в ручной настройке диапазона данных. Для этого выдели
те диаграмму, чтобы отобразить ее диапазон данных, после чего щелкните на нем
и перетащите углы выбранной области, чтобы изменить ее размер.
Второй вариант заключается в том, чтобы поменять местами горизонтальные и вер
тикальные оси,
диаграмм
- выделите диаграмму и выполните команду меню Конструктор
(Chart Design) 1 Данные (Data) 1 Строка/столбец (Switch Row/Column).
И последний вариант
-
отредактировать источник данных диаграммы. Выделите
диаграмму, выполните команду меню Конструктор диаграмм
Данные
(Data)
1
(Chart Design)
(Select Data) и в открывшемся диалоговом окне
(Select Data Source) выполните одно или несколько сле
1
Выбрать данные
Выбор источника данных
дующих действий:
♦
введите новый диапазон в поле Диапазон данных для диаграммы
(Chart data
range).
Этим вы замените диапазон данных диаграммы и автоматически обновите диа
пазон, который она использует для своих рядов и горизонтальных осей;
♦
отредактируйте ряд данных.
В разделе Элементы легенды (ряды)
(Legend Entries (Series))
который собираетесь обновить, щелкните на кнопке Изменить
крывшемся диалоговом окне Изменение ряда
(Edit Series)
выберите ряд,
(Edit)
и в от
воспользуйтесь зави
сящими от типа диаграммы доступными параметрами для обновления диапазона
рядов данных;
♦ добавьте новый ряд.
В разделе Элементы легенды (ряды)
кнопке Добавить
(Add)
логовом окне Изменение ряда
♦
(Legend Entries (Series))
щелкните на
и заполните требуемые параметры в открывшемся диа
(Edit Series);
удалите ряд.
В разделе Элементы легенды (ряды)
(Legend Entries (Series))
торый собираетесь удалить, и щелкните на кнопке Удалить
также выделить в диаграмме ряд данных и нажать клавишу
выделите ряд, ко
(Remove).
<Del>;
Можно
Диаграммы
♦
1
355
измените значения или подписи на горизонтальной оси или оси категорий.
В разделе Подписи горизонтальной оси (категории) (Horizontal (Category)
Axis Labels) щелкните на кнопке Изменить (Edit) и в поле Диапазон подписей
оси (Axis label range) открывшегося раздела Подписи оси (Axis Labels) замените
диапазон.
Пояснение
Это решение пригодится, если нужно настроить диапазоны данных имеющейся
диаграммы или добавить в нее новый диапазон. Например, вам может потребовать
ся основать диаграмму на динамическом именованном диапазоне вместо таблицы
(см.разд.
12.19)
и точно настроить ряды данных или подписи горизонтальных осей.
Самый гибкий вариант предоставляет диалоговое окно Выбор источника данных
(Select Data Source ),
потому что оно определяет, какой диапазон использует диа
грамма для каждой цели.
12.19. Основываем диаграмму
на динамическом именованном диапазоне
Задача
Вы хотите вставить диаграмму на основе динамического именованного диапазона.
Решение
Предположим, вам надо вставить на рабочий лист Продажи график, отображающий
последние пять значений в столбце А. Сделать это можно, основав диаграмму на
динамическом именованном диапазоне:
1.
Создайте динамический именованный диапазон для ряда данных, выполнив ко
манду меню Формулы
(Fonnulas)
1
Задать имя
(Define Name),
и в открывшемся
диалоговом окне Создание имени
ческого именованного диапазона
(New Name) введите имя и формулу динами
( см. разд. 2. 7). Так, чтобы вернуть последние
пять значений из столбца А на рабочем листе Продажи, введите ПоСJiедниеПятьПродаж
в поле Имя
(Name), формулу =СМЕЩ(Продажи!$А$1;СЧЁТЗ(Продажи!$А:$А)-5;0;5;1)
в поле Диапазон (Refers to ), в раскрывающемся списке Область (Scope) выбе
рите пункт Книrа (Workbook) и нажмите кнопку ОК (рис. 12.24).
2.
Вставьте диаграмму, выделив пустую ячейку, выполнив команду меню Вставка
(lnsert)
Диаграммы
1
(Charts)
и выбрав в раскрывающемся списке Вставить
rрафик или диаграмму с областями
(Insert Line or Area Chart)
вариант График
(Line).
3.
Выделите диаграмму, выполнив команду меню Конструктор диаграмм
Design)
1
Данные
(Data)
1
Выбрать данные
(Select Data).
(Chart
Глава
356
12
_ __
__A
1
2
3
14582
45235
5
58942
б
12458
7
24589
8
78512
12567
11
4.
о
Соwниt! имtни
12458
4
9
10
Рис.
в r===c===D===E===F====G===
Продажи.
Q611асть:
,.]
35874
12374
12
1234
13
53421
12.24.
Определяем динамический именованный диапазон ПоследниеПятьПродаж
В разделе Элементы легенды (ряды)
(Legend Entries (Series)) открывшегося
(Select Data Source) щелкните на
диалогового окна Выбор источника данных
кнопке Добавить
5.
(Add).
В поле Значения
(Edit Series)
(Values)
открывшегося диалогового окна Изменение ряда
введите ссылку на динамический диапазон, включая имя рабочего
листа с досrупом к нему. Так, чтобы ввести динамический именованный диапазон,
который вы создали на шаге
где фрагмент
1,
введите в это поле =Продажи! последниеПятьПродаж,
Продажи! представляет собой ссылку на рабочий лист с доступом
к динамическому именованному диапазону ПоследниеПятьПродаж (рис.
6.
12.25).
Нажмите кнопку ОК, чтобы закрыть диалоговое окно Изменение ряда (Edit
затем нажмите кнопку ОК, чтобы закрыть диалоговое окно Выбор ис
Series),
точника данных
(Select Data Source ).
х
?
Изменение ряда
и~,я ряд~
[ :Продажи ! $АS1
[fJ = Продажи
;!начения,
1
=Продажи ! ПоследниеПятьПро, [i"\
01(
Рис.
12.25. Добавление
: 45П&, 45784; ...
Он,ена
динамического именованного диапазона ПоследниеПятьПродаж
в диалоговое окно Изменение ряда
•• ••••
,
Если на шаге 5 опустить имя рабочего листа, Excel отобразит ошибку в значении,
потому что он не распознает имя динамического именованного диапазона. Чтобы
•
избежать этой ошибки, не забудьте включить имя рабочего листа в ссылку на ди
намический именованный диапазон .
Пояснение
Построение диаграммы на основе динамического именованного диапазона слож
нее, чем на основе таблицы, но в некоторых ситуациях это необходимо. В этом раз
деле показано, как это сделать .
Диаграммы
12.20. Вставляем
1
357
сводную диаграмму
Задача
Вы хотите отобразить на диаграмме данные сводной таблицы.
Решение
Отобразить на диаграмме данные сводной таблицы (см . главу
свод11ую диаграмму
11)
можно, вставив
графическое представление данных сводной таблицы.
-
Чтобы вставить сводную диаграмму, выделите в сводной таблице ячейку и выпол
команду меню Анализ сводной таблицы (PivotTaЬ\e
ните
(Tools) 1 Сводная
(Charts) вкладки
(PivotChart). Если
тип создаваемой
(рис.
Сервис
(PivotChart). Можно также в разделе Диаграммы
(lnsert) щелкнуть на значке Сводная диаграмма
вы работаете в Excel для Windows, то можете выбрать здесь
например, гистограмму с группировкой
сводной диаграммы диаграмма
Вставка
•
Сумма по полю Продажи
493
Еда
Итог
200
Пицца
-
1
12.26 ).
На,вания строк
-
Analyze)
250
Салат
143
Cyn
150
Напиток
220
Кофе
120
Лимонад
100
100
713
50
Общий итог
200
150
о
11 1 1 1
Пицца
С.пот
суп
12.26. Сводная
Лнмокад
Коф•
Н~tпМ10К
Еда
Рис .
■ Итоr
таблица (слева) и созданная на ее основе сводная диаграмма (справа)
Вставить сводную диаграмму можно , и не создавая предварительно сводную таб
лицу, а выделив ячейку в исходной таблице, на которой собираетесь основать диа
грамму, выполнив команду меню Вставка
(lnser1)
1 Диаграммы
(Char1s) 1 Сводная
(PivotChar1) или
и выбрав вариант Сводная диаграмма
Сводная диаграмма и сводная таблица (PivotChar1 & PivotТaЬle).
диаграмма
(PivotChar1)
Вставив сводную диаграмму, можно использовать панель Поля сводной диаграм
мы
(PivotChart Fields)
для управления отображением данных на диаграмме. Панель
(PivotChart Fields) работает аналогично панели Поля
сводной таблицы (PivotTaЬ\e Fields) (см . разд. 11.3), за исключением того, что она
включает разделы Легенда (ряды) (Legend (Series)) и Ось (категории) (Axis
(Categories)) вместо разделов Столбцы (Columns) и Строки (Rows). При добавле
нии поля в один из этих разделов его данные будут добавлены в сводную диаграмму .
Поля сводной диаграммы
.
358
1
Глава
12
Между сводной диаграммой и сопутствующей ей сводной таблицей (если она во
обще есть) существует двусторонняя связь, поэтому при добавлении поля в раз
дел Столбцы (Columns) сводной таблицы оно также будет добавлено в раздел
Легенда (ряды)
(Legend (Series))
сводной диаграммы, и наоборот. Если добавить
для одной сводной таблицы несколько сводных диаграмм, они также будут отображать те же самые данные.
Как и в случае со сводной таблицей, в сводную диаграмму можно добавлять срезы
и временнь1е шкалы с тем, чтобы отфильтровать ее данные (см. разд.
11.14), -
это
может оказаться полезным при создании инструментальных панелей. Сводная диа
грамма, созданная в
Excel
для
Windows,
предоставляет возможность использовать
для фильтрации данных диаграммы кнопки полей. Отобразить или скрыть эти
кнопки можно, выделив сводную диаграмму и выбрав в разделе Показать или
скрыть (Show/Нide) вкладки Анализировать
Кнопки полей
(Analyze)
сводной диаграммы пункт
(Field Buttons).
Пояснение
Сводная диаграмма предоставляет эффективный способ визуализации сводок свод
ной таблицы и содержащихся в них сведений и сочетает в себе функции как свод
ных таблиц, так и диаграмм. В этом разделе показано, как использовать сводную
диаграмму и как с ней работать.
12.21. Создаем диаграмму Ганта
Задача
Вы хотите отобразить график проекта на диаграмме Ганта.
Решение
По умолчанию
Excel
не предлагает диаграмму Ганта. Однако ее можно смоделиро
вать, использовав линейчатую 2D-диаграмму (рис.
1.
12.27):
Создайте таблицу с тремя столбцами: Задание, День начала и Продолжительность. За
полните таблицу данными, которые требуется отобразить на диаграмме.
2.
Выделите таблицу и вставьте линейчатую 2D-диаграмму с накоплением, выпол
нив
команду
меню
Вставка
Диаграммы (Charts)
Гистограм
(lnsert)
(Insert Column/Bar Chart) и выбрав из раздела
(2-D Bar) вариант Линейчатая с накоплением (Stacked Bar).
1
1
ма/Линейчатая диаграмма
2-D
3.
линейчатая
Выделите ряд данных столбца день начала и выберите вариант заливки Нет за
ливки
4.
(No Fill)
и вариант границы Нет линий
(см.разд.
12. 6).
Выделите вертикальную ось, содержащую метки столбца Задание, и поменяйте ее
порядок,
открыв
Параметры оси
рядке
5.
(No Line)
панель диаграммы
Формат
(Axis Options) и установив
(Categories in reverse order).
(Format),
щелкнув
на
кнопке
флажок Категории в обратном по
Измените заголовок диаграммы, чтобы он отражал ее цель, и удалите легенду.
Диаграммы
...
Задание
1
359
Диаграмма Ганта
1
Задание
2
2
5
Задание
3
7
3
Задание4
10
_ 15J
о
За,цаннеl
3аданне2
10
20
30
•
-
Заданне3
-
3адание4
Рис.
12.27. Диаграмма
Ганта, созданная из линейчатой 2D-диаграммы с накоплением
Пояснение
В этом разделе показано, как построить диаграмму Ганта на основе линейчатой
2D-диаграммы с накоплением. Вы можете использовать предложенный здесь спо
соб, чтобы создавать и другие диаграммы,
-
выберите диаграмму, которая больше
всего похожа на ту, которую нужно создать, и отформатируйте ее соответствую
щим образом.
Создав и отформатировав диаграмму согласно своим предпочтениям, рекомендует
ся сохранить ее в виде шаблона диаграммы, чтобы вновь использовать в другом
месте (см.разд.
12.22).
12.22. Создаем
и используем шаблоны диаграмм
Задача
Вы создали диаграмму и хотите, чтобы у вас была возможность использовать ее
формат и настройки в каких-либо других задачах.
Решение
Предположим, воспользовавшись рекомендациями разд.
12.21,
вы создали пользо
вательскую диаграмму Ганта, и теперь вам надо получить возможность использо
вать ее в других задачах, не создавая опять с нуля. Сделать это можно, сохранив
диаграмму как шаблон.
Для этого щелкните на диаграмме правой кнопкой мыши, выберите вариант Со
хранить как шаблон
(Save As Template), введите имя для шаблона
(Save) для сохранения его в папке, которую Excel
и нажмите
кнопку Сохранить
использует
для шаблонов диаграмм.
Чтобы создать новую диаграмму на основе шаблона, если вы работаете в
Excel для
(Insert) 1 Диаграммы (Charts) 1 Реко
мендуемые диаграммы (Recommended Charts), в открывшемся диалоговом окне
Вставка диаграммы (Insert Chart) перейдите на вкладку Все диаграммы (All
Charts) и выберите шаблон из раздела Шаблоны (Templates). Если вы работаете
Windows,
выполните команду меню Вставка
360
в
1
Excel
Глава
для
12
macOS
откройте из верхней строки меню Мае вкладку Вставка
перейдите в раздел Диаграммы
(Charts)
1
Шаблоны
(Templates)
(Insert),
и выберите шаб
лон.
Чтобы
применить
шаблон
к
существующей диаграмме,
выполните команду меню Конструктор диаграмм
Изменить тип диаграммы
(Change Chart Туре)
выделите диаграмму,
(Chart Design)
1
Тип (Туре)
1
и выберите нужный шаблон.
Пояснение
В этом разделе показано, как на основе какой-либо диаграммы создать ее шаблон
для дальнейшего использования в
Excel.
Это позволяет применять форматы и на
стройки диаграмм аналогично тому, как мы работаем с шаблонами рабочей книги
(см. разд.
1. 7).
ГЛАВА
13
Графика, спарклайны и ЗD-карты
Графика способна помочь вам оживить электронные таблицы и передать их смысл
более эффективно, чем просто текст и цифры. В то время как глава
12
была сосре
доточена исключительно на диаграммах, в этой главе рассматриваются другие
области, начиная от использования символов и фигур и заканчивая созданием
3 D-визуализаций
данных, в том числе:
♦
вставка символов, фигур, схем и рисунков;
♦
создание диаграмм
♦
использование инструмента Камера
SmartArt;
(Camera)
для создания связанных рисунков
и управления частями ваших рабочих книг;
♦
работа со спарклайнами;
♦
применение
3О-карт
для изучения географических и временнь,х данных и соз
дания виртуальных туров и видеороликов.
13.1. Вставляем
символы
Задача
Вы хотите добавить символы или специальные знаки в ячейку или пользователь
ский числовой формат.
Решение
Предположим, вам надо поместить в ячейку знак копирайта или стрелки вверх и
вниз в пользовательский числовой формат. Символ или специальный знак можно
добавить в ячейку следующим образом (рис.
1.
13 .1 ):
Выделите ячейку и поместите курсор в то место, куда собираетесь вставить сим
вол или специальный знак.
2.
Выполните команду меню Вставка
(lnsert)
1
Символы
(Symbols)
1
Символ
(Symbol).
3.
В открывшемся диалоговом окне Символ
волы
(Symbols)
или Специальные знаки
(Symbol) перейдите
(Special Characters),
на вкладку Сим
в зависимости от
типа знака, который нужно вставить, и просмотрите доступные варианты. Если
вы выбрали вкладку Символы
(Symbols),
то можете использовать раскрываю-
362
1
Глава
13
щийся список Набор
гории символы,
4.
(Subset),
чтобы увидеть все доступные в конкретной кате
например, стрелки или географические знаки.
-
Выделите символ, который надо вставить, и щелкните на кнопке Вставить
(lnsert).
5.
Повторите шаг
4
для каждого символа, который требуется вставить, после чего
закройте диалоговое окно.
о
Символ
~имвопы
специальные знаки
р
(1)
4/s % %
п
t
G) @ @ @
о
•
е с % fli®
1/в 3/в 5/s '3/в
I - /
о
Jjoбop: J стр,лки
-т:,
Ц!рифr. ! (обычный т"ст)
'1?
х
➔
f-
✓ 00 L n
® ® 0 ® ®
о ~
fанее исполь3овавwиня символы;
""
S'4
1М
ф
~
I
@
~
-
i "'
* г
1
о в е о
Е1
о е :м, 1/з 7/з 1/s 1/s З/5 "
1
0 0
::11
~
\{
:t
~
~
Q
г
L J
о
•
□
0
ф
(
•
о
д
r
д
J
◊
> .,
Имя Юникода;
Upwards Arrow
Рис.
13.1. Диалоговое
окно Символ
Чтобы добавить символ или специальный знак в пользовательский числовой фор
мат, сначала вставьте его в ячейку, затем скопируйте его, выделив символ и нажав
комбинацию клавиш
<Ctrl>+<C>,
формат, нажав комбинацию клавиш
и вставьте его в пользовательский числовой
<Ctrl>+<V>.
Пояснение
В этом разделе показано, как вставлять символы и специальные знаки, используя
диалоговое окно Символ
юнисимв (см. разд.
5.2)
(Symbol).
Сделать это можно также с помощью функции
или инструмента Автозамена
заменить на символ короткий введенный код (см.разд.
13.2. Вставляем
уравнения
Задача
Вы хотите добавить на рабочий лист уравнение.
(AutoCorrect),
1.15).
позволяющего
Графика, спарклайны и ЗD-карты
1
363
Решение
Чтобы вставить уравнение, создаваемое с нуля, выполните команду меню Вставка
(lnsert)
1
Символы
(Symbols)
1
Уравнение
(Equation)
В качестве альтернативы
можно открыть раскрывающийся список пункта Уравнение
одно из предустановленных уравнений
Circle)
или Бином Ньютона
- например,
(Binomial Theorem).
(Equation)
и выбрать
Площадь круга
(Area of
Вставляемое уравнение Ехсе\ добавляет на рабочий лист в виде плавающего или
встроенного объекта, который вы можете затем отредактировать, выделив его и
использовав доступные параметры меню Уравнение
(Equation).
Пояснение
В этом разделе показан удобный способ вставки уравнения в виде плавающего или
встроенного объекта, который затем можете переместить или отредактировать.
13.3. Вставляем
фигуры
Задача
Вы хотите вставить на рабочий лист текстовое окно, стрелку, прямоугольник или
другую фигуру.
Решение
Предположим, вам надо добавить на рабочий лист фигуру
-
например, текстовое
окно, выноску или стрелку. Сделать это можно, выполнив команду меню Вставка
(Insert)
1
Иллюстрации
(Illustrations)
1
Фигуры
(Shapes),
выбрав в открывшейся па
нели один из доступных вариантов и щелкнув мышью в позиции, куда его следует
поместить.
Добавленную фигуру можно перемещать мышью, можно изменять ее разм~пере
таскивая ее углы и края, поворачивать ее, перетаскивая знак поворота~' или
форматировать с помощью доступных параметров панели Формат фигуры
Format),
(Shape
открыть которую вы сможете, щелкнув на фигуре правой кнопкой мыши и
выбрав из контекстного меню пункт Формат фигуры
(Format Shape).
К большинству фигур можно добавить текст, выполнив на ней двойной щелчок
мышью и введя требуемый текст. Можно также связать этот текст со значением
ячейки, чтобы он динамически изменялся при обновлении ячейки,
-
выделите для
этого фигуру и введите в строку формул =с=жа_на_яvей.JС.У. Так, чтобы добавить со
держимое ячейки А I в текстовое окно, вам нужно вставить текстовое окно, выде
лить его и ввести в строку формулу =$А$1.
Пояснение
В этом разделе показано, как добавить на рабочий лист фигуру
-
чтобы, к приме
ру, вставить выноску или стрелку. Добавить фигуру можно и в диаграмму, выделив
364
Глава
1
1З
диаграмму и выполнив команду меню Формат
(см.разд.
Shapes)
(Format)
1
Вставка фигур
(lnsert
12.6).
Дополнение
Добавлять фигуры также можно, нарисовав их с помощью инструмента Рисование
и преобразовав свой рисунок в фигуру (см. разд.
(Draw)
13.4).
Чтобы узнать, как добавлять более сложные фигуры, обратитесь к разд.
13.4. Используем
13.5.
инструмент Рисование
Задача
Вы хотите вставить быстрый набросок или фигуру, нарисовав их на рабочем листе.
Решение
Предположим, вам надо создать на рабочем листе быстрый набросок, чтобы проил
люстрировать точку. Сделать это можно, выполнив команду меню Рисование
(Draw)
1
Средства рисования
(Drawing Tools),
выбрав в открывшейся панели соот
ветствующее перо и нарисовав им на рабочем листе нужную фигуру.
~
Если в ленте нет вкладки Рисование
1
,Ж
(Draw),
добавьте ее в ленту, обратившись
к рекомендациям разд. 1.19.
Выбранное перо можно настроить, выделив его, щелкнув на его стрелке раскры
вающегося списка и выбрав какой-либо из доступных вариантов.
Можно также преобразовать свои рукописные наброски в одну или несколько фи
гур, выполнив команду меню Рисование
(Draw) 1 Средства рисования (Drawing
(Lasso Select), обведя курсором рукописный на
бросок и выполнив команду меню Рисование (Draw) Преобразовать (Convert)
Рукописный ввод в фигуру (lnk to Shape).
Too\s)
1
Произвольное выделение
1
1
Закончив рисование, деактивируйте перо, выполнив команду меню Рисование
(Draw)
1
Средства рисования
(Drawing Tools)
1
Выделение
(Select).
Чтобы удалить или скрыть все добавленные рукописные фрагменты, либо выделите
их и нажмите кнопку Удалить
(Delete),
либо выполните команду меню Рецензи
рование (Review) 1 Рукописный ввод (lnk) 1 Скрыть рукописные фрагменты
(Hide lnk) и выберите один из доступных вариантов: Скрыть рукописные фраг
менты (Hide Ink), Удалить все рукописные фрагменты на листе (Remove All lnk
оп Sheet) или Удалить все рукописные фрагменты в книге (Remove AII Ink in
Workbook).
Графика, спарклайны и 30-карты
365
Пояснение
Представленные в этом разделе способы рисования на рабочем листе могут приго
диться, если понадобится сделать быстрый набросок либо вставить фигуры, нари
совав их вручную, вместо того, чтобы воспользоваться решением из разд.
13. 3.
13.5. Используем SmartArt
Задача
Вы хотите вставить организационную диаграмму, диаграмму Венна или им подоб
ную.
Решение
Ехсе\ предлагает возможность добавлять на рабочие листы разнообразные рисунки
включая базовую диаграмму Венна, организационные диаграммы, про
SmartArt,
цессуальные диаграммы и циклические диаграммы. Для вставки какой-либо из них,
выполните
команду
Выбор ри сунка
1m
=~
-~.,...
меню
Вставка
(Insert)
1
Иллюстрации
выберите один из вариантов и нажмите кнопку ОК (рис.
SmartArt,
(Illustrations)
13.2).
Все
Список
Процесс
Цикл
х
?
SmartArt
1
L L
~-
-
~
Орrанюацwонная диаграмма с име...
[;;]
Рисунок
Сnужит для отобра ения
,,_ 1
иерархичrских сведrний или
отношений подотчетности в
органи3ации. Дпя ввода тrкста в
поле дол:ж:ноаи аводите
непосредственно в прямоуго.nьник
меньшего разt.н~ра. С Э,ТИМ r..~~~~то.~~---··-""' .
ОК
Рис.
13.2.
Некоторые из доступных рисунков
11
Отмена
SmartArt
Вставленный рисунок можно переместить, щелкнув на нем и перетащив в нужное
место, а также изменить его внешний вид, выбрав на вкладке
структор
(Design)
или Формат
(Format)
SmartArt
опции Кон
и воспользовавшись доступными парамет
рами (например, изменить его цвета и стиль). Кроме того, можно щелкнуть на
рисунке правой кнопкой мыши и выбрать из контекстного меню пункт Формат
объекта
(Format Object),
открывающий панель Формат фигуры
(Format Shape).
366
1
Глава
13
Чтобы добавить на вставленный рисунок текст, вы можете либо ввести его напря
мую на рисунке, либо воспользоваться его областью текста
-
областью редакти
рования текста в левой части рисунка. Для открытия области текста щелкните на
стрелке на левом краю рисунка или выберите на вкладке
руктор
(Design)
1
Создать рисунок
(Create Graphic)
SmartArt
опцию Конст
Область текста
1
(Text Pane).
SmartArt
Чтобы добавить больше фигур или изменить текст, выберите на вкладке
опцию Конструктор
(Design)
1
Создать рисунок
(Create Graphic)
и воспользуйтесь
доступными параметрами.
Рисунки
SmartArt
могут содержать только статичный текст, поэтому впрямую при
вязать текст к значению ячейки не получится. Однако рисунок можно преобразо
вать в фигуру, выбрав на вкладке SmartArt опцию Конструктор (Design) 1 Сброс
(Reset)
1 Преобразовать
(Convert)
1 Совместно с фигурами
воспользовавшись рекомендациями из разд.
13.3
(Convert to Shapes)
и
по привязке текста каждой фигу-
ры к ссылке на ячейку.
Пояснение
В этом разделе приведены способы
использования
инструмента
SmartArt
для
вставки диаграмм. Просмотрите доступные варианты, чтобы найти подходящий
вам.
13.6. Вставляем
рисунки
Задача
Вы хотите добавить рисунок на рабочий лист, в ячейку либо в верхний или нижний
колонтитул.
Решение
Чтобы добавить рисунок на рабочий лист, выполните команду меню Вставка
(Insert) 1 Иллюстрации (Illustrations)
в Excel 365, выполните вместо этого
ции (Illustrations) 1 Рисунки (Pictures)
1
Рисунки
(Pictures).
Если же вы работаете
команду меню Вставка
1
Поместить поверх
(lnsert) 1 Иллюстра
ячеек (Place Over Cells).
Затем в зависимости от места, где находится рисунок, выберите один из вариантов:
Это устройство
(This Device), Стоковые изображения (Stock Images) или Изо
(Online Pictures), выберите рисунок или, удерживая нажа
<Ctrl>, выберите нескольких рисунков и нажмите кнопку Вставка
бражения из Интернета
той клавишу
(Insert).
Можно также копировать и вставлять рисунки с другого рабочего листа, рабочей
книги
или
<Ctrl>+<C>,
приложения,
выделив
там
рисунок,
нажав
комбинацию
клавиш
выбрав на своем рабочем листе место, куда рисунок нужно вставить,
и нажав комбинацию клавиш
Если вы работаете в
<Ctrl>+<V>.
Excel 365,
то можете добавить рисунок в ячейку, выделив ее,
выполнив команду меню Вставка
(Insert)
1
Иллюстрации
(Illustrations)
1
Рисунки
Графика, спарклайны и 30-карты
(Pictures) 1 Поместить в ячейку (Place In Cell) и выбрав нужный
версиях Excel достичь аналогичного результата можно так:
1.
1
367
рисунок. В других
Добавьте рисунок на рабочий лист, переместите его в ячейку и измените его
размер, чтобы он соответствовал ячейке. При необходимости можно изменить
размеры строк и столбцов ячейки с тем, чтобы ячейка стала больше, или
воспользоваться рекомендациями разд.
1.6
для объединения нескольких ячеек
в одну.
2.
Выделите рисунок, щелкните на нем правой кнопкой мыши, выберите из кон
текстного меню пункт Размер и свойства
панель Формат
Properties),
3.
(Format),
(Size & Properties),
открывающий
и нажмите в ней кнопку Размер и свойства
(Size &
чтобы попасть в нужный раздел.
Выберите в разделе Свойства
вместе с ячейками
(Properties) вариант Перемещать и изменять
(Move and size with ce\ls) - это действие гарантирует, что
при изменении размера строк и столбцов рисунок станет перемещаться вместе
с ячейкой и не будет отображаться, если скрыть ячейку или применить фильтр,
который ее исключает.
Если вы используете
Excel 365,
то можете с помощью функции ИЗОБРАЖЕНИЕ доба
вить в ячейку рисунки форматов ВМР,
JPG/JPEG, GIF,
ТIFF,
PNG, ICO
или
WEBP.
Обычно эту функцию применяют в формуле =ИЗОБРАЖЕНИЕ (источник;замещающий_ текст;
размер;высота;ширина), где:
♦
источник
Это интернет-адрес
кол
HTTPS
больше 255
(URL)
файла изображения. Он должен использовать прото
и содержать не более
255
символов. Если URL-aдpec содержит
символов, попробуйте передать его в ячейку, применив формулу
=ИЗОБРАЖЕНИЕ (ссылка_ на_ ячейку) . Если URL-aдpecy, который передается в функцию
ИЗОБРАЖЕНИЕ, нужна аутентификация,
Excel
не отобразит изображение, а также за
блокирует любые перенаправления URL-aдpeca, следуя соображениям безопас
ности;
♦
замещающий_ текст
Этот необязательный аргумент применяется для
он
предоставляет
разд.
♦
альтернативный
текст,
повышения доступности
описывающий
изображение
-
(см.
1.21).
размер
Этот необязательный ~рrумент применяется для указания размеров изображе
ния: значение о
пропорции, 1 -
2-
-
позволяет вписать изображение в ячейку и сохранить его
заполнить ячейку изображением и игнорировать его пропорции,
сохранить исходный размер изображения, з
-
указать размер изображения
с помощью аргументов высота и ширина;
♦
высота и ширина
Эти необязательные аргументы задают высоту и ширину изображения в пиксе
лах. Если указать только один из них, изображение сохранит свои пропорции.
368
Глава
1
13
Если значение аргумента размер равно з, следует обязательно указать хотя бы
один из этих аргументов и опустить их, если значение аргумента размер равно о,
1
или
2.
И наконец, можно добавить рисунок в верхний или нижний колонтитул рабочего
листа: выполните сначала команду меню Вставка
тулы
(Header & Footer),
(lnsert)
1
Текст
(Text)
1
Колонти
которая добавит верхний или нижний колонтитул, а затем
вставьте рисунок, выделив верхний или нижний колонтитул и выполнив команду
меню Колонтитулы
Elements)
1
Рисунок
(Header & Footer)
(Picture).
1
Элементы колонтитулов
(Header & Footer
Пояснение
В этом разделе описано добавление рисунков в рабочую книгу с помощью команд
меню и функции ИЗОБРАЖЕНИЕ. Поскольку функция ИЗОБРАЖЕНИЕ использует URL-aдpec,
динамически изменять изображения можно, обновляя этот URL-aдpec.
Дополнение
Более подробная информация о перемещении и изменении размеров объектов
вместе с ячейками, включая рисунки, приведена в разд.
13.7. Группируем
13. 8.
объекты
Задача
У вас на рабочем листе есть несколько плавающих или встроенных объектов, и вы
хотите сохранить их вместе при перемещении.
Решение
Предположим, на рабочем листе имеются два или более плавающих или встроен
ных объекта
-
например, фигуры, рисунки, рисунки Smartдrt или диаграммы,
и вам надо свободно переместить их все вместе. Для этого сначала сгруппируйте
эти объекты:
1.
Выделите первый объект и, удерживая нажатой клавишу
<Ctrl>,
выделите все
другие объекты, которые нужно сгруппировать.
2.
Выполните команду меню Формат фигуры
(Arrange)
1
Группировать
(Shape Format) Упорядочение
(Group Objects) 1 Группировать (Group).
1
Сгруппировав объекты, щелчком на одном из них выделите всю группу,
-
тогда
их можно будет переместить все вместе. Вторым щелчком на объекте выделите сам
объект
это даст возможность перемещать его внутри группы.
-
Чтобы разгруппировать объекты, выделите группу и выполните команду меню
Формат фигуры
Objects)
1
(Shape Format) 1 Упорядочение (Arrange)
(Ungroup).
Разгруппировать
1
Группировать
(Group
Графика, спарклайны и 30-карты
369
Для выравнивания, поворота и перемещения объектов назад или вперед можно
использовать параметры раздела Упорядочение (Аггапgе)
-
выделите нужный
объект или объекты и выберите подходящий параметр.
'
Пояснение
Попытка удержать несколько объектов вместе при их перемещении может потре
бовать много времени и усилий, а объекты при этом часто могут теряться. В этом
разделе показано, как быстро и легко группировать объекты, чтобы перемещать их
все вместе.
13.8. Перемещаем
и изменяем размеры объектов
вместе с ячейками
Задача
У вас есть плавающий или встроенный объект, и вы хотите иметь возможность
управлять
его
местоположением
и
размером,
когда
вы
меняете
размер
строк
и
столбцов, вставляете, удаляете, скрываете или фильтруете их.
Решение
Предположим, на рабочем листе имеется плавающий или встроенный объект: фи
гура, рисунок, рисунок
SmartArt -
и вам надо получить возможность управлять
его перемещением или изменением размера вместе с ячейками рабочего листа,
когда
вы,
например,
меняете
размер,
вставляете,
удаляете,
скрываете
строки
или
столбцы или применяете фильтр. Сделать это можно, выделив объект, открыв его
панель Формат
& Properties)
(Format)
(см. разд.13.3), нажав на кнопку Размер и свойства
и выбрав в разделе Свойства
(Properties)
(Size
один из вариантов переме
щения и размера:
♦
Перемещать и изменять вместе с ячейками
Этот вариант (доступный по умолчанию) изменяет местоположение и размер
объекта, когда вы вносите изменения в строки и столбцы.
♦
Перемещать вместе с ячейками, но не изменять размеры
Этот вариант изменяет местоположение, но не трогает размер.
♦
Не перемещать вместе с ячейками и не изменять размеры
Этот вариант сохраняет местоположение и размер объекта в фиксированном виде.
Пояснение
В этом разделе показано, как управлять перемещением и изменением размера пла
вающего или встроенного объекта при внесении изменений в строки и столбцы
рабочего листа.
Использование
предложенных здесь
вариантов поможет, если,
370
Глава
1
13
к примеру, вам нужно, чтобы помещенный в ячейку рисунок при скрытии или
фильтрации строк также скрывался.
Аналогично соответствующее применение этого метода гарантирует, что имею
щаяся на рабочем листе диаграмма не изменит своего размера при фильтрации
строк, на которых она основана (см. разд.
13.9. Вставляем
12.3).
связанный рисунок
Задача
Вы хотите скопировать часть рабочего листа и отобразить ее в виде статического
или динамического рисунка.
Решение
Предположим, вы работаете с формулами на нескольких рабочих листах или в ра
бочих книгах, и вам надо иметь возможность отслеживать диапазоны ячеек на каж
дом из них. Решить эту задачу можно, создав связанный рисунок
-
рисунок, похо
жий на прямую трансляцию части рабочего листа, которая автоматически отражает
все вносимые вами изменения.
Чтобы создать связанный рисунок, выделите диапазон, который собираетесь от
слеживать,
нажмите
комбинацию клавиш
<Ctrl>+<C>,
чтобы
скопировать его,
затем перейдите туда, где нужно разместить связанный рисунок,
команду меню Главная (Ноте)
Связанный рисунок
1
Буфер обмена
(Linked Picture ).
плавающего или встроенного объекта
(Clipboard)
1
и выполните
Вставить
(Paste)
1
Этим вы вставите связанный рисунок в виде
-
теперь при внесении изменений в скопи
рованный диапазон ячеек (например, при изменении значения какой-либо ячейки
или вставке диаграммы) связанный рисунок автоматически отобразит эти измене
ния. Быстро перейти к источнику связанного рисунка можно, выполнив на нем
двойной щелчок мыши.
Вставить связанный рисунок также можно и с помощью редко употребляемого ин
струмента
Excel
ными в разд.
Камера
1.20,
(Camera).
Воспользовавшись рекомендациями, приведен
добавьте команду Камера
(Camera)
на панель быстрого доступа,
выделите диапазон, связанный рисунок которого нужно создать, выберите команду
Камера
(Camera)
на панели быстрого доступа и щелкните мышью там, куда соби
раетесь вставить рисунок.
Чтобы вставить статический (необновляемый) снимок диапазона ячеек, выделите
диапазон ячеек, скопируйте его, нажав комбинацию клавиш
<Ctrl>+<C>,
выберите
место, куда нужно вставить снимок, и выполните команду меню Главная (Ноте)
Буфер обмена
(Clipboard)
1
Вставить
1
(Paste) 1 Рисунок (Picture). Этот прием обыч
Office, поэтому его также можно исполь
но доступен во всех других приложениях
зовать,
Word.
например, для
вставки статического рисунка диапазона ячеек в
программе
Графика, спарклайны и 30-карты
1
371
Если надо добавить рисунок диапазона ячеек в приложения, не входящие в пакет
Office,
выделите диапазон ячеек, затем скопируйте его, выполнив команду меню
Главная
(Clipboard) 1 Копировать (Сору) 1 Копировать
as Picture), и укажите в открывшемся диалоговом окне Копиро
(Сору Picture) требуемый формат рисунка.
(Home)
1 Буфер обмена
как рисунок (Сору
вание рисунка
Пояснение
Связанные рисунки удобны, когда вам нужно видеть из другого места часть какого
либо рабочего листа или рабочей книги. Например, их можно использовать для от
слеживания расчетов вместо того, чтобы открывать окно контрольных значений
(см. разд.
3.10).
Связанные рисунки также можно размещать на инструментальных панелях для
отображения любых ячеек, диаграмм, графиков и
прочих объектов, которыми
решили поделиться.
13.1 О.
Используем спарклайны
Задача
Вы хотите визуализировать ряды данных и выделить их ключевые характеристики,
вставив в ячейку рабочего листа маленькую диаграмму.
Решение
Предположим, на рабочем листе имеются строка или столбец числовых данных,
и вам надо отобразить их тенденцию, а также максимумы и минимумы на располо
женной рядом маленькой диаграмме. В таком случае можно вставить спарклайн
-
простой диаграммоподобный график, который помещается в одну ячейку.
Ехсе\ предлагает следующие типы спарклайнов (рис.
♦
График
13.3):
(Line)
Этот вариант похож на обычный график, поэтому он удобен для отображения
общей тенденции данных.
♦
Гистограмма
(Co\umn)
Этот вариант похож на обычную гистограмму, поэтому вы можете его использо
вать для сравнения относительных значений и выделения максимумов и мини
мумов.
♦ Выигрыш/проигрыш
(Win/Loss)
Этот вариант показывает, является ли каждое значение положительным или
отрицательным, поэтому его можно задействовать, например, для поиска отри
цательных значений в рядах данных. Каждое положительное значение отобра
жается здесь в виде блока над горизонтальной осью, каждое отрицательное зна
чение
-
в виде блока под ней, а нулевые значения оставляются пустыми.
Глава
372
А
13
с
в
Е
о
F
н
G
1
~-soj
2
з
4
5
6
7
,
f
Рис.
Выигрыш/проигрыш
Ги стограмма
\ j 11_111
300
300
~
8
9 .
График
300
••••••
400"
13.3.
Три типа спарклайнов: График, Гистограмма и Выигрыш/проигрыш
Спарклайны не отображают значения оси или метки данных, поэтому их нельзя
использовать для поиска значений или конкретных точек данных, но они удобно
показывают общую тенденцию рядов данных и относительное значение каждой
точки данных.
Чтобы вставить спарклайн:
1.
Выделите диапазон данных, на котором собрались основать спарклайн. Убеди
тесь, что ни один заголовок в выделение не попал.
2.
Выполните команду меню Вставка
(Insert)
1
Спарклайны
(Sparklines)
и выбе
рите тип спарклайна, который нужно вставить. Так, чтобы вставить спарклайн,
который похож на график, выберите вариант График
3.
(Line ).
Убедитесь, что в поле Диапазон данных
(Data Range) открывшегося диалогово
(Create Sparklines) введен верный диапазон дан
поле Диапазон расположения (Location Range) ссылку на
го окна Создание спарклайнов
ных, затем добавьте в
ячейку, указывающую, куда вставить спарклайн.
4.
Нажмите кнопку ОК, и Ехсе\ создаст спарклайн.
Основать спарклайн также можно и на динамическом именованном диапазоне. Для
этого воспользуйтесь решением из разд.
зон, затем на шаге
3
2. 7,
чтобы создать именованный диапа
введите его имя в поле Диапазон данных
(Data Range).
Так,
чтобы создать спарклайн, который использует для своих данных динамический
именованный диапазон ПоследниедесятьПродаж, введите в поле Диапазон данных
(Data Range)
запись =ПоследниеДесятьПродаж.
Спарклайн помещается в одну ячейку, поэтому изменить размер вставленного
спарклайна можно, изменив размер ячейки, в которой он расположен. Вы, напри
мер, можете для этого изменить размер строки или столбца ячейки или воспользо
ваться рекомендациями разд.
1.6,
чтобы позволить ячейке занимать больше одной
строки и/или столбца.
Для настроки спарклайна выделите его и выберите требуемые параметры вкладки
Спарклайн
♦
(Sparkline):
Изменить данные
(Edit Data)
Выбор
Изменить данные
параметра
Sparkline's Data)
отдельного
спарклайна
(Edit Single
открывает диалоговое окно Изменение данных спарклайна
Графика, спарклайны и 30-карты
(Edit Sparkline Data),
1
373
где можно изменить диапазон исходных данных спарклай
на. Если вам также надо переместить спарклайн или использовать группу спарк
лайнов
(см.
разд.
13.11), выберите вместо этого параметр Изменить данные и
(Edit Group Location & Data). Чтобы управлять отобра
расположение группы
жением пустых ячеек или обработкой скрытых строк и столбцов, выберите
параметр Скрытые и пустые ячейки
(Hidden & Empty Cells), открывающий
(Hidden & Empty Cell
диалоговое окно Настройка скрытых и пустых ячеек
Settings).
♦
Тип (Туре)
Выберите варианты График, Гистограмма или Выигрыш/проигрыш, чтобы
изменить тип спраклайна.
♦
Показать
(Show)
В этой группе содержится ряд флажков, которые вы можете использовать для
выделения определенных характеристик спарклайна,
-
например, минимальной
и максимальной точки, отрицательной точки, первой и последней точки, а также
для включения маркеров точки.
♦
Стиль
(Style)
Здесь вы можете применить к спарклайну различные стили, выбрав нужный из
галереи стилей, выбрать параметр Цвет спарклайна (Sparkliпe
Color),
чтобы
изменить цвет и толщину линии спарклайна, а также параметр Цвет маркера
(Marker Color), чтобы изменить цвета, которые он использует для своих марке
ров, например, указать разные цвета для максимальной и минимальной точек
спарклайна.
♦
Группа
( Group)
Выберите здесь параметр Ось
(Axis),
чтобы управлять осями спарклайна. На
пример, вы можете отобразить горизонтальную ось
точки данных), выбрав параметр Показать ось
( если есть отрицательные
(Show Axis), или изменить ми
нимальные и максимальные границы для вертикальных осей. Выберите пара
метры Сгруппировать
создать
группу
(см.разд.
13.11).
(Group)
спарклайнов
и Разгруппировать
или
(Ungroup),
разгруппировать
чтобы вручную
существующую
И наконец, выберите параметр Очистить
(Clear),
группу
чтобы удалить
спарклайн или группу спарклайнов.
Пояснение
Спарклайн удобно использовать, если у вас есть последовательность числовых
данных и надо быстро визуализировать их тенденцию, сравнить относительные
значения, выделить максимальные и минимальные точки или найти положитель
ные, отрицательные или нулевые значения. А для нескольких рядов данных можно
создать группу спарклайнов (см.разд.
13.11).
374
1
Глава
13
13.11. Используем
группы спарклайнов
Задача
У вас есть несколько рядов данных
например, каждая строка в таблице,
-
-
и вы
хотите создать для каждого из них спарклайн.
Решение
Предположим, ваша таблица содержит данные акций, а данные по каждой акции
приведены в отдельной строке. Быстро создать для каждой такой строки спарклайн
13.10) можно
(см. разд.
с помощью группы спарклайнов.
Чтобы создать группу спарклайнов (рис.
1.
13.4):
Выделите диапазон данных для каждой строки, на которой собираетесь основать
спарклайн, исключая заголовки.
2.
Выполните команду меню Вставка
(Insert)
1
Спарклайны
(Sparklines) и выбе
(Line)).
рите тип спарклайнов, которые нужно вставить (например, График
3.
(Data Range) открывшегося диалогово
(Create Sparklines) введен верный диапазон дан
полем Диапазон расположения (Location Range),
Убедитесь, что в поле Диапазон данных
го окна Создание спарклайнов
ных, затем воспользуйтесь
чтобы указать, куда вставить спарклайны. Например, если диапазон данных
включает пять строк и вам надо вставить спарклайн для каждой строки, то диа
пазон расположения должен быть шириной в один столбец и высотой в пять
строк.
4.
Нажмите кнопку ОК, и
Excel
с
в
А
создаст группу спарклайнов.
1
2
з
~
•
1
2
4
5
з
6
4
7
5
201
53
-5
100
176
11Ш111 • f'!!I . . 1~1!1 . . \
191
56
10
101
178
192
60
20
99
192
178
57
176 -------55.... ,..,.,....._
40
100
191
80 ----~
100
201.. __,,,,----
8
Рис.
13.4.
Таблица с группой спарклайнов
Вы также можете вручную сгруппировать уже созданные вами спарклайны, выде
лив их и выполнив команду меню Спарклайн
(Sparkline)
1
Группировать
(Group)
1
Чтобы удалить спарклайн из группы, выделите его и вы
(Sparkline) 1 Группировать (Group) 1 Разгруп
Спарклайн
меню
команду
полните
Сгруппировать
пировать
Группы
(Group ).
(Ungroup).
спарклайнов
упрощают внесение
изменений для
в группе, поскольку, когда вы выбираете один из спарклайнов,
каждого
Excel
спарклайна
автоматически
выделяет их все. Так, чтобы изменить тип каждого спарклайна группы на Гисто-
Графика, спарклайны и ЗD-карты
грамма
(Column), выделите один
(Sparkline) 1 Тип (Туре)
Спарклайн
•
375
из спарклайнов и выполните команду меню
1
Гистограмма
(Column).
По умолчанию Excel автоматически масштабирует вертикальную ось для каждого
1
спарклайна, поэтому каждый спарклайн в группе может иметь свою шкалу. Чтобы
,
применить для каждого спарклайна группы одну и ту же шкалу, выделите спарк
лайны, выполните команду меню Спарклайн (Sparkline) 1 Группировать (Group) 1
Ось (Axis) и укажите минимальные и максимальные значения для вертикальных
осей.
Группа спарклайнов, основанная на какой-либо таблице, автоматически не включа
ет новые, добавляемые вами в эту таблицу строки или столбцы. Однако вы можете
вручную
отредактировать
группу,
выделив
один
из
спарклайнов
и
выполнив
команду меню Спарклайн
(Sparkline) 1 Изменить данные (Edit Data) 1 Изменить
(Edit Group Location & Data), открывающую диа
спарклайнов (Edit Sparklines ). Вы также можете доба
данные и расположение группы
логовое окно Изменение
вить в группу новые спарклайны, щелкнув на маркере заполнения ячейки спарк
лайнов и перетащив его в нужное место (см.разд.
1.12).
Пояснение
Группы спарклайнов удобно использовать, если вам надо отобразить спарклайн для
каждой строки таблицы или изменить одновременно несколько спарклайнов.
13.12. Используем
ЗD-карты
Задача
Вы хотите отобразить географические данные на 3D-карте и (возможно) показать
изменения с течением времени.
Решение
Предположим, ваша таблица содержит некоторые географические данные (рис.
13 .5),
и вы собираетесь нанести их на интерактивную 3D-карту. Если вы работаете
в
Excel
для
Windows,
то можете применить 3D-карты
(3D Maps) -
инструмент
визуализации 3D-данных, позволяющий изучать географические данные и созда
вать по ним виртуальные туры, демонстрируя их изменение с течением времени.
Чтобы создать 3D-карту или 3D-тур, выделите ячейку в таблице и выполните ко
манду меню Вставка
(Insert)
1
пользуете 3D-карты впервые,
Обзоры
Excel
(Tours)
1
3D-карта
(3D
Мар). Если вы ис
предложит вам включить соответствующую
надстройку, а затем откроет 3D-карты в новом окне. Если вы уже работали
с 3D-картами,
Excel
отобразит список существующих туров, и для создания нового
вам нужно будет щелкнуть на кнопке Новый обзор
Окно 3D-карты
(3D Maps)
(New Tour).
содержит справа панель Слой
для настройки отображения данных на карте (рис.
13.6):
(Layer),
которая служит
Глава
376
13
с
в
А
Е
D
F
Н
G
1
2
Город
з
Москва
4
Москва
5
Москва
6
Москва
а Население адата
7
Санкт-Пете бург
8
Санкт:Петербург
9
Санкт-Петербург
10
11
12
Санкт-Петербург
13
РОСТОВ:.!:!_а-ДО!:(У
14
15
16
17
18
19
20
Рост_о.в-~дону _
Ростов-на-Дону
01.01.2020
01.01.2010
01.01.2000
01.01.1990
01.01.2020
01.01.2010
01.01.2000
01.01.1990
01.01.2000
01.01.2010
01.01.2000
01.01.1990
1089632
1142 228
604616
592885
595169
631850
..
Владивосток
Владивосток
Владивосток
13.5.
5 602614
4880257
---4 661833
4989 833
1008502
1068017
Владивосток
Рис.
01.01.2020
01.01.2010
01.01.2000
01.01.1990
-~-
Ростов-на-Донt._
а
13 010 223
11504956
1012664&
8878021
•-•
•--п•
'""
•••••
Географические данные, подготовленные для отображения
с помощью инструмента 3D-карты
"ЛАSНАЯ
с:.; ОбнО!!J.!П;, дам1-1ые
►
6+ За11т~нm,
L,9Ф,1гуры •
з<рilн
B,:x:npo1<:uiecт.i
'"'" кэрrе
обюр•
С.110М
06,ор
Обзор
•
~
Подписи П11оск.11я
х
1
01.01 .2020 0:00
1
мкt11
Встаsить В~мЯа r1росмотр
обл.кт-и
К-!рта
1
t:::
х
До6&1!1ИJЬ СЛОЙ
Слой
•
'
Сцена
K.!pn1
о
По~,сс.: НАстр1н-1:мецыt".
1
Дit!ННЬК'
•
1,;/
(10 с)
1()()%
Р.кnо11о~ие
•
+
Слой
1
Город
Горо,11
• )(
Высота
.
Н1iсе.11ен14е (C~ua}
■ Население (Сумма)
,J
"
ЗАВЕРШЕНО
ГОТОВО
Рис.
13.6.
1
Дo6asi-rrь no11t
+
х
До6аиить noAe
~rория
,+
Добаl!l~,,1ь поле
Время
• XI
Д!Jта(Нет)
►
Фн11ьтры
..
.
.
Q
[._;]
ЗD-карта, отображающая в виде столбцов данные о населении для двух штатов США,
высота столбца обозначает численность населения
Е3
-
Графика, спарклайны и 30-карты
1.
В разделе Данные
(Data)
377
выберите тип визуализации, который нужно отобра
зить на карте, из следующих доступных вариантов: Гистограмма с накоплени
ем
(Stacked Co\umn),
Гистограмма с группировкой
зырьковая диаграмма (ВuЬЬ\е), Тепловая карта
2.
Убедитесь, что поле Расположение
(Location)
(Heat
(Clustered Column), Пу
Мар) и Регион (Region).
включает все столбцы (поля) таб
лицы с географическими данными, которые надо отобразить, и инструмент
установил для каждого из них правильный тип. Измените все неправильные
типы и нажмите кнопку Добавить поле
(Add Field),
чтобы добавить те поля, ко
торые требуется включить.
3.
Чтобы увидеть, насколько инструмент 3D-карты уверен в том, что правильно
отобразил каждое местоположение, щелкните на значении процента распознан
ных названий, расположенном прямо над полем Расположение
(Location).
Этот
процент показывает степень распознавания, и 3D-карты сообщают обо всех
точках, в отношении которых инструмент не уверен.
4.
Если таблица включает столбцы даты/времени, и вам надо видеть, как изменя
ются данные с течением времени, добавьте эти столбцы в раздел Время
(Time).
Добавив столбец, вы можете при необходимости использовать его раскрываю
щийся список, чтобы указать степень детализации, которую вам нужно приме
нить,
5.
-
например, использовать только год.
Воспользуйтесь оставшимися полями в разделе Данные
(Data),
чтобы указать
все дополнительные поля, которые собираетесь задействовать ,1ля визуализации
данных,
-
шаге
Например, если вы выберете гистограмму с группировкой, то для зада
1.
эти поля будут зависеть от типа визуализации, вь,иранного вами на
ния высоты столбцов станете использовать поле Высота
6.
(Height).
При желании вы можете настроить для фильтрации данных разделы Фильтры
(Filters)
и Показать значения
(Show Values) -
укажите, отображать ли нули,
отрицательные значения или пустые поля, и обновите другие параметры.
Чтобы добавить на карту круговую диаграмму, на шаге
зырьковая диаграмма (ВuЬЫе) и на шаге
1
выберите вариант Пу
(Size) и Кате
определяет категории частей круга, а
(Category). Поле Категория
поле Размер (Size) - размер каждой части. Если вы не добавите никакого значе
ния в поле Категория (Category), то поле Размер (Size) будет определять размер
5
(Category)
гория
добавьте поля Размер
каждого пузыря.
Как только вы настроите все данные, инструмент 3D-карты отобразит их на объ
емной карте в центре своего окна. Для поворота, увеличения или уменьшения кар
ты используйте мышь или имеющиеся на экране элементы управления. Если вы
заполнили раздел слоя Время
(Time),
то увидите и ползунок, с помощью которого
можно настроить показ данных за определенное время. Вы можете управлять этой
анимацией, нажав на значок часов I L
•1 над полем
Время (Time) и выбрав один из
доступных параметров, чтобы указать, отображаются ли данные на момент време
ни, накапливаются ли с течением времени или остаются неизменными, пока их не
заменят.
Глава
378
13
Если вам нужно отобразить данные на плоской карте вместо объемной, выполните
команду меню Главная
(Home)
1
Карта (Мар)
1
Плоская карта
(Flat
Мар). Вы так
же можете включить отображение подписей для страны, штата и города, выполнив
команду меню Главная
(Home)
1
Карта (Мар)
1
Подписи на карте (Мар
и применить другую тему, выполнив команду меню Главная
(Home)
Labels),
1
Сцена
(Scene) Themes (Темы).
1
При наведении указателя мыши на какую-либо точку данных, инструмент отобра
жает карточку с данными, которые соответствуют этой точке. Вы можете настроить
эти карточки, выделив одну из них и щелкнув на значке [й] в ее верхнем правом
углу.
Каждый слой описывает тип визуализации, использующий определенные данные.
Как правило, ЗD-карта или тур включают один слой. Однако вы можете создавать
более сложные модели, добавляя дополнительные слои, определяющие отдель
ные визуализации. Показать или скрыть каждый слой можно, щелкнув на его знач
ке Показать/Скрыть
(Show/Hide)
~ на панели Слой
(Layer).
Пояснение
В этом рюделе показано использование инструмента
Excel
3D-карты для изучения
географических данных и их изменения с течением времени. Этот инструмент го
раздо более совершенен, чем диаграмма Заполненная карта
ная в ртд.
(Filled
Мар), описан
12. 1.
13.13. Создаем
видео с помощью 3D-карт
Задача
У вас есть географические данные, и вы хотите использовать их для создания вир
туального тура или видео.
Решение
Предположим,
вы
воспользовались рекомендациями разд.
13. 12
и отобразили
имеющиеся у вас географические данные с помощью 3D-карты или тура. Теперь вы
можете создать видео такого тура, настроив одну или несколько сцен. Например,
создать видео, которое по очереди показывает визуализации карты, отображая
изме11ения данных с течением времени.
По умол 1 1анию инструмент 3D-карты создает сцену для визуализации, которую
вы
можете
найти на панели Редактор обзора (Tour Editor) слева от карты
13.6). Настройка сцены выполняется в диалоговом окне Параметры сце11ы (Sсепе Options), открыть которое можно, наведя курсор мыши на сцену и щелк
нув на ее значке настройки [~ или выделив сцену и выполнив команду меню
Главная (Home) Сцена (Scene) Параметры сцены (Scene Options). Воспользуй
(см. рис.
1
1
тесь здесь доступными параметрами, чтобы указать длительность сцены, приме-
Графика, спарклайны и 30-карты
379
нить эффекты и указать временной интервал, если вы добавили данные в раздел
слоя Время
30
(Time ).
Например, вы можете создать сцену продолжительностью
секунд, которая прокручивает карту и показывает построение столбцов с тече
нием времени.
Чтобы воспроизвести сцену, наведите на нее курсор мыши и щелкните на ее значке
воспроизведения.
Чтобы добавить новую сцену, выполните команду меню Главная (Ноте)
(Scene)
1
Новая сцена
(New Scene)
и выберите сцену для редактирования,
мощью параметров диалогового окна Параметры сцены
(Scene Options)
1
Сцена
-
с по
вы може
те перейти на другую часть карты, поменять уровень масштабирования, изменить
тип карты (выполнив команду меню Главная (Ноте)
карта
(Flat
1
Карта (Мар)
1
Плоская
Мар)), настроить слои, отобразив разные визуализации, и применить
различные эффекты.
Добавив и настроив каждую сцену, выполните команду меню Главная (Ноте)
Обзор
(Tour)
1
Создать видео
(Create Video),
1
чтобы создать видео при желании со
звуковым сопровождением.
Процесс создания видео сильно нагружает процессор и требует много памяти, по
этому может возникнуть ошибка Недостаточно памяти. Если это произошло, по-
••
пробуйте создать видео с более низким разрешением.
Пояснение
В этом разделе рассказано, как создавать видео
3 О-карты
или тура. Попробуйте
поэкспериментировать с доступными параметрами, чтобы увидеть, чего вы можете
добиться.
ГЛАВА
14
Анализ «что если»
Анализ «что если» предполагает использование различных значений для изучения
их влияния. Например, вам может потребоваться определить, как изменение про
центной ставки влияет на погашение кредитов, или найти самый эффективный спо
соб составления рабочего графика для вашего персонала.
В разделах этой главы представлены четыре основных вида инструментов анализа
«что если», доступные в
ев
Excel:
Таблица данных
Подбор параметра
(Scenario Manager),
(Data ТаЫе), Диспетчер сценари
(Goal Seek) и Поиск решения (Solver).
Мы рассмотрим здесь:
♦
создание таблиц результатов, показывающих воздействие одной или двух пере
менных, принимающих разные значения;
♦
♦
сохранение наборов значений в виде сценариев и переключение между ними;
поиск значений ячеек, необходимых для достижения целей, и возврат опреде
ленных результатов;
♦
решение проблем оптимизации
-
таких как максимизация прибыли с учетом
ограничений, графика персонала, распределения рабочих задач и планирования
маршрутов.
14.1. Создаем
таблицу данных с одной переменной
Задача
Вы хотите создать таблицу, показывающую, как подстановка различных значений
в одну ячейку меняет результаты вычислений по одной или нескольким формулам.
Решение
Предположим, на вашем рабочем листе рассчитывается сумма, которую вам надо
будет платить каждый месяц, если вы возьмете кредит с фиксированной процент
ной ставкой, при этом в ячейке В 1 содержится сумма кредита, в ячейке
кредита в месяцах, в ячейке
функция плт (см. разд.
10.1),
83 -
82 -
годовая процентная ставка, а в ячейке
срок
84 -
выполняющая подсчет ежемесячных платежей. Опира
ясь на эти данные, вы решили посмотреть, как изменения срока кредита повлияют
на ежемесячные платежи и общую сумму выплаты.
Вы можете решить эту задачу, создав таблицу даю1ых с одной переменной, содер
жащую диапазон ячеек, который показывает, как подстановка различных значений
Глава
382
14
в одну ячейку меняет результаты вычислений по одной или нескольким формулам.
Применительно к решаемой задаче вам надо создать таблицу данных с одной пере
менной, которая сравнивает ежемесячные платежи и общую сумму выплаты для
различных сроков кредита (рис.
1.
Определите входную ячейку
14.1 ).
Для этого:
ячейку, в которую вы будете подставлять разные
-
значения, чтобы затем увидеть результат такой подстановки. В этом примере
входной ячейкой является ячейка В2 (срок кредита в месяцах).
2.
Введите в один из столбцов значения, которые вы собираетесь использовать для
входной ячейки, оставив несколько пустых строк и столбцов с обеих сторон.
В этом примере вы вводите числа
3.
12, 24, 36
и
48
в диапазон ЕЗ:Еб.
В ячейку на одну строку выше и на один столбец правее от введенных вами зна
чений на шаге
2
введите формулу, результаты вычислений по которой вам надо
увидеть. Так, чтобы получить результаты для формулы ежемесячных платежей,
вам нужно ввести =В4 в ячейку
4.
F2.
Если вам надо увидеть результаты других формул, введите их в ячейки справа
от первой формулы. Так, чтобы дополнительно увидеть общую сумму, выпла
ченную за каждый срок кредита, вам нужно ввести =В4*В2 в ячейку
5.
G2.
Выделите диапазон ячеек, содержащих входные значения и формулы,
шем примере это диапазон
Прогноз
(Forecast)
1
E2:G2,
-
и выполните команду меню Данные
Анализ «что если»
(What-If Analysis)
1
в на
(Data)
1
Таблица данных
(Data ТаЫе).
6.
Поскольку значения для входной ячейки находятся в столбце, укажите ссылку
на входную ячейку в поле Подставлять значения по столбцам в
Cell)
открывшегося диалогового окна Таблица данных
(Data
(Column lnput
ТаЫе). Так, в на
шем примере вам нужно ввести в это поле значение $В$2.
7.
Нажмите кнопку ОК, и Ехсе\ вставит таблицу данных.
8.
По желанию добавьте заголовки и отформатируйте таблицу данных, чтобы про
яснить назначение ее столбцов.
А
CD
в
Сумма кредита
200000,00J?
1
2
Срок кредита (в месяцах)
з
Годовая ставка
4
5
6
7
Ежемесячный платеж
48
4%
-4515,81 J?
Е
F
G
Срок кредита
Ежемесячный платеж
Итого
(текущий)
12
24
36
48
Рис.
14.1.
-4 515,81 J?
-17 029,98 J?
-8 684,98 J?
-5 904,80 J?
-4 515,81 J?
н
-216 758,92 J?
-204 359, 77 J?
-208 439,63 J?
- 212 572,69 J?
-216 758,92 J?
Таблица данных с одной переменной, ориентированная на столбцы
Входная ячейка и таблица данных должны находится на одном рабочем листе,
поэтому вы не можете до~авить таблицу данных на другой рабочий лист, который
' не
содержит входную ячеику.
Анализ «что если»
383
Пояснение
В этом разделе показан способ создания таблицы данных с одной переменной, ото
бражающей, как результаты формулы меняются при подстановке различных значе
ний в одну ячейку.
Хотя вы можете достичь аналогичных результатов с помощью обычных формул
ячеек, использование таблицы данных имеет ряд преимуществ:
♦
Excel
генерирует результаты за вас, так что вам не нужно копировать формулы
в другие ячейки или беспокоиться об использовании относительных или абсо
лютных ссылок (см.разд.
2.1);
♦ случайно изменить результаты таблицы данных сложнее, поскольку «под капо
том»
Excel
создает таблицы данных с помощью функции массива ТАБЛИЦА -
функции, которую вы не можете изменить вручную и которая не позволяет
изменять часть таблицы. Однако отредактировать таблицу данных можно, вос
пользовавшись советами из разд.
14. 4;
♦ у вас есть возможность определить, будет ли таблица данных пересчитываться
автоматически (см.разд.
3.17).
Дополнение
В этом разделе создается таблица данных, ориентированная на столбец, в которой
значения входной ячейки находятся в столбце. Чтобы создать таблицу данных,
ориентированную на строку, обратитесь к разд.
14.2.
Если вам надо создать таблицу данных с двумя входными ячейками, обратитесь
кразд.
14.3.
Если вы собираетесь использовать более двух входных ячеек, подумайте о приме
нении сценариев, показанных в разд.
14.2. Создаем
14. 5.
ориентированную на строку
таблицу данных с одной переменной
Задача
Вы хотите создать таблицу данных с одной переменной, расположив значения
входной ячейки в строке.
Решение
Предположим, вам надо создать таблицу данных с одной переменной, аналогичную
созданной в разд.
в строке (рис.
1.
14.1, но чтобы
14.2). Для этого:
Определите входную ячейку
кредита в месяцах).
-
значения входной ячейки в ней были приведены
в этом примере ею является ячейка
82
(срок
384
2.
Глава
14
Введите в одну строку значения, которые собираетесь использовать для входной
ячейки, оставив несколько пустых строк и столбцов с обеих сторон. В этом при
мере вы вводите числа
3.
12, 24, 36
и
48
в диапазон
F2:l2.
В ячейку на одну строку ниже и на один столбец левее от значений, введенных
вами на шаге
2,
введите формулу, результаты которой вам надо увидеть. Так,
чтобы получить результаты для формулы ежемесячных платежей, вам нужно
ввести =В4 в ячейку ЕЗ.
4.
Если вам нужно увидеть результаты других формул, введите их в ячейки под
первой формулой. Так, чтобы дополнительно увидеть общую сумму, выплачен
ную за каждый срок кредита, вам нужно ввести =В4*В2 в ячейку Е4.
5.
-
в на
шем примере это диапазон Е2:14, и выполните команду меню Данные
Выделите диапазон ячеек, содержащих входные значения и формулы,
(Data) 1
Прогноз (Forecast)
(Data ТаЫе).
6.
1
Анализ «что если►)
(What-lf Analysis)
1
Таблица данных
Поскольку значения для входной ячейки находятся в строке, укажите ссылку на
входную ячейку в поле Подставлять значения по строкам в
открывшегося диалогового окна Таблица данных
(Data
(Row lnput
Се\1)
ТаЫе). Так, в нашем
примере вам нужно ввести в это поле значение $В$2.
7.
8.
Нажмите кнопку ОК, и Ехсе\ вставит таблицу данных.
По желанию добавьте заголовки и отформатируйте таблицу данных, чтобы про
яснить назначение ее строк.
А
1
2
3
4
5
в
сумма кред~та
Срок кредита (в месяцах)
Годова я ста в ка
Ежемесячный платеж
Рис.
14.2.
200000,001'
48
4%
-4 515,811'
с
Е
D
С рок кредита
G
(текущий)
Еже месячный платеж
-4515,8Н'
Итого
-216 758,921'
12
-17029,981'
-204 359,771'
24
-8 684,981'
-208 439,631'
н
36
-5904,801'
-2U5n,691'
48
-4515,8Н
-216758,92"
Таблица данных с одной переменной, ориентированная на строки
Пояснение
Это решение аналогично решению из разд.
14.1,
за исключением того, что здесь
значения входной ячейки приведены в строке.
14.3. Создаем
таблицу данных с двумя переменными
Задача
Вы хотите создать таблицу, показывающую, как подстановка различных значений
в две ячейки меняет результат вычислений по одной формуле.
Решение
Предположим, на вашем рабочем листе рассчитывается сумма, которую вам надо
будет платить каждый месяц, если вы возьмете кредит с фиксированной процент-
385
Анализ «что если»
ной ставкой, при этом в ячейке В 1 содержится сумма кредита, в ячейке
кредита в месяцах, в ячейке
функция плт (см.разд.
10.1),
83 -
срок
82 -
годовая процентная ставка, а в ячейке
84 -
выполняющая подсчет ежемесячных платежей. Опира
ясь на эти данные, вы решили посмотреть, как изменения срока кредита и годовой
процентной ставки повлияют на ежемесячные платежи.
Вы можете решить эту задачу, создав таблицу да1111ых с двумя переме1111ыми,
-
содержащую диапазон ячеек, который показывает, как подстановка различных зна
чений в две ячейки меняет результаты вычислений по одной формуле. Примени
тельно к решаемой задаче вам надо создать таблицу данных с двумя переменными,
которая сравнивает ежемесячные платежи для различных сроков кредита и годовых
процентных ставок (рис.
1.
14.3).
Для этого:
Определите две входные ячейки
-
ячейки, в которые вы будете подставлять
разные значения, чтобы затем увидеть результат такой подстановки. В этом
примере входными ячейками являются ячейка
и ячейка
2.
83
(срок кредита в месяцах)
82
(годовая процентная ставка).
Введите в один из столбцов значения, которые вы собираетесь использовать для
первой входной ячейки, оставив несколько пустых строк и столбцов с обеих
сторон. В этом примере вы вводите числа
3.
12, 24, 36
и
48
в диапазон Е4:Е7.
Введите в строку, начиная с ячейки на одну строку выше и на один столбец пра
вее значений, введенных вами на шаге
2,
значения, которые вы собираетесь ис
пользовать для второй входной ячейки. В этом примере вы вводите значения
2%, 4%, 6%
4.
и
8%
в диапазон
F3:l3.
В ячейку на одну строку выше введенных вами значений на шаге
столбец левее от значений, введенных вами на шаге
3,
2
и на один
введите формулу, резуль
таты которой вам надо увидеть. В этом примере вы вводите =В4 в ячейку Е3.
5.
Выделите диапазон ячеек, содержащих входные значения и формулу,
-
шем примере это диапазон ЕЗ:17, и выполните команду меню Данные
Прогноз
(Forecast)
1
Анализ «что если»
(What-lf Analysis)
1
в на
(Data)
1
Таблица данных
(Data ТаЫе).
6.
В поле Подставлять значения по строкам в
диалогового окна Таблица данных
(Data
(Row lnput Cell)
открывшегося
ТаЫе) укажите ссылку на входную
ячейку, значения которой вы ввели в строке на шаге
3.
Так, в нашем примере
вам нужно ввести в это поле значение $В$3.
7.
В поле Подставлять значения по столбцам в
окна Таблица данных
(Data
(Column lnput Cell)
диалогового
ТаЫе) укажите ссылку на входную ячейку, значе
ния которой вы ввели в столбце на шаге
2.
Так, в нашем примере вам нужно вве
сти в это поле значение $В$2.
8.
9.
Нажмите кнопку ОК, и
Excel
вставит таблицу данных.
По желанию добавьте заголовки и отформатируйте таблицу данных, чтобы про
яснить назначение ее строк и столбцов.
Глава
386
14
А
г
1
2
1Сумма
кредита
. ········-·--··-···-·
в
с
Срок кредита (в месяцах )
!с
F
-4515,811?
н
ГодоваJ1 процентнаJ1 ставка
-4515,811?
4%
Ежемесячный п латеж
G
Ежемесячный платеж
48
3 \ годовая ставка
4
о
200000, ООР
;
..
2%
4%
8%
6%
12 -16847, 771? -17029,981? -17 213,291?
-17 397,691?
<[
5
а.
""
6
о
а.
u
7 !
24
-8508,051?
-8 684,981?
-8864,121?
-9045,461?
36
-5 728,52Р
-5 904, ВОР
-6084,391?
-6267,271?
48
- 4339,02Р
- 4515 , 81Р
-4697,011?
-4882,581?
8
Рис.
14.3. Таблица
данных с двумя переменными, ориентированная на столбцы
Пояснение
В этом разделе показан способ создания таблицы данных с двумя входными ячей
ками, отображающей, как их различные значения меняют результат одной форму
лы. Таблица данных с двумя переменными похожа на таблицу данных с одной
переменной
(см.
разд.
14.1),
за исключением того, что содержит вместо одной
входной ячейки две и может включать только одну формулу.
Если вам надо увидеть, как две входные ячейки влияют на несколько формул, или
использовать более двух входных ячеек, подумайте о применении сценариев, пока
занных в разд.
14. 5.
14.4. Редактируем таблицы данных
Задача
У вас есть таблица данных с одной или двумя переменными, и вы хотите добавить,
удалить или отредактировать ее входные значения или формулы.
Решение
Предположим , что вам нужно изменить имеющуюся у вас таблицу данных с тем,
чтобы она отображала результаты для различных входных значений или формул.
Ваш подход будет зависеть от того, надо ли вам сохранить структуру и размер таб
лицы данных или добавить/удалить из нее какие-либо строки или столбцы.
Если вы решили сохранить структуру и размер таблицы данных и использовать те
же ячейки для ее входных значений и формул, то просто можете заменить в этих
ячейках значения и/или формулы. При этом, если вы, как показано в разд.
установили параметры вычислений Ехсе\ в режиме Автоматически
3.17,
(Automatic),
таблица данных автоматически обновится. Если вы этого в свое время не сделали,
то можете воспользоваться рекомендациями разд.
3.17,
чтобы вручную выполнить
перерасчет формул таблицы.
Если же вы решили добавить в таблицу данных строки и/или столбцы, чтобы она
пересчитала результаты для новых входных значений и/или формул:
Анализ «что если»
1.
387
Добавьте в таблицу данных новые входные значения и/или формулы. Например,
если у вас есть ориентированная на столбцы таблица данных с одной перемен
ной, содержащая входные значения в диапазоне ЕЗ:Еб, вам нужно будет помес
тить любые новые входные значения в ячейки Е7, Е8 и т. д.
2.
Выделите диапазон ячеек, содержащий входные значения и формулы (включая
те, что вы добавили на шаге
Прогноз
(Forecast)
1
1),
и выполните команду меню Данные
Анализ «что если»
(What-If Analysis)
1
(Data)
1
Таблица данных
(Data ТаЫе).
3.
Заполните в открывшемся диалоговом окне Таблица данных
(Data ТаЫе) поля
(Row Input Cell) и/или Подставлять зна
(Column Input Cell) - в зависимости от типа таблицы
Подставлять значения по строкам в
чения по столбцам в
данных, и нажмите кнопку ОК, чтобы обновить таблицу.
Если вам надо удалить строки и/или столбцы из таблицы данных, чтобы она пере
считала результаты для меньшего количества входных значений и/или формул:
1.
Выделите в таблице данных ячейки результатов
ТАБЛИЦА, -
и нажмите клавишу
<Del>,
-
те, что используют функцию
чтобы удалить их значения.
2.
Удалите все входные значения и/или формулы, которые вам больше не нужны.
3.
Выделите диапазон ячеек, содержащий входные значения и формулы, и выпол
ните команду меню Данные
(What-If Analysis)
4.
1
(Data)
Таблица данных
1 Прогноз (Forecast)
(Data ТаЫе).
1
Анализ «что если»
Заполните в открывшемся диалоговом окне Таблица данных
(Data ТаЫе) поля
(Row Input Cell) и/или Подставлять зна
(Column Input Cell) - в зависимости от типа таблицы
Подставлять значения по строкам в
чения по столбцам в
данных, и нажмите кнопку ОК, чтобы обновить таблицу.
•
Если вы опустите шаг
отобразит сообщение об ошибке, когда вы попытае
(Data ТаЫе) на шаге 3. Чтобы избежать этой ошибки, убедитесь, что вы сначала удалили расчетные значения таб
1, Excel
тесь открыть диалоговое окно Таблица данных
•
лицы данных.
Пояснение
В этом разделе показано, как редактировать входные значения и/или формулы таб
лицы данных для отображения различных результатов. Если вам не нужно, чтобы
ваша таблица данных сохранила свои структуру и размер и использовала те же
ячейки для входных данных и формул, то вам, как правило, потребуется заново
создать таблицу данных, поскольку редактирование части результатов таблицы
данных не допускается.
14.5. Используем диспетчер сценариев
Задача
Вы хотите научиться сохранять группы значений и подставлять их на рабочий лист,
используя различные сценарии.
388
Глава
14
Решение
Предположим, на вашем рабочем листе подсчитывается доход от выполнения ра
бочей операции, при этом в ячейке В 1 содержится почасовая оплата, в ячейке В2
количество затраченных часов, в ячейке В3
формула =ВЗ-В1 *В2,
взимаемая сумма, а в ячейке В4
-
-
выполняющая расчет дохода. Опираясь на эти данные, вы
решили посмотреть, как влияет на доход использование различных наборов поча
совой оплаты, количества часов и взимаемой суммы.
Вы можете решить эту задачу, сохранив каждый набор значений в виде сценария
группы значений, которые можно подставить в
32
-
ячейки рабочего листа, чтобы
увидеть их влияние. Так, в этом примере вы могли бы сохранить один набор значе
ний в виде лучшего сценария, другой
-
в виде худшего и т. д.
Определить сценарии можно с помощью диспетчера сценариев
1.
Выполните команду меню Данные
если»
(What-If Analysis)
1
Excel
(рис.
14.4):
(Forecast) 1 Анализ «что
(Scenario Manager) и нажмите
Добавить (Add), чтобы создать новый
(Data)
1
Прогноз
Диспетчер сценариев
в открывшемся диалоговом окне кнопку
сценарий.
А
1
2
3
4
в
Почасовая оплата
С
!Количество часов
50
Взимаемая сумма
2000
Доход
D
30
500
- - -Е -
F
н
G
?
Диспетчер сценариев
х
С~нари~
l#tBWдiЩФ
До6,йвить...
5
Удалить
б
7
~3МtНИТЬ,.,
g
О~ъtдинкть...
9
10
11
12
13
Qтчот ...
ИJ1ttеняемые ячейки: j SВS1 : SВSЗ
::::============:
05.12.2024
Примечание .
Автор изм,нtний :
:1
lб .
11 1
,еt.вести
18
19
Рис.
2.
14.4. Диалоговое
В поле Название сценария
Закрыть
окно Диспетчер сценариев
(Scenario Name)
введите имя сценария (например,
Наилучший).
3.
В поле Изменяемые ячейки
(Changing Cells)
выберите ячейки, значения кото
рых вам надо сохранить в виде сценария (в этом примере вы выбираете диапа
зон В 1:В3
-
чтобы сохранить значения почасовой оплаты, количества часов
и взимаемой суммы), и нажмите кнопку ОК.
4.
Для каждой выбранной вами на шаге
мера введите
30
3 ячейки введите значение. Для
25 в поле для ячейки В2, 2000
в поле для ячейки В 1,
этого при
в поле для
389
Анализ «что если»
ячейки В3 и нажмите кнопку ОК, чтобы сохранить сценарий. Вы также можете
5.
нажать кнопку Добавить
(Add) -
кнопку Отмена
чтобы отменить ваши изменения.
(Cancel) -
чтобы добавить еще один сценарий, или
Нажмите кнопку ОК, и Ехсе\ отобразит сохраненный сценарий в диалоговом
окне Диспетчер сценариев
(Scenario Manager).
Если вы защитили рабочий лист (см. разд.
,
•
1.8), то сможете установить флажок
(Prevent Changes), чтобы остановить редактирование сцеСкрыть (Hide), чтобы прекратить отображение сценария. Если
Запретить изменения
нария, и флажок
рабочий лист не защищен, эти параметры не применяются.
Добавив сценарий, вы сможете подставлять его значения на рабочий лист, выпол
нив команду меню Данные
lf Aпalysis)
1
(Data)
1
Диспетчер сценариев
Прогноз
(Forecast)
(Scenario Manager),
1
Анализ «что если»
выбрав в открывшемся диа
логовом окне нужный сценарий и нажав кнопку Вывести
нажать кнопку Изменить
кнопку Удалить
(Delete),
(Edit),
(What-
(Show).
Вы также можете
чтобы отредактировать значения сценария, или
чтобы удалить его.
При отображении сценария происходит подстановка его значений на рабочий лист
и замена всех уже отображенных значений. Если вам надо вернуться к исходным
значениям рабочего листа, сохраните их в виде отдельного сценария.
Ехсе\ сохраняет каждый сценарий на специальном рабочем листе, поэтому при от
крытии диспетчера сценариев вы увидите только созданные вами сценарии. Однако
вы можете добавить сценарии из другой открытой рабочей книги, воспользовав
шись решением из разд.
14. 6.
Пояснение
В этом разделе показано, как добавлять сценарии в диспетчер сценариев и отобра
жать их на рабочем листе. Обычно имеет смысл создать несколько сценариев, при
чем количество сценариев, которое вы можете сохранить, не ограничено.
Сценарии пригодятся, если вам надо увидеть влияние изменения значений ячеек
при переключении между различными наборами данных. Как и в случае с таблица
ми данных (см. разд.
14.1
и
14.3),
вы указываете, какие ячейки могут меняться,
и значения, которые собираетесь в них подставить. Однако, в отличие от таблиц
данных, сценарий может сохранять значения
32
изменяющихся
ячеек (вместо
одной или двух), и вы можете увидеть их влияние на любую формулу.
Дополнение
Если вам надо скопировать сценарий одного рабочего листа на другой, обратитесь
к разд.
14.6.
Вы также можете воспользоваться рекомендациями разд.
14. 7,
чтобы
сгенерировать сводный отчет или сводную таблицу сценариев рабочего листа.
390
1
Глава
14
14.6. Объединяем
сценарии
Задача
Вы хотите скопировать сценарии с одного рабочего листа на другой.
Решение
Предположим, вы создали на своем рабочем листе сценарии (см. разд.
14.5),
и вам
надо скопировать их на другой рабочий лист. Вы можете это сделать, объединив
сценарии:
1.
Откройте рабочую книгу, из которой вам нужно скопировать сценарии.
2.
Перейдите на тот рабочий лист, куда вам надо скопировать сценарии, и выпол
ните команду меню Данные
(What-If Analysis)
3.
1
(Data)
1
Проrноз
Диспетчер сценариев
(Forecast) 1 Анализ
(Scenario Manager).
Нажмите в открывшемся диалоговом окне кнопку Объединить
«что если»
(Merge ),
выбе
рите рабочую книгу и рабочий лист, откуда вам нужно скопировать сценарии,
и нажмите кнопку ОК
-
Excel
скопирует все сценарии на текущий рабочий
лист, включая названия каждого из них, изменения значений ячеек и информа
цию о том, кто их создал.
При объединении сценариев убедитесь, что структура ячеек на обоих рабочих лис
тах одинакова, и используйте все изменяющиеся ячейки для одной и той же цели.
Например, если рабочий лист содержит в ячейке
81
значения почасовой оплаты,
в ячейке 82 - количество часов, а в ячейке 83 - взимаемую сумму, то соответствующие ячейки другого рабочего листа также должны быть организованы сходным
образом.
Пояснение
В этом разделе показано, как быстро объединить сценарии из разных рабочих лис
тов и рабочих книг. Это пригодится, если вам, к примеру, нужно собрать и объеди
нить сценарии других членов команды или департаментов.
Дополнение
Если вам надо увидеть, кто создал каждый сценарий, сгенерируйте краткий отчет
сводной таблицы (см.разд.
14.7. Генерируем
14. 7).
сводки сценариев
Задача
Вы хотите сгенерировать отчет о сценариях рабочего листа, содержащий, напри
мер, значения измененяемых ячеек каждого из них, результаты вычислений и ин
формацию о том, кто их создал.
Анализ «что если»
391
Решение
Инструмент Диспетчер сценариев
(Scenario Manager)
(см. разд.
14.5)
может гене
рировать два типа отчетов: структурную сводку по сценариям (см.разд.
2.17),
ото
бражающую значения измененяемых ячеек и результаты каждого сценария, и свод
ную таблицу (см. главу 11), позволяющую отфильтровать результаты по авторам
сценариев . Чтобы сгенерировать такие отчеты:
1.
Откройте диспетчер сценариев, выполнив команду меню Данные
гноз (Forecast) 1 Анализ
(Scenario Manager).
2.
Нажав кнопку Отчет
«что если»
(Summary),
(What-If Analysis)
1
(Data)
1
Про
Диспетчер сценариев
откройте диалоговое окно Отчет по сценарию
(Scenario Summary).
3.
Выберите в этом окне тип отчета. Сравнение значений изменяемых ячеек и ре
зультатов вычислений
summary),
по
ним обеспечивает параметр Структура
нария и дающей возможность отфильтровать ее по авторам сценариев,
метр Сводная таблица
4.
(Scenario
а создание сводной таблицы, отображающей результаты каждого сце
В поле Результат
-
пара
(Scenario PivotTaЬ\e report).
(Result Cel\s)
выберите все ячейки формул, результаты кото
рых нужно увидеть в сводке, и нажмите кнопку ОК.
14.5 показан отчет, который генерирует инструмент Диспетчер сцена
риев (Scenario Manager) при выборе параметра Структура (Scenario summary).
На рисунке
Структура сценария
~е~
уц11е эначею1я
$В$1 1
30
$В$2
25
$В$3
2000
Наи.-,,чшщ1
НаИJt.','ДШИЙ
Прогнозир)емый
30
25
2000
45
50
35
30
2000
2000
Результат:
$0$11
Примечания: столбец ''Текущие значения" представляет значения изменяемых ячеек в
момент создания Итогового отчета по Сценарию . Изменяемые ячейки для каждого
сценария выделены серым цветом .
Рис.
14.5.
Сводный отчет по сценариям, сгенерированный инструментом Диспетчер сценариев
Вы можете улучшить вид отчетов, генерируемых инструментом Диспетчер сцена
риев (Scenario Manager), указав названия всех ячеек, которые собираетесь ото
бразить (см. разд. 2.6), - тогда Диспетчер сценариев (Scenario Manager) будет
показывать в отчете названия ячеек вместо ссылок на них.
Пояснение
В этом разделе показано, как использовать инструмент Диспетчер сценариев
(Scenario Manager) для
создания отчетов по сценариям . Как правило, сводный отчет
Глава
392
14
по сценарию выводит такие же результаты, что и при использовании таблицы дан
ных, в то время как отчет в виде сводной таблицы удобно использовать, если вам
надо отфильтровать его по авторам сценариев.
Поскольку сводный отчет по сценарию выводится в виде структуры, вы можете
использовать расположенные слева кнопки В и ~ для отображения или скрытия
деталей
-
например, скрыть значения изменяемых ячеек.
14.8. Используем
инструмент Подбор параметра
Задача
Вы хотите выяснить, каким должно быть значение входной ячейки, чтобы в зави
симую ячейку формулы возвращался определенный результат.
Решение
Предположим, на вашем рабочем листе подсчитывается доход от выполнения ра
бочей операции, при этом в ячейке В 1 содержится почасовая оплата, в ячейке
количество затраченных часов, в ячейке
взимаемая сумма, а в ячейке
83 -
82 84 -
формула =ВЗ-Вl *В2, выполняющая расчет дохода. Если почасовая оплата составляет
300 Р,
а взимаемая сумма
-
30
ООО Р, вам надо узнать, сколько часов потребуется
для достижения точки безубыточности.
Вы можете решить эту задачу с помощью инструмента подбора параметров
-
рассчитывающего значение, которое вам необходимо ввести во входную ячейку,
чтобы достичь определенного результата в зависимой ячейке формулы. В рассмат
риваемом примере вы можете использовать этот инструмент для нахождения зна
чения, которое должно быть в ячейке
84
82
(входная ячейка), чтобы значение в ячейке
(зависимая ячейка формулы) было равно О.
Чтобы воспользоваться подбором параметров (рис.
1.
Выполните команду меню Данные
если»
(What-If Analysis)
Почасовая оплата
2
3
Взимаемая сумма
4
Доход
Количество часов
~1
8
(Data)
1
Подбор параметра
в
А
1
5
1
с
14.6):
Прогноз
(Forecast)
(Goal Seek).
D
Е
F
G
1
Анализ «что
н
300
С]
30000
30000
?
Подбор параметра
Установить в вчейк~
SBS4
Зна~ение,:
о
,Мз'1ен.яя значение ячейки:
SBS~
ок
х
~1
--,
1~1
От•tена
9
10
Рис.
14.6.
Использование инструмента Подбор параметра для поиска количества часов,
необходимого для достижения точки безубыточности
Анализ «что если»
2.
В поле Установить в ячейке
параметра
это ячейка
3.
В поле Значение (То
формулы,
4.
(Goal Seek)
84.
(Set cell)
открывшегося диалогового окна Подбор
вставьте ссылку на ячейку формулы
value)
в нашем примере
-
введите значение, которое должно быть в ячейке
в нашем примере это значение О.
-
В поле Изменяя значение ячейки (Ву
ную ячейку
1 393
-
changing cell) вставьте ссылку
82, и нажмите кнопку ОК.
на вход-
в нашем примере это ячейка
Далее инструмент Подбор параметра
(Goal Seek)
выполнит серию итераций для
поиска решения, начиная с текущего значения входной ячейки, и откроет диалого
вое окно Результат подбора параметра
информирующее вас
(Goal Seek Status),
о ходе выполнения задачи. Когда инструмент Подбор параметра
(Goal Seek) най
4, отобразит
дет решение, он обновит значение входной ячейки, указанной на шаге
в этом диалоговом окне подбираемое и текущее значение ячейки формулы и сооб
щит вам, было ли найдено решение .
Так, решая задачу нашего примера, инструмент Подбор параметра
вставит
100
в ячейку
82
для количества часов, поскольку это значение подразуме
вает, что значение в ячейке
84
(доход) будет равно О (рис.
___о___
А
1
Почасовая оплата
2
Количество часов
3
Взимаемая сумма
4
доход
б
с
D
Е
14.7).
н
G
F
300
~
30000
о
5
(Goal Seek)
?
Реаультат подбора параметра
Подбор параметра для ячейки
х
64.
Р•wени, найд,но .
Подбир••••ое ,нач,ние:
о
Текущее 3начение:
о
7
1[
8
ок
"··11
Отмена
9
Рис.
14.7.
Решение, найденное инструментом Подбор параметра
Нажмите кнопку ОК, чтобы принять новое значение входной ячейки, или Отмена
(Cancel),
чтобы вернуться к ее исходному значению.
В зависимости от формулы инструмент Подбор параметра
(Goal Seek)
может вер
нуть приблизительное решение, которое вам может понадобиться уточнить. Вы
можете решить эту проблему, изменив точность инструмента Подбор параметра
(Goal Seek). Если вы работаете в Excel для Windows, выполните команду меню
Файл (File) 1 Параметры (Options) 1 Формулы (Formulas) и измените установку на
нужную в поле Относительная погрешность (Maximum Change). Если же вы ра
ботаете в Excel для macOS, то найдете эту опцию, выполнив команду меню Excel 1
Параметры (Preferences) 1 Вычисления (Calculations).
Если инструмент Подбор параметра
(Goal Seek)
не сможет найти решение, он ото
бразит в диалоговом окне Результат подбора параметра
(Goal Seek Status)
бли
жайшее найденное им значение. Если вы уверены, что решение все же существует,
попробуйте выполнить одно из следующих действий:
394
1
Глава
14
♦ измените значение во входной ячейке.
Поскольку инструмент Подбор параметра
(Goa\ Seek)
начинает итерацию со
значения входной ячейки, изменение ее значения меняет позицию, с которой
начинается итерация. Это может помочь, если формула в формульной ячейке
описывает функцию, не являющуюся непрерывной, или отображает ошибку для
конкретного значения входной ячейки
-
например, #ДЕЛ/О
1
(см.разд
14.1 О);
♦ увеличьте максимальное число итераций.
Если вы работаете в Ехсе\ для
Windows,
то можете увеличить продолжитель
ность поиска инструмента Подбор параметра
(Goa\ Seek), выполнив команду
меню Файл (File) 1 Параметры (Options) 1 Формулы (Formulas) и увеличив зна
чение в поле Предельное число итераций (Maximum Iterations). Если же вы ра
ботаете в Ехсе\ для macOS, то найдете эту опцию, выполнив команду меню
Excel I Параметры (Preferences) 1 Вычисления (Calculations);
♦
разрешите все циклические ссылки (см.разд.
3.19).
Инструмент Подбор параметра
может не работать должным обра
(Goal Seek)
зом, если какие-либо циклические ссылки включают ячейку формулы (или ячей
ки, от которых она зависит).
Пояснение
В этом разделе показано, как использовать инструмент Подбор параметра
Seek) для достижения
(Goal
ваших целей и желаемого результата.
В некоторых отношениях инструмент Подбор параметра
(Goal Seek) является
- вместо ото
полной противоположностью таблице данных с одной переменной
бражения результата для набора значений входной ячейки он вычисляет значение,
которое должно быть во входной ячейке, чтобы получить определенный результат.
Дополнение
Инструмент Подбор параметра
(Goal Seek)
может возвращать только одно реше
ние за раз. Если ваша формула может выдать несколько решений, обратитесь
кразд.
14.9.
Инструмент Подбор параметра
(Goal Seek)
может найти точные совпадения для
одной входной ячейки. Если вам надо минимизировать или максимизировать ячей
ку формулы, или у вас есть несколько входных ячеек, попробуйте вместо него при
менить инструмент Поиск решения
14.9. Находим
(Solver),
как показано в разд.
14.12.
несколько решений
с помощью подбора параметра
Задача
Вы хотите использовать инструмент Подбор параметра
несколько решений задачи.
(Goal Seek),
чтобы найти
Анализ «что если»
1
395
Решение
Предположим, что ячейка В 1 содержит формулу =Al л2 , и вам надо определить, ка
кие должны быть значения в ячейке А 1, чтобы ячейка В
У этой задачи есть два решения:
бор параметра
(Goal Seek)
7
и
-7 .
I
вернула
49.
Вы можете использовать инструмент Под
для нахождения каждого из них, подставляя различные
исходные значения в ячейку А 1, а затем, выполняя шаги из разд.
Подбор параметра
(Goal Seek)
нию решение . Так, если в ячейку А I поместить значение
приблизительно равное
7,
-7
В
А
1 (10
10,
__ ]=д1"2
инструмент
то вернется решение,
а если в ячейку А I поместить значение
решение, приблизительно равное
14.8,
будет возвращать ближайшее к исходному значе
(рис .
-10,
то вернется
14.8).
Е
о
с
?
Подбор nараме-тра
х
2
Устаноsить в ачейке :
SBS1
4
Зна~ение :
49
5
!1_3~1еняя Jначение ячейки:
SAS1
з
б
ок
7
8
Отмена
9
Рис.
14.8.
Подстановка исходного значения
10
во входную ячейку
для нахождения первого решения
Как правило, подставляя различные исходные значения, можно с помощью инст
румента Подбор параметра
(Goal Seek)
найти несколько решений задачи.
Пояснение
Инструмент Подбор параметра
(Goal Seek)
может вернуть только одно решение
за раз , однако изменение исходного значения входной ячейки может привести
к появлению нескольких решений . При этом решения , возвращаемые инструмен
том, зависят от конкретной формулы, для которой вы ищете решение.
14.10. Находим
решение формулы,
описывающей функцию, имеющую разрывы,
с помощью подбора параметра
Задача
Вы хотите использовать инструмент Подбор параметра
(Goal Seek),
решение для формулы, описывающей функцию, имеющую разрывы.
чтобы найти
Глава
396
14
Решение
Предположим, в ячейке В
чение ячейки А
1,
содержится формула =1/Al, и вам надо определить зна
I
возвращающее
0,25,
и ее же значение, возвращающее
формула описывает функцию, имеющую разрыв,
Excel
-0,25.
Эта
если значение ячейки А I равно О,
-
не может вычислить =1/0 и возвращает ошибку в значении #ДЕЛ/О
1
(рис.
14.9).
20
1-5
-3
1
1
_,.._
'-1
5
3
11:
20
1/Al
Рис.
14.9.
График функции, имеющей разрыв, если значение А1 равно О
Если у вас есть формула, описывающая функцию с одним или несколькими разры
вами, поиск ее решения с помощью инструмента Подбор параметра
окажется
затруднительным,
поскольку он,
как
правило,
не
может
(Goa\ Seek)
пересекать
раз
рывы. Однако обойти эту проблему можно, попробовав различные исходные зна
чения для обеих сторон каждого разрыва, как это делалось в разд.
если вы подставите в ячейку А
I
исходное значение
I О,
14. 9.
Например,
инструмент Подбор пара
метра
(Goal Seek) сможет найти значение ячейки А 1, при котором значение ячейки
0,25 (решение равно 4 ), но не найдет значения, при котором значение
ячейки В I равно -0,25. Аналогично, если вы подставите в ячейку А 1 исходное зна
чение -1 О, инструмент Подбор параметра (Goal Seek) сможет найти значение
ячейки А 1, при котором значение ячейки В I равно -0,25 (решение равно -4 ), но не
найдет значения, при котором значение ячейки В I равно 0,25 (рис. 14.1 О).
В I равно
А
1
2
Еш.::
В
:1=1/Al
с
?
Установить в J!Чейке:
SBS1
4
Зна~ение :
-0,2.5
5
Изменяя значение ячейки~
SAS1
3
6
ок
7
Рис.
14.10.
Е
D
Подбор параметра
Подсrановка исходного значения
х
!
!
Отмена
-1 О
позволяет найти решение,
при котором значение ячейки В1 равно
-0,25
Если вы попытаетесь в этом примере подставить для входной ячейки исходное
значение О, это приведет к ошибке, и инструмент Подбор параметра
(Goal Seek)
вместо того, чтобы искать решение, вернет сообщение «Формула в ячейке должна
возвращать число». Вы можете исправить это, изменив значение во входной ячейке так, чтобы ячейка формулы возвращала число.
Анализ «что если»
1
397
Пояснение
Поиск решений для формул, описывающих функцию с разрывами, может оказаться
сложным, потому что инструмент Подбор параметра
(Goa\ Seek)
не может вычис
лять или пересекать эти разрывы. В этом разделе показано, как решить такую про
блему, пробуя различные значения на обеих сторонах каждого разрыва.
14.11. Устанавливаем
надстройку Поиск решения
Задача
У вас есть задача, сложность решения которой превосходит возможности инстру
мента Подбор параметра
(Goa\ Seek),
и вы хотите установить инструмент, кото
рый поможет вам ее решить.
Решение
Решать сложные задачи позволяет надстройка Поиск решения
(Solver).
Как только
она будет активирована, вы сможете можете получить доступ к ней, выполнив
команду меню Данные
(Data) 1 (Analyze)
1
Поиск решения
Чтобы активировать надстройку Поиск решения
перейдите в раздел Параметры
1.
В меню Файл
2.
Выберите пункт Надстройки
3.
(File)
В поле Управление
(Solver)
4.
(Manage),
(Solver)
для
Windows:
(Options).
находящемся в нижней части открывшегося диа
Excel (Excel add-ins)
и нажмите
(Go).
В открывшейся панели Надстройки
ния
Excel
(Add-ins).
логового окна, выберите вариант Надстройки
кнопку Перейти
в
(Solver).
(Add-ins)
установите флажок Поиск реше-
и нажмите кнопку ОК.
(Solver) в Excel для macOS, выполни
(Tools) 1 Надстройки Excel (Excel add-ins), в открыв
Надстройки (Add-ins) установите флажок Поиск решения (Solver)
Чтобы загрузить надстройку Поиск решения
те команду меню Сервис
шейся панели
и нажмите кнопку ОК.
Пояснение
Надстройка Поиск решения
(Solver)
представляет собой мощный инструмент оп
тимизации, способный решить более сложные задачи, чем инструмент Подбор па
раметра
(Goal Seek), -
например, задачи с несколькими входными ячейками или
задачи, в которых требуется минимизировать или максимизировать ячейку форму
лы согласно указанным ограничениям. Конкретные примеры использования над
стройки Поиск решения
(Solver)
приведены в разд.
14.12
и последующих.
Глава
398
14
14.12. Решаем
с помощью надстройки Поиск решения
проблемы оптимизации
Задача
Вы хотите узнать, как можно с помощью надстройки Поиск решения
(Solver)
решить проблему оптимизации.
Решение
Предположим, ваше предприятие выпускает три продукта, для производства кото
рых требуется определенное количество рабочих часов, и вам надо определить,
сколько единиц каждого продукта требуется изготовить, чтобы максимизировать
свой доход в условиях, когда у вас имеются ограничения по рабочей силе, нужно
удовлетворить спрос по каждому продукту и вы можете производить только опре
деленное общее количество единиц продукта.
Чтобы решить эту задачу с помощью надстройки Поиск решения
необходимо смоделировать задачу на рабочем листе (рис.
14.11 ).
дукта, а в диапазоне
сначала
Здесь в диапазоне
А2:А4 приведены названия каждого продукта, в диапазоне В2:В4
трудозатраты на единицу продукта, в диапазоне С2:С4
(Solver),
необходимые
-
доход на единицу про
-
минимальное количество продукта, которое необхо
D2:D4 -
димо произвести.
_,,
А
1
2
с
Доход
D
Е
затраты на
на
Мин. К· ВО
единицу
единицу
единиц
Продукт
А
в
Тру до-
1
К-во единиц
F
G
Общие
валовый
трудозатраты
б
20
б
б
=В2•Е2
доход
=С2*Е2
З
Б
7
25
4
9,ЗЗЗЗЗЗЗЗЗЗЗЗЗЗ
=ВЗ*ЕЗ
=СЗ•ЕЗ
4
В
4
15
10
24,бббббббббббб7 =В4*Е4
=С4*Е4
Итоrо:
=СУММ(Е2:Е4)
=CYMM(G2:G4)
5
=CYMM(F2:F4)
б
Макс.
7
Макс. Единиц
8
40
Рис.
14.11.
Трудозатрат
200
Модель, используемая для определения количества единиц продукта,
которое необходимо изготовить
В столбцах Е,
Fи G
ка Поиск решения
показан вариант модели, которую должна вычислить надстрой
(Solver):
в диапазоне Е2:Е4 приведено количество единиц каж
дого продукта, которое необходимо изготовить, в диапазоне
требуемые общие трудозатраты, в диапазоне
в строке
5-
сумма столбцов Е,
F
и
G.
G2:G4 -
F2:F4
вычисляются
требуемый валовый доход,
И наконец, в ячейке Е8 показано макси
мальное количество единиц продукта, которое вы можете изготовить, а в ячейке
F8 -
максимальные трудозатраты.
Модель включает три компонента, которые надстройка Поиск решения
будет использовать для решения задачи:
(Solver)
Анализ «что если»
♦
399
целевая ячейка, которую вам надо максимизировать, минимизировать или при
своить ей значение.
Здесь это ячейка
♦
GS,
где максимизируется валовый доход;
одна или несколько входных или изменяемых ячеек.
Здесь это диапазон Е2:Е4
♦
количество единиц продукта;
-
ограничения.
В этом примере количество единиц продукта (Е2:Е4) должно быть больше или
равно минимальному количеству изготовляемых единиц продукта
(D2:D4),
об
щее число единиц продукта (Е5) должно быть меньше или равно максимальному
количеству единиц продукта (Е8), а общие трудозатраты
меньше или равны максимальным трудозатратам
(FS)
должны быть
(F8).
Смоделировав задачу, вы можете решить ее с помощью надстройки Поиск реше
ния
1.
(Solver):
Выполните команду меню Данные
(Solver), чтобы открыть
Parameters), показанное
(Data)
1
Анализ
(Analyze)
1
Поиск решения
диалоговое окно Параметры поиска решения
(Solver
14.12. Если в разделе Анализ (Analyze)
решения (Solver), обратитесь к разд. 14.11,
на рис.
найдете варианта Поиск
вы не
чтобы
узнать, как его активировать.
2.
В поле Оптимизировать целевую функцию
(Set Objective)
выберите целевую
ячейку, которую вам надо максимизировать, минимизировать или присвоить ей
значение,
3.
в этом примере вы должны выбрать ячейку
-
G5
(валовый доход).
Выберите в параметре До (То) доступный вариант: Макс. (Мах), Мин.
или Значения
(Value Ot) -
в зависимости от цели, установленной на
(Min)
шаге 2.
В этом примере вы должны выбрать вариант Макс. (Мах), чтобы максимизиро
вать валовый доход (ячейка
4.
G5).
В поле Изменяя ячейки переменных (Ву
Changing
VariaЫe
Cells)
выберите
входные или изменяемые ячейки, для которых надстройка Поиск решения
(Solver)
должна будет найти значения. В этом примере вы должны выбрать диа
пазон Е2:Е4.
5.
В поле В соответствии с ограничениями
(Subject to the Constraints)
добавьте
требуемые ограничения:
•
(Add), в поле
(Cell Reference) открывшегося диалогового окна Добав
ление ограничения (Add Constraint) выберите диапазон Е2:Е4, в раскры
вающемся списке выберите знак >=, а в поле Ограничение (Constraint) диапазон D2:D4. Затем нажмите кнопку Добавить (Add), чтобы добавить
чтобы добавить первое ограничение, нажмите кнопку Добавить
Ссылка на ячейки
следующее ограничение;
•
чтобы добавить второе ограничение, в поле Ссылка на ячейки
ference)
выберите ячейку Е5, в раскрывающемся списке выберите знак<=, а
в поле Ограничение
вить
(Cell Re-
(Add),
(Constraint) -
ячейку Е8. Затем нажмите кнопку Доба
чтобы добавить следующее ограничение;
Глава
400
14
х
Параметры поиска решения
Опти•tизировать целеВ)lю функцию :
SGS5
@ Максиму" О Мини••У
До:
О J_начения:
о
Изменяя ячейки переменных:
SES2:SES4
В ~оответствии с ограничениями :
SES2:SES4 > = SDS2:SDS4
SES5 < = SES8
SFS5 < = SFS8
~бавить
И3мениrь
}:'Аалить
Сбросить
J_агрузитЬ/сохранить
0
Сделать переме,t!_ные без ограничений неотрицательными
ВЫберите
Поиск решен~1я пин. 3-д ач сиL1nлекс-~1rто о"
Параметры
r.,етод решения :
Метод решения
Для г.nадких нелинейных задач используйте по~tск решения нелинейных 3адач методом
ОПГ, ДIIЯ линейных 3адач - поиск решения линейных ,адач сиа.1плекс-методом, а Д/IА
нer.nt1AKИX Jадач - эволюционный поиск решения .
Найти решение
Справка
Рис .
14.12.
Закрыть
Параметры, необходимые, чтобы надстройка Поиск решения
(Solver)
решила задачу оптимизации
•
чтобы добавить последнее ограничение , в поле Ссылка на ячейки
(Cell
FS, в раскрывающемся списке выберите знак<=,
а в поле Ограничение (Constraint) ячейку F8. Затем нажмите кнопку ОК,
чтобы закрыть диалоговое окно Добавление ограничения (Add Constraint) и
вернуться в диалоговое окно Параметры поиска решения (Solver Paraшeters ).
Reference)
6.
выберите ячейку
У становите флажок Сделать переменные без ограничений неотрицательны
ми
(Make Unconstrained
VariaЫes
Non-Negative) -
это гарантирует, что значе
ния во всех изменяемых ячейках (диапазон, который вы ввели на шаге
4)
будут
больше или равны О.
7.
Из
раскрывающегося
Method)
выберите
(Siшplex
LP),
( см .
списка
метод
Выберите
Поиск
метод
решения
лин.
решения
задач
(Select
а
Solving
симплекс-методом
который применяется для решения задач линейной оптимизации
далее разд.
« Пояс11енuе »).
Завершив в диалоговом окне Параметры поиска решения
(Solver Paratneters) вы
(Solve ), запускаю-
бор подходящих параметров , нажмите кнопку Найти решение
Анализ «что если»
щую процесс решения задачи. Надстройка Поиск решения
решения
(рис.
и,
если
найдет его,
обновит
изменяемые
(Solver)
ячейки
на
401
начнет поиск
рабочем
листе
14.13 ).
А
1
Продукт
в
с
Трудо-
Доход
Е
D
F
G
Валовый
затраты на
на
Мин. к-во
К-во
Общие
единицу
единицу
единиц
единиц
трудозатраты
доход
2
А
6
20
6
6
36
ио
з
Б
7
25
4
9,ЗЗЗЗЗ
б5,ЗЗ3ЗЗЗЗЗ
233,3333
4
в
4
15
10
24,6667
98,66666667
370
40
200
723,3333
Итого:
5
б
7
Макс.
Макс.
Единиц
Трудозатрат
40
8
Рис.
14.13.
200
В решении задачи оптимизации надстройка Поиск решения обновила диапазон ячеек Е2:Е4,
рассчитав, что максимальный валовый доход, удовлетворяющий ограничениям, будет равен
В этом примере надстройка Поиск решения
(Solver)
723,3
возвращает в изменяемые
ячейки числа в виде десятичных дробей. В случае необходимости вы можете огра
ничить
их
(см. разд.
значения
до
целых
чисел,
добавив
дополнительное
ограничение
14.13).
ты поиска решения
Надстройка Поиск решения
(Solver) также отображает диалоговое окно Результа
(Solver Results), сообщая нам, было ли найдено допустимое
решение (рис.
Чтобы принять решение и сохранить обновленные значения,
14.14).
х
Рвул ьтаты поиска решения
Решение найдено. Все ограничения и условия
~еты
оптимальности выполнены .
Результаты
Устойчи&ость
Пределы
О ~ста~а&итьис.ходнЬ4:езна ениЯ:
О ВернуП,f.Я в диалоговое окно параметров
поиска решения
О Отчеты f.O структурами
сохранить сценарий 1
Оrмена
Решение найдено. Вое ограничения и условия оnти.мальносrи выполнены.
Если 1tсполь3уется модуль ОПГ, то найдено по крайней мере лок;,льно оптимальное решею1е . Если
испольJуется модуль поиска решений линейных Jадач симплекс-методом, то на1iдено глобально
оптимальное решен11е.
Рис.
14.14. Диалоговое
окно Результаты поиска решения
Глава
402
14
выберите пункт Сохранить найденное решение (Кеер
Solver Solution) и нажмите
(Cancel) или
(Restore Original Values) и на
кнопку ОК. Чтобы отказаться от решения, нажмите кнопку Отмена
выберите пункт Восстановить исходные значения
жмите кнопку ОК.
Пояснение
В этом разделе показано, как использовать надстройку Поиск решения
(Solver)
для
решения задачи линейной оптимизации, в которой необходимо максимизировать
значение ячейки с учетом имеющихся ограничений. Сначала вы разрабатываете на
рабочем листе модель, описывающую задачу, которую вам необходимо решить,
и содержащую целевую ячейку, одну или несколько изменяемых ячеек и все огра
ничения, которые вам нужно учесть. А затем запускаете надстройку Поиск реше
ния
(Solver),
выполняющую поиск оптимальных значений изменяемых ячеек, не
обходимых для достижения поставленной цели.
Этот пример основан на использовании си.wплекс-метода решения задач линейной
onmu.wuзaцuu
(Simplex LP).
Метод предусматривает расчет значений целевой ячей
ки с учетом имеющихся ограничений путем умножения значения изменяемой ячей
ки на константу и суммирования результатов. Так, в приведенном примере целевая
ячейка
это валовый доход, который рассчитывается путем умножения каждой
-
изменяемой ячейки на доход за единицу продукта и суммирования полученных
результатов. Аналогичным образом ограничение общих трудозатрат относится
к ячейке, которая умножает каждую изменяемую ячейку на трудозатраты на едини
цу продукта и также суммирует результаты. Еще ряд примеров использования это
го метода для решения линейных задач вы найдете в разд.
14.13
и
14.14.
Если вам надо решить задачу, в которой целевая ячейка или ограничение нелиней
ные, используйте поиск решения нелинейных задач методом ОПГ
(GRG Nonlinear).
Этот метод выбирают для решения задач, включающих ежедневные математи
ческие операции, такие как перемножение изменяющихся ячеек или возведение их
в степень.
Если у вас есть задача, в которой целевая ячейка или ограничение могут внезапно
измениться,
-
например,
вследствие того,
что они используют функции Если,
СУММЕсли, АВS или МАКС, то вы можете использовать эво.1юционный поиск решения
(Evolutionary).
Это наиболее гибкий метод поиска решения, способный решать
широкий круг задач. Однако он гораздо медленнее, чем поиск решения линейных
задач
методом
ОПГ.
Примеры использования этих методов поиска решения вы найдете в разд.
14. 15
и
симплекс-методом
или
поиск решения
нелинейных задач
14.16.
Не произойдет ничего страшного, если вы выберете неподходящий метод для ре
шения той или иной задачи,
-
надстройка Поиск решения
говом окне Результаты поиска решения
(Solver) в своем диало
(Solver Results) выведет сообщение,
информирующее вас об этом, после чего вы можете попробовать вновь решить
задачу с помощью другого метода поиска решений.
Анализ «что если»
1
403
Дополнение
Вы можете задать для надстройки Поиск решения
(Solver)
параметры, используе
мые по умолчанию, чтобы изменить точность вычислений, ограничить время про
гона, и многие другие (см.разд.
14.13. Используем
14.19).
в надстройке Поиск решения
ограничение «только целые числа»
Задача
Вы хотите с помощью надстройки Поиск решения
(Solver)
решить задачу, в кото
рой значения в изменяемых ячейках должны быть целыми числами.
Решение
Предположим, ваша компания управляет оптовым магазином, открытым семь дней
в неделю. Все сотрудники заняты на полный рабочий день в течение пяти кален
дарных дней каждый, и вам надо определить минимальное количество сотрудни
ков, необходимое для поддержания ежедневного минимального покрытия, и режи
мы их работы. Решить эту задачу можно с помощью надстройки Поиск решения
(Solver),
использовав ограничение целое число
-
ограничение, которое заставляет
изменяющиеся ячейки принимать целые значения.
Сначала вы разрабатываете на рабочем листе модель, которая включает следующие
параметры:
♦
целевую ячейку.
В этом примере вам нужно определить минимальное число сотрудников, поэто
му в модель следует включить ячейку, которая подсчитывает их общее коли
чество;
♦
изменяемые ячейки.
Вам надо найти число сотрудников для каждого режима работы: число тех, кто
работает с понедельника по пятницу, со вторника по субботу, со среды по вос
кресенье и т. д., поэтому в модель следует включить ячейки, позволяющие это
записать;
♦
ограничения.
В каждый день число сотрудников оптового магазина должно быть больше или
равно минимальному покрытию для этого дня. Более того, число сотрудников
с каждым режимом работы должно быть целым, поскольку все сотрудники
работают полный рабочий день.
На рис
14.15
приведена модель для этой задачи, где в диапазоне
83 :89 показаны
- дни, в кото
дни начала каждого возможного режима работы, в диапазоне СЗ: 19
рые занят сотрудник с каждым режимом работы (значение
тает в этот день, О
-
что не работает), в диапазоне С 1О: 11 О
1 означает, что он рабо
- минимальное покры-
Глава
404
14
тие, необходимое для каждого дня, в диапазоне
количество сотрудников,
L3:L9 -
работающих по каждому режиму (это изменяемые ячейки, которые все без исклю
чения должны быть целыми числами), в ячейке
рассчитывается общее число
Ll0
сотрудников (целевая ячейка, которую необходимо минимизировать), а в диапазоне
С 11:111 используется функция СУММПРоизв, обеспечивающая подсчет общего покры
тия для каждого дня (чтобы использовать его в качестве ограничения).
в
А
с
Е
D
-
F
н
G
1
к
J
Режим работы
1
2
'°
4
..i!i
:z:
б
8с
Сотрудники
о
о
1
1
о
о
1
о
о
1
1
о
о
20
25
15
1
1
1
1
1
10
о
1
1
1
1
Ср
1
Вт
о
1
1
о
о
1
1
1
1
1
о
о
1
1
1
1
1
20
1
1
1
21
о
о
1
1
18
Чт
8
~ Пт
с:;[ Сб
9
Вс
10
Мин. покрытие
11
Общее покрытие =СУММПРОИЗВ($1.$3: $l$9;СЗ :С9)
7
Сб
о
Вт
1
:;i Ср
5
Пт
1
Пн
Пн
Чт
о
о
о
о
Итого =CYMM(LЗ:L9)
=CYr-1 =CYr-1 =CYr-1 =CYr-1 =CYr-1 =CYr-1
12
Рис.
14.15.
Модель, используемая для составления графика работы сотрудников
Смоделировав задачу, вы можете решить ее с помощью надстройки Поиск реше
ния
1.
(Solver):
Выполните команду меню Данные
(Data)
(Solver), чтобы открыть диалоговое окно
Parameters), показанное на рис. 14.16.
2.
1
Анализ
L I О (общее
В поле Изменяя ячейки переменных (Ву
диапазон
5.
Поиск решения
(Set Objective)
(Solver
выберите целевую
число сотрудников).
11, параметре До (То) выберите вариант Минимум
4.
1
Параметры поиска решения
В поле Оптимизировать целевую функцию
ячейку
(Analyze)
(Min).
Changing
VariaЬ\e
Cells)
выберите
L3:L9.
В поле В соответствии с ограничениями
(Subject to the Constraints)
добавьте
требуемые ограничения:
•
чтобы добавить первое ограничение, нажмите кнопку Добавить
(Add), в поле
Reference) открывшегося диалогового окна Добав
ление ограничения (Add Constraint) выберите диапазон С 1:111, в раскры
вающемся списке выберите знак >=, а в поле Ограничение (Constraint) диапазон С 10:11 О. Затем нажмите кнопку Добавить (Add), чтобы добавить
Ссылка на ячейки (Се\\
следующее ограничение;
•
для второго ограничения в поле Ссылка на ячейки (Се\\
диапазон
L3:L9,
Reference) выберите
- этим вы
L3:L9 должны быть целые значения, и Excel авто
этого диапазона в поле Ограничение (Constraint)
а в раскрывающемся списке параметр целое
укажете, что в диапазоне
матически поместит для
значение целое. Затем нажмите кнопку ОК, чтобы закрыть диалоговое окно
Анализ «что если»
Добавление ограничения
(Add Constraint) и вернуться
(Solver Parameters).
405
в диалоговое окно
Параметры поиска решения
6.
У становите флажок Сделать переменные без ограничений неотрицательны
ми
VariaЫes
(Make Unconstrained
Non-Negative) -
это гарантирует, что значе
ния во всех изменяемых ячейках будут больше или равны О.
7.
Из раскрывающегося списка Выберите метод решения
hod)
(Select
а
Solving Met(Simplex
выберите метод Поиск решения лин. задач симплекс-методом
LP).
8.
Нажмите кнопку Параметры
(Options),
на вкладке Все методы
(AII Methods)
(Options) (см. разд. 14.19) сбросьте
значения (lgnore lnteger Constraints)
открывшегося диалогового окна Параметры
флажок Игнорировать целочисленные
и нажмите кнопку ОК.
Завершив в диалоговом окне Параметры поиска решения
(Solver Parameters) вы
(Solve), запускаю-
бор подходящих параметров, нажмите кнопку Найти решение
х
Параметры поиска решения
Оптимизировать ц,пе1111ю функцию :
О Максищ••
До :
@ Мини"у
SLS10
О ;lначения:
о
И3Ltеняя ячейки nереt.,енных:
SLSЗ : SLS9
В fоответствии с ограничения•tи :
SCS11 :SIS11 >= SCS10:SIS10
SLS3:SLS9 = целое
д06авить
И3•1fНИ!Ь
Удалить
Сбросить
Jаrру,итt,/сохранить
0
Сделать переме,tlные бе3 ограничений неотрицательны1о1и
1Поиск
выберите
решения лин. 3адач симплекс-методом
Парам,тры
метод реш,ния:
Метод решения
Дnя гладких нелинейных м1дач используйте поиск решения нелинейных щач 1.tетодом
ОПГ, для линейных задач - поиск решения ли н ейных задач симплекс-.,етодом, а для
негладких 1адач - эволюционный поиск решения.
Справка
Рис.
14.16.
Найти решение
Закрыть
Параметры, необходимые, чтобы диалоговое окно Параметры поиска решения
решило задачу составления графика работы сотрудников
Глава
406
14
щую процесс решения задачи. Надстройка Поиск решения
решения
(рис.
и,
если
найдет его,
обновит изменяемые
(Solver)
ячейки
начнет поиск
на рабочем листе
14.17).
А
D
с
в
F
Е
G
I J
Н
к
м
L
Режим работы
1
Вт
Пн
2
з
,.
4
~
5
i!i:z:
б
.
J:,
7 1
ер
Чт
Пт
Сб
Вс
Сотрудники
1
1
1
1
1
1
о
о
11
о
1
1
1
о
5
Ср
о
о
1
Чт
1
1
о
о
1
1
1
1
1
1
1
1
4
1
о
о
1
1
1
4
1
1
1
1
о
о
1
1
о
о
1
1
о
21
21
18
20
21
25
15
25
15
Пн
1
Вт
:z: Пт
8 1 c:t
Сб
1
9
Вс
10
Мин. покрытие
1
20
11
Общее покрытие
20
18
10
10
1
1
Итоrо
26
12
Рис.
14.17.
В решении задачи составления графика работы сотрудников надстройка Поиск решения
обновила диапазон ячеек LЗ:L9, рассчитав, что минимальное число сотрудников равно
26
Пояснение
В этом разделе на примере задачи составления графика работы сотрудников пока
зано, как ограничить изменяемые ячейки надстройки Поиск решения
(Solver)
до
целых значений. Ключевым моментом здесь является установка для изменяющихся
ячеек второго ограничения на шаге
5.
Дополнение
Если вам надо ограничить значения ячеек до О или
а если
кразд.
нужно,
чтобы
все
значения
1,
обратитесь к разд.
ячеек были разными
целыми
14.14,
-
числами,
14.15.
14.14. Используем
в в надстройке Поиск решения
ограничение «только двоичные>>
Задача
Вы хотите с помощью надстройки Поиск решения
(Solver)
решить проблему, ко
торая заключается в необходимости иметь в изменяемых ячейках значения О или
1.
Решение
Предположим, у вас есть три задачи и три сотрудника, и вам нужно каждому из них
поручить одну задачу, причем для выполнения каждой задачи требуется один чело
век. Сотрудники выполняют каждую задачу в разном темпе, и вам требуется опре
делить, кого из сотрудников выделить для каждой задачи, минимизируя при этом
Анализ «что если»
407
общие затраты. Решить эту проблему можно с помощью надстройки Поиск реше
ния
использовав двоичное ограничение
(Solver),
ограничение, которое заставля
-
ет изменяемые ячейки принимать двоичные значения: О или
1.
Сначала вы разрабатываете на рабочем листе модель, которая включает следующие
параметры:
♦
целевую ячейку.
Она покажет общие затраты, которые вам нужно минимизировать;
♦
изменяемые ячейки.
В них надо записать, какую задачу поручить каждому сотруднику;
♦
ограничения.
Каждому сотруднику должна быть поручена одна задача, а каждая задача долж
на быть поручена одному сотруднику (таким образом, задача может быть пору
чена каждому сотруднику либо
На рис.
14.18
1, либо
О раз).
приведена модель, решающая эту проблему, где в диапазоне СЗ :ES
показаны затраты на каждого сотрудника, работающего над задачей, в диапазоне
IЗ:КЗ
сотрудники, выделенные для каждой задачи (изменяемые ячейки), в диа
-
пазоне LЗ:LS
число задач, которое должно быть у каждого сотрудника, в диапа
-
зоне МЗ:МS рассчитывается общее число задач каждого сотрудника, в диапазоне
16:Кб указано число сотрудников, необходимое для выполнения каждой задачи, а
в диапазоне 17:К7 вычисляется число сотрудников, выделенное для каждой задачи.
И наконец, в ячейке
подсчитываются общие затраты
19
-
это целевая ячейка, кото
рая должна быть минимизирована.
А
в
с
Е
о
f
н
G
1
Экви вал е нт Итого
1
Выделено
1
2
3
А
15 40 20
1
А
о
о
о
1
=СУММ(IЗ : КЗ )
~Б
30 20 10
~Б
о
о
о
1
=СУММ( 14 :К4)
8 Выделено
1
=СУММ( 15:К5}
1
2
3
>
!i:
о.
а в
о
о
о
б
Э квивалент
1
1
1
7
Итоrо
=СУММ(IЗ : 15) =CYMM(JЗ:JS)
Общие затраты
=СУММПРОИЗВ( С3 : Е5; 1 3: К5}
5
м
l
задача
Затра ты
2
3
4
к
J
задача
1
25 30 25
=СУММ(КЗ :КS)
8
9
10
Рис.
14.18.
Модель, используемая для распределения задач
Смоделировав задачу, вы можете решить ее с помощью надстройки Поиск реше
ния
1.
(Solver):
Выполните команду меню Данные
(Data)
(Solver), чтобы открыть диалоговое окно
Parameters ), показанное на рис. 14.19.
2.
1
Анализ
19
(общие затраты).
1
Поиск решения
Параметры поиска решения
В поле Оптимизировать целевую функцию
ячейку
(Analyze)
(Set Objective)
(Solver
выберите целевую
Глава
408
14
х
Параметры поиска решения
Оптимюировать целеВ)lю функцию :
О Максиму••
До :
@ Миниму
s1s91
О Jначения :
о
Изменяя ячейки переt..н~нных:
SISЗ: SКSS
В fоответствии с оrраничения"1и:
SISЗ: SКSS
=
бинарное
-----------~
добавить
SISб:SKSб
SLSЗ : SLSS
SMSЗ:SMSS
SIS7:SKS7 =
=
Измениrь
~алить
Сбросить
JаrрузитЬ/сохранить
Б2] Сделать переме!J_НЫе без ограничений неотрицательными
Выберите
Поиск решения лин. задач си"1nлекс-"1етодом
В
Параметры
••етод решения;
Метод решения
Для гладких нелинейных задач используйте поиск решения нелинейных задач •1етодо•1
ОПГ, для линейных задач - поиск решения линейных задач си 1плекс-•1етодо•1, а для
негладких задач - эволюционный поиск решения .
Справка
Рис.
3.
4.
14.19.
Закрыть
Параметры, необходимые, чтобы диалоговое окно Параметры поиска решения
решило проблему распределения задач
В параметре До (То) выберите вариант Минимум
В поле Изменяя ячейки переменных (Ву
диапазон
5.
Найти решение
(Min).
Changing
VагiаЬ\е
Cells)
выберите
13:KS.
В поле В соответствии с ограничениями
(Subject to the Constraints)
добавьте
требуемые ограничения:
•
чтобы добавить первое ограничение, нажмите кнопку Добавить
(Add),
в поле
(Cell Reference) открывшегося диалогового окна Добав
(Add Constraint) выберите диапазон 17:К7, в раскрываю
диапазон
знак =, а в поле Ограничение (Constraint) списке Затем нажмите кнопку Добавить (Add), чтобы добавить следующее
Ссылка на ячейки
ление ограничения
щемся
16:Кб.
ограничение;
•
для второго ограничения в поле Ссылка на ячейки
(Cell Reference)
выберите
диапазон МЗ:М5 , в раскрывающемся списке- знак=, а в поле Ограничение
Анализ «что если»
(Constraint)-
диапазон
Затем нажмите кнопку Добавить
L3:L5.
409
(Add),
что
бы добавить следующее ограничение;
для третьего ограничения в поле Ссылка на ячейки
•
те диапазон 13:К5, а в раскрывающемся списке
-
(Cell Reference)
выбери
параметр бинарное
этим вы укажете, что ячейки диапазона 13:К5 должны быть двоичными (т. е.
их значения могут быть либо О, либо
1), и Ехсе\ автоматически поместит для
(Constraint) значение бинарное. Затем
этого диапазона в поле Ограничение
нажмите кнопку ОК, чтобы закрыть диалоговое окно Добавление ограни
чения
(Add Constraint) и вернуться
решения (Solver Parameters).
6.
в диалоговое окно Параметры поиска
У становите флажок Сделать переменные без ограничений неотрицательны
ми
(Make Unconstrained
VariaЬ\es
это гарантирует, что значе
Non-Negative) -
ния во всех изменяемых ячейках будут больше или равны О.
7.
Из
раскрывающегося
Method) выберите
(Simplex LP).
8.
списка
метод
Выберите
Поиск
Нажмите кнопку Параметры
метод
решения
(Options),
решения
лин.
задач
а
(Select
Solving
симплекс-методом
на вкладке Все методы (А\\
Methods)
(Options) (см. разд. 14.19) сбросьте
значения (lgnore lnteger Constraints)
открывшегося диалогового окна Параметры
флажок Игнорировать целочисленные
и нажмите кнопку ОК.
Завершив в диалоговом окне Параметры поиска решения
(Solver Parameters)
выбор подходящих параметров, нажмите кнопку Найти решею1с (Solve), запус
кающую процесс решения задачи. Надстройка Поиск решения (Solver) начнет по
иск решения и, если найдет его, обновит изменяемые ячейки на рабочем листе
(рис.
14.20).
А
в
с
F G
Е
D
н
Задача
1
2
Затраты
1
2
З Эквивалент
А
1
о
о
1
~Б
о
о
1
11,
2
3
А
40
20
i
~Б
~
30
20
10
i
4
8в
>
Итого
1
1
i,
а.
25
25
!;
u
Выделено
о
1
о
б
Эквивалент
Итого
1
1·
1
7
1
1·
5
N
м
L
Выделено
1
15
3
к
J
Задача
30
1
1
1
8
Общие затраты
9
55
10
Рис.
14.20.
В решении проблемы распределения задач надстройка Поиск решения
обновила диапазон ячеек 13:К5, рассчитав, что минимальные общие затраты составят
55
Пояснение
В этом разделе на примере решения проблемы распределения задач показано, как
ограничить изменяемые ячейки надстройки Поиск решения
(Solver)
до двоичных
Глава
410
14
значений . Приведенное решение работает аналогично решению из разд.
исключением того, что изменяемая ячейка ограничена значениями О и
за
14.14,
1.
с помощью надстройки Поиск решения
14.15. Создаем
изменяемые ячейки с разными значениями
Задача
Вы хотите с помощью надстройки Поиск решения
(Solver)
решить задачу, в кото
рой все изменяемые ячейки должны принимать разные целочисленные значения .
Решение
Пред положим , ваша компания должна доставить товары в пять городов, и вам надо
определить последовательность их доставки в эти города (и возврата в исходный
город) , чтобы минимизировать общий пройденный путь.
Этот тип задачи называется задачей коммивояжера, и вы можете решить ее с по
мощью надстройки Поиск решения
(Solver),
используя ограничение все разные
-
01 раничение, которое заставляет изменяемые ячейки принимать уникальные целые
значения.
Снача. 1а вы разрабатываете на рабочем листе модель, которая включает следующие
параметры:
целевую ячейку .
♦
Она покажет общее расстояние, которое вам нужно минимизировать;
изменяемые ячейки .
♦
В них надо записать последовательность посещения городов;
ограничение .
♦
У каждой изменяемой ячейки должно быть разное целое значение.
На рис.
14.21
приведена модель для этой задачи, где в диапазоне АЗ :А 7 все города
пронумерованы от
диапазон
13:17
до
в диапазоне
5,
C3:G7
показаны расстояния между ними,
подготовлен для записи номеров городов в том порядке, в котором
с
в
А
1
Е
D
____t___,_
G
f
Порядок досrавки в города
Название
Расстояние , км
197
=ИНДЕКС{ ВЗ:В7;13}
=ИНДЕКС(СЗ:G7;13;17}
=ИНДЕКС(СЗ:G7;14;1З}
М осква Тула
Владимир
Калуга Рязань
Москва
о
183
198
185
2.
3 1
к
1
Ра сстояния между городами
1
NO
4
2.
Тула
183
о
369
197
1П
"=индЕКС(ВЗ:В7;14}
5
3
Владимир
198
369
о
382.
2.32.
=ИНДЕКС(ВЗ:В7;15}
=ИНДЕКС(СЗ:G7;15;14}
6 4
Калуга
185
107
382
о
2.81
=ИНДЕКС(В3:В7;1б}
=ИНДЕКС(СЗ:G7;1б;l5}
7 5
Рязань
197
177
232
281
о
=ИНДЕКС(ВЗ:В7;17}
=ИНДЕКС(СЗ:G7;17;1б/
Общее расстояние =СУММ(К3 : К7)
8
9
Рис.
14.21 . Модель ,
используемая для определения порядка городов
~
411
Анализ «что если»
их необходимо посетить (изменяемые ячейки), в диапазоне JЗ:Л используется
функция индЕКС, выполняющая поиск названия города, в диапазоне
J3:K7 -
функ
ция индЕкс, обеспечивающая поиск расстояния между текущим городом и преды
дущим, а в ячейке К8 вычисляется общее расстояние
это целевая ячейка, кото
-
рая должна быть минимизирована.
Смоделировав задачу, вы можете решить ее с помощью надстройки Поиск реше
ния
1.
(Solver):
Выполните команду меню Данные (Data) Анализ (Analyze)
(Solver), чтобы открыть диалоговое окно Параметры поиска
Parameters ), показанное на рис. 14.22.
1
1
Поиск решения
решения
х
Параметры поиска решения
Оnтими,ировать целевую функцию :
до:
О Максимум
@
(Solver
Мини•,у
l_sкs.al
О J_начения:
Изменяя ячейки nере"енных:
~
SIS7
В ~оответствии с оrраничения•1и:
SISЗ: SIS7: Все разные
"
ДО6аsить
Измени1ь
}'Аалить
Сбросить
J_аrру,ить/сохранить
52]
Сделать nереме);!ные бе, ограничений неотрицательными
Выберите
(isолюционный поиск решения
V
Параметры
метод решения:
Метод решения
Для гладких нелинейных ,адач исnолЬ3уйте поиск решения нелинейных :.адач •1етодо••
ОПГ, для линейных з.адач - поиск решения линейных задач симплекс-1,етодом, а дпя
негладких ,адач • эволюционный поиск решения .
Справка
Рис.
14.22.
Найти решение
Закрыть
Параметры, необходимые, чтобы диалоговое окно Параметры поиска решения
решило задачу установления последовательности посещения городов
2.
В поле Оптимизировать целевую функцию
(Set Objective)
ячейку К8 (общее расстояние).
3.
В параметре До (То) выберите вариант Минимум
(Min).
выберите целевую
412
4.
Глава
В поле Изменяя ячейки переменных (Ву
диапазон
5.
14
Changing
VariaЬ\e
выберите
Cells)
13:17.
В поле В соответствии с ограничениями
(Subject to the Constraints) добавьте
(Add), в поле
требуемое ограничение, для чего нажмите кнопку Добавить
Ссылка на ячейки
(Cell Reference) открывшегося диалогового окна Добавле
(Add Constraint) выберите диапазон 13:17, а в раскрывающемся
списке параметр раз этим вы укажете, что ячейки диапазона 13: 17 должны
быть разными целыми числами, и Excel автоматически поместит для этого диа
пазона в поле Ограничение (Constraint) значение Все разные. Затем нажмите
кнопку ОК, чтобы закрыть диалоговое окно Добавление ограничения (Add
Constraint) и вернуться в диалоговое окно Параметры поиска решения (Solver
Parameters ).
ние ограничения
6.
Установите флажок Сделать переменные без ограничений неотрицательны
ми
(Make Unconstrained
VariaЬ\es
это гарантирует, что значе
Non-Negative) -
ния во всех изменяемых ячейках будут больше или равны О.
7.
Из
раскрывающегося
списка
Выберите
метод
решения
выберите метод Эволюционный поиск решения
Method)
(Select а Solving
(Evolutionary), по
скольку целевая ячейка зависит от значений, вычисляемых с помощью функции
ИНДЕКС.
8.
Нажмите кнопку Параметры
(Options),
на вкладке Все методы
(AII Methods)
(Options) (см. разд. 14. 19) сбросьте
значения (lgnore Integer Constraints)
открывшегося диалогового окна Параметры
флажок Игнорировать целочисленные
и нажмите кнопку ОК.
Завершив в диалоговом окне Параметры поиска решения
(Solver Parameters) вы
бор подходящих параметров, нажмите кнопку Найти решение (Solve ), запускаю
щую процесс решения задачи. Надстройка Поиск решения (Solver) начнет поиск
решения,
(рис.
и, если
найдет его,
обновит
изменяемые
ячейки
на рабочем листе
14.23).
А
В
D
с
F
Е
G
М осква
2
Тул а
Владимир
Калуга
(
1 1
Рассrояния между городами
1
Порядок досrавки в города
No
Рязань
Название
Расстоянне,км
о
183
198
185
197
4
Калуга
107
Тула
183
о
369
197
1П
1
Москва
185
3
Владимир
198
369
о
382
232
3
Владимир
198
б
4
Калуга
185
107
382
о
21!1
5
Рязань
232
7
5
Рязань
197
1П
232
21!1
о
2
Тула
lП
Общее рассrояние
899
З
1
Москва
4
2
5
8
9
Рис.
14.23. Для
решения задачи оптимальной последовательности надстройка Поиск решения
обновила ячейки
13:17,
рассчитав, что минимальное общее расстояние будет равно
899
Пояснение
В этом разделе на примере решения задачи оптимальной последовательности пока
зано, как ограничить изменяемые ячейки надстройки Поиск решения
(Solver)
Анализ «что если»
1
413
с тем, чтобы они принимали разные значения. Этот вариант пригодится, если вам
нужно
решить
задачу
упорядочивания
или
установления
последовательности
каких-либо данных.
14.16. Решаем
с помощью надстройки Поиск решения
проблему разрывов функции
Задача
У вас есть формула, описывающая функцию с одним или несколькими разрывами,
и вы хотите узнать, как решить эту проблему с помощью надстройки Поиск реше
ния
(Solver).
Решение
Предположим,
в разд.
14.1 О,
в ячейке
BI
содержится формула =1/Al, которая, как показано
описывает функцию, имеющую разрыв, если значение ячейки А 1
равно О. Вам же надо найти значение ячейки А 1, для которого значение ячейки В 1
равно
0,25.
Решить эту задачу можно, используя эволюционный поиск решения надстройки
Поиск решения
1.
2.
Выполните команду меню Данные (Data) / Анализ (Analyze)
(Solver), чтобы открыть диалоговое окно Параметры поиска
Parameters), показанное на рис. 14.24.
В поле Оптимизировать целевую функцию
ячейку
3.
Bl
решения
(Solver
выберите целевую
(Value Of)
и введите в поле
0,25.
В поле Изменяя ячейки переменных (Ву
ячейку
5.
(Set Objective)
Поиск решения
1
(формула).
В параметре До (То) выберите вариант Значения
значение
4.
(Solver):
Changing
VariaЫe
Cells)
выберите
Al.
В поле В соответствии с ограничениями
(Subject to the Constraints) добавьте
(Add), в поле
требуемое ограничение, для чего нажмите кнопку Добавить
Ссылка на ячейки
(Cell Reference) открывшегося диалогового окна Добавле
ние ограничения (Add Constraint) выберите ячейку А 1, в раскрывающемся спи
ске - знак<=, а в поле Ограничение (Constraint) введите значение 10 - этим
вы ограничите значения, которые будет пробовать эволюционный поиск реше
ния, чтобы он работал быстрее. Затем нажмите кнопку ОК, чтобы закрыть диа
логовое окно Добавление ограничения
вое окно Параметры поиска решения
6.
(Add Constraint) и
(Solver Parameters ).
вернуться в диалого
У становите флажок Сделать переменные без ограничений неотрицательны
ми
(Make Unconstrained
VariaЫes
Non-Negative),
значения, которые будет пробовать метод.
чтобы еще больше ограничить
Глава
414
14
х
Параметры поиска решения
Оптимизировать цепе81fю функцию:
До:
О Максимум
О Миниму
[sвs1I
@ 2начения:
И3~tеняя ячейки переменных:
В 1оответствии с ограничениями:
SAS1 <=10
ДО.бавить
Сбросить
;}агру3итЬ/сохранить
0
]
Сде11ать переме11ные 6е3 огран1,1чений неотрицате11ьным1,1
ВЫберите
[эволюционн~ск реw ;;;;;--
метод решения:
Метод решения
{JJ!я гладких нелинейных 3адач исполЬ3Уйте поиск решения нелинейных 3адач методом
ОПГ, для линейных 3адач - поиск решения линейных 5адач симплекс-методом, а для
негладких 5адач - ,волюционный поиск решения.
Справка
Рис.
14.24.
\
Найти решение 1 1
Закрыть
]
Параметры, необходимые, чтобы диалоговое окно Параметры поиска решения
решило разрывную формулу
7.
Из
раскрывающегося
Method)
списка Выберите
метод
решения
выберите метод Эволюционный поиск решения
(Select а Solving
(Evolutionary).
Завершив в диалоговом окне Параметры поиска решения
(Solver Parameters) вы
(Solve ), запускаю
решения (Solver) начнет поиск
бор подходящих параметров, нажмите кнопку Найти решение
щую процесс решения задачи. Надстройка Поиск
решения и, если найдет его, обновит изменяемую ячейку на рабочем листе, присво
ив ей (для нашего примера) значение, приблизительно равное
4.
Пояснение
В этом разделе показано, как решить задачу с разрывами функции с помощью эво
люционного поиска решения надстройки Поиск решения
примера из разд.
14.1 О,
(Solver).
В отличие от
здесь не имеет значения, является ли разрывной функция,
описываемая формулой в исходном значении изменяемой ячейки, поскольку эво
люционный поиск решения автоматически пробует различные отправные точки.
Поэтому он также может в поисках решений пересекать разрывы.
Анализ «что если»
1
415
Установка флажка Сделать переменные без ограничений неотрицательными
(Make Unconstrained VariaЫes Non-Negative) исключает проверку надстройкой По
иск решения (Solver) отрицательных значений ячейки Al. Но если вам надо, чтобы
надстройка Поиск решения (Solver) проверяла отрицательные значения (например,
чтобы она нашла значение ячейки А 1, при котором значение ячейки В I рав
но -0,25), вы должны снять этот флажок и добавить дополнительное ограничение,
указывающее нижнюю границу, например, Al >= -10.
Обычно при использовании эволюционного поиска решения рекомендуется огра
ничивать диапазон, в котором осуществляется поиск, поскольку это помогает мето
ду работать быстрее, и вам может потребоваться настроить эти ограничения, если
надстройка Поиск решения
(Solver)
не может найти допустимое решение.
Если вам не нужно включать верхние или нижние ограничения, нажмите в диало
говом окне Параметры поиска решения (Solver Parameters) кнопку Параметры
(Options),
перейдите на вкладку Эволюционный поиск решения
и сбросьте флажок Обязательные границы переменных
VariaЫes) (см. разд.
14.19).
(Evolutionary)
(Require Bounds оп
Учтите только, что это действие приведет к увеличению
времени поиска решения.
14.17. Находим
с помощью надстройки Поиск решения
несколько решений
Задача
Вы хотите использовать надстройку Поиск решения
чтобы найти не
(Solver),
сколько решений задачи.
Решение
Предположим, в ячейке В 1 содержится формула =Al л2, и вам надо определить, ка
кими должны быть значения ячейки А 1, чтобы ячейка В 1 возвращала значение
В разд.
14. 9
49.
показано, как для решения такой задачи использовать инструмент
Подбор параметра
(Goal Seek),
пробуя в изменяемой ячейке различные исходные
значения, и вы можете применить аналогичный подход, чтобы решить эту задачу
с помощью надстройки Поиск решения
вами метода решения надстройка Поиск
(Solver), - в зависимости от выбранного
решения (Solver) будет возвращать реше
ние, наиболее близкое к каждому исходному значению.
Чтобы найти первое решение:
1.
Введите в ячейку А 1 значение
2.
Выполните команду меню Данные (Data) Анализ (Analyze)
(Solver), чтобы открыть диалоговое окно Параметры поиска
Parameters), показанное на рис. 14.25.
3.
10.
1
В поле Оптимизировать целевую функцию
ячейку В 1 (формула).
(Set Objective)
1
Поиск решения
решения
(Solver
выберите целевую
416
Глава
14
х
Параметры поиска решения
Опти"изировать целеВJi:Ю функц>1ю :
О Максимум
До :
О Миниму
sвs,
@ Jначения:
49
И1меняя ячейки переменных:
SAS1
В fоотвептвии с ограничениями :
Дg_бавить
Сбросить
Jагр)'3ить/сохранить
О Сделать пере,а1еt!.ные 6е3 ограничений неотр"1цательны•1и
Выберите
Поиск решен и.я нелинейных задач •1етодо1.-1 ОПГ v
Параметры
••етод решения:
Метод решения
Дllя гладких нелинейных задач используйте поиск решения нелинейных щач ыетодоы
ОПГ, для линейных задач - поиск решения линейных ~адач симплекс-•,етодо.,, а для
негладких задач - эволюционный поиск решения.
Найти решение
Справка
Рис.
14.25.
Закрыть
Параметры, необходимые, чтобы диалоговое окно Параметры поиска решения
нашло первое решение
4.
В параметре До (То) выберите вариант Значения
значение
5.
В поле Изменяя ячейки переменных (Ву
ячейку А
6.
(Yalue Of)
Changing
УагiаЫе
выберите
Сбросьте флажок Сделать переменные без ограничений неотрицательными
Из
раскрывающегося
списка
Выберите
метод
вам не нужно ограничи
решения
Method) выберите метод Поиск решения нелинейных
(GRG Nonlinear), поскольку формула в ячейке В I гладкая,
8.
Cells)
1.
(Make Unconstrained VariaЫes Non-Negative), поскольку
вать ячейку А I до нуля или положительных значений.
7.
и введите в поле
49.
(Select
а
Solving
задач методом ОПГ
но не линейная.
(Options), в открывшемся диалоговом окне Пара
(Options) выберите вкладку Поиск решения нелинейных задач мето
дом ОПГ (GRG Nonlinear), убедитесь, что снят флажок Использовать не
сколько начальных точек (Use Multistart), и закройте диалоговое окно Пара
метры (Options).
Нажмите кнопку Параметры
метры
Анализ «что если»
9.
1
417
Завершив в диалоговом окне Параметры поиска решения
(So\ver Parameters)
(Solve ), запус
решения (So\ver) начнет
выбор подходящих параметров, нажмите кнопку Найти решение
кающую процесс решения задачи. Надстройка Поиск
поиск решения и, если найдет его, обновит изменяемую ячейку на рабочем лис
те, присвоив ей (для нашего примера) значение, приблизительно равное
7.
Чтобы найти второе решение:
1.
2.
Введите в ячейку А
I значение -10.
Выполните команду меню Данные
(Solver) и в
Parameters)
(Data)
1
Анализ
(Analyze)
1
Поиск решения
открывшемся диалоговом окне Параметры поиска решения
нажмите кнопку Найти решение
решения задачи. Надстройка Поиск решения
(Solve),
(Solver)
(Solver
запускающую процесс
начнет поиск решения
и, если найдет его, обновит изменяемую ячейку на рабочем листе, присвоив ей
(для нашего примера) значение, приблизительно равное
-7.
При этом вам не
нужно менять никакие параметры, потому что надстройка Поиск решения
(Solver)
автоматически сохранит последний набор.
Пояснение
В этом разделе показано, как с помощью надстройки Поиск решения
(Solver)
решать задачи, имеющие несколько решений, применив ее вместо инструмента
Подбор параметра
(Goal Seek).
Обычно надстройка Поиск решения
(Solver)
воз
вращает ближайший к исходному значению изменяемой ячейки результат, поэтому
вы можете попробовать различные значения, чтобы найти все допустимые решения.
14.18. Находим
с помощью надстройки Поиск решения
глобальный минимум или максимум функции
Задача
У вас есть формула, описывающая нелинейную функцию, и вы хотите найти значе
ния изменяемых ячеек, которые ее минимизируют или максимизируют.
Решение
Предположим, в ячейке В
I
содержится формула =б*Аl лз+4*А1 л2-7*А1+10, и вам надо
найти значение ячейки А 1 между
ки
2
и
-2,
которое максимизирует значение ячей
81.
Решение подобных задач глобальной оптимизации
-
вопрос достаточно сложный,
поскольку графики некоторых функций могут иметь значения как глобальных, так
и локальных минимумов и максимумов, и надстройка Поиск решения
(Solver)
мо
жет вернуть одно из локальных значений вместо глобального. Например, если
в ячейке А 1 содержится исходное значение, равное О, то максимизация значения
ячейки В 1 с помощью установленных по умолчанию параметров поиска решения
нелинейных задач методом ОПГ вернет значение ячейки А
1,
приблизительно рав-
Глава
418
14
6* А1"3
+ 4 *A1"2-7*Al + 10
Глобальный максимум
Локальный максимум ~
~---Глобальный минимум
~
Локальный минимум
2
Рис.
ное
-0,88
14.26. Диаграмма,
отображающая локальные и глобальные минимумы и максимумы
(локальный максимум) вместо
ного диапазона), как и показано на рис.
2 (глобальный
14.26.
максимум в рамках указан
Более надежный способ решения таких задач заключается в использовании версии
поиска решения нелинейных задач методом ОПГ, исследующей несколько началь
ных точек. Этот метод пробует различные исходные значения для всех изменяемых
ячеек (в нашем примере это ячейка
Al),
прежде чем остановиться на каком-либо
значении, поэтому глобальное оптимальное решение будет найдено с большей ве
роятностью.
Следующие шаги демонстрируют, как решить задачу с помощью этого метода:
1.
Выполните команду меню Данные
(Solver), чтобы
Parameters ).
2.
(Data)
1
Анализ
В поле Оптимизировать целевую функцию
ячейку
Bl
(Analyze)
(Set Objective)
В параметре До (То) выберите вариант Максимум (Мах).
4.
В поле Изменяя ячейки переменных (Ву
5.
Поиск решения
(Solver
выберите целевую
(формула).
3.
ячейку
1
открыть диалоговое окно Параметры поиска решения
Changing
VariaЫe
Cells)
выберите
Al.
В поле В соответствии с ограничениями
(Subject to the Constraints)
добавьте
требуемые ограничения:
•
чтобы добавить первое ограничение, нажмите кнопку Добавить
(Add), в поле
(Cell Reference) открывшегося диалогового окна Добав
ление ограничения (Add Constraint) выберите ячейку Al, в раскрывающемся
списке- знак<=, а в поле Ограничение (Constraint) введите значение 2. За
тем нажмите кнопку Добавить (Add), чтобы добавить следующее ограни
Ссылка на ячейки
чение;
•
для второго ограничения в поле Ссылка на ячейки
ячейку А 1, в раскрывающемся списке
(Constraint)
введите значение
-2.
-
знак
(Cell Reference) выберите
>=, а в поле Ограничение
Затем нажмите кнопку ОК, чтобы закрыть
диалоговое окно Добавление ограничения
(Add Constraint) и вернуться
(Solver Parameters).
в диалоговое окно Параметры поиска решения
Анализ «что если»
6.
Из
раскрывающегося
списка
Выберите
метод
вам не нужно ограничи
решения
Method) выберите метод Поиск решения нелинейных
(GRG Nonlinear), поскольку формула в ячейке Bl гладкая,
8.
419
Сбросьте флажок Сделать переменные без ограничений неотрицательными
(Make Unconstrained VariaЫes Non-Negative), поскольку
вать ячейку А 1 до нуля или положительных значений.
7.
1
(Select
а
Solving
задач методом ОIП'
но не линейная.
Нажмите кнопку Параметры
(Options), в открывшемся диалоговом окне Пара
(Options) выберите вкладку Поиск решения нелинейных задач мето
дом ОIП' (GRG Nonlinear), установите флажок Использовать несколько
начальных точек (Use Multistart) и закройте диалоговое окно Параметры
(Options).
метры
9.
Завершив в диалоговом окне Параметры поиска решения
(Solver Parameters)
(Solve ), запус
решения (Solver) начнет
выбор подходящих параметров, нажмите кнопку Найти решение
кающую процесс решения задачи. Надстройка Поиск
поиск решения и, если найдет его, обновит изменяемую ячейку на рабочем лис
те, присвоив ей (для нашего примера) значение, приблизительно равное 2.
Пояснение
В этом разделе показано, как решить задачу глобальной оптимизации с помощью
версии поиска решения нелинейных задач методом ОПГ, исследующей несколько
начальных точек. Этот метод с наибольшей вероятностью найдет глобальное опти
мальное решение.
14.19. Настаиваем
параметры надстройки Поиск решения
Задача
Вы хотите настроить используемые по умолчанию параметры надстройки Поиск
решения
(Solver),
такие как установление временнь1х пределов или изменение точ
ности.
Решение
Настроить параметры надстройки Поиск решения
(Solver) можно на вкладках диа
(Options), для открытия которого выполните команду
меню Данные (Data) 1 Анализ (Analyze) 1 Поиск решения (Solver) и в открывшем
ся диалоговом окне Параметры поиска решения (Solver Parameters) нажмите
кнопку Параметры (Options).
логового окна Параметры
Вкладка Все методы
♦
(All Methods)
Точность ограничения
включает следующие параметры:
(Constraint Precision).
Это требуемая точность для всех ограничений
точность.
-
чем меньше число, тем выше
420
♦
1
Глава
14
Использовать автоматическое масштабирование
(Use Automatic Scaling).
Установка этого флажка снижает влияние на решение слишком больших или
слишком малых значений.
♦ Показывать результаты итерации
(Show Iteration Results).
У становите этот флажок, чтобы приостанавливать работу после каждой итера
ции и отображать ее результаты.
♦
Игнорировать целочисленные значения
(Ignore Integer Constraints).
Установите этот флажок, чтобы надстройка Поиск решения
вала ограничения целые, бинарные или все разные (см.разд.
♦ Целочисленная оптимальность(%)
(Solver) игнориро
14.13-14.15).
(lnteger Optimality (%)).
Это допустимое отклонение для целочисленных решений. По умолчанию его
значение равно
1,
что позволяет относительно быстро найти решение, близкое
к оптимальному. Установите этот параметр в значение О, чтобы отыскать наи
лучшее решение, но на поиск его вам придется потратить значительно больше
времени.
♦ Максимальное время (Мах Тime) и Число итераций
(Iterations)
Максимальное время (в секундах), которое будет затрачено на поиск решения,
и максимальное число пробных решений.
♦ Максимальное число подзадач (Мах SubproЫems) и Максимальное число
допустимых решений (Мах FeasiЫe
Solutions)
Максимальное число подзадач и допустимых решений при использовании эво
люционного поиска решения и целочисленных ограничениях.
Вкладка Поиск решения
нелинейных задач
методом
ОПГ
включает параметры, которые надстройка Поиск решения
(GRG Nonlinear)
(Solver) использует для
поиска решения этим методом:
♦
Сходимость
(Convergence).
Это относительное изменение, которое вы можете разрешить в последних пяти
итерациях, прежде чем надстройка Поиск решения
(Solver)
решит, что она
пришла к решению. Ввод меньшего числа означает, что Поиск решения
(Solver)
может найти лучшее решение.
♦
Производные
(Derivatives).
Вы можете выбрать оценку производных с помощью правого или центрального
дифференцирования. Центральное дифференцирование может оказаться более
точным, но включает больше расчетов и занимает больше времени.
♦
Использовать несколько начальных точек
ности
При
(Population Size) и
установке
Multistart)
флажка
(Use Multistart), Размер совокуп
(Random Seed).
Случайное начальное значение
Использовать
несколько
начальных
точек
(Use
поиск решения нелинейных задач методом ОПГ запускается много
кратно с различными начальными значениями
(см.
разд.
14. 18).
Если этот фла-
Анализ <<что если»
жок установлен, в параметре Размер совокупности
(Population Size)
421
следует
указать, сколько начальных точек использовать, а в поле Случайное начальное
значение
фиксированное начальное значение для случайного
(Random Seed) -
генерирования. Если поле Случайное начальное значение
вить пустым, надстройка Поиск решения
(Solver)
(Random Seed)
оста
будет использовать разное
начальное значение при каждом запуске.
♦
Обязательные границы для переменных
(Require Bounds on
VariaЬ\es).
Если установлен флажок Использовать несколько начальных точек
Multistart),
(Use
то этот параметр определяет, должны ли быть заданы верхние и ниж
ние ограничения для изменяемых ячеек.
Вкладка Эволюционный поиск решения
торые надстройка Поиск решения
(Evolutionary) включает параметры, ко
(Solver) использует для поиска решения этим
методом:
♦
Сходимость
(Convergence).
Это максимальная процентная разница в целевых значениях для лучших
99%
совокупности. Ввод меньшего числа означает, что надстройка Поиск решения
(Solver)
♦
может найти лучшее решение, но это займет больше времени.
Скорость изменения
(Mutation Rate ).
Это число между О и
1,
указывающее относительную частоту, с которой может
меняться член совокупности. Увеличение скорости может привести к лучшему
решению, но это займет больше времени.
♦
Размер совокупности
(Population Size).
Это количество точек, которое надстройка Поиск решения
(Solver)
должна
поддерживать при поиске решения.
♦
Случайное начальное значение
(Random Seed).
Этот параметр задает фиксированное начальное значение, которое надстройка
Поиск решения
(Solver)
должна задействовать для случайных выборок. Если
это поле оставить пустым, надстройка Поиск решения
(Solver)
будет использо
вать при каждом запуске разное начальное значение.
♦
Максимальное время без улучшения
(Maximum Time without Improvement).
Это количество секунд, в течение которых надстройка Поиск решения
(Solver)
должна работать без каких-либо существенных улучшений.
♦
Обязательные границы для переменных
(Require Bounds
оп VariaЬ\es).
Этот параметр определяет, должны ли быть заданы верхние и нижние ограни
чения.
Чтобы восстановить параметры по умолчанию, нажмите в диалоговом окне Пара
метры поиска решения
(Solver Parameters)
кнопку Сбросить
(Reset AII).
Это дей
ствие удалит все ограничения и изменяемые ячейки и изменит целевую ячейку на
активную ячейку рабочего листа.
422
1
Глава
14
Пояснение
Тонкая настройка параметров надстройки Поиск решения
(Solver) может приго
- например, уско
диться, если вам нужно отклониться от настроек по умолчанию
рить
эволюционный
поиск
решения,
несколько начальных точек
задействовать
(Use Multistart)
параметр
Использовать
при поиске решения нелинейных
задач методом ОПГ или найти более точное решение.
14.20. Сохраняем
и загружаем параметры
надстройки Поиск решения
Задача
Вы хотите сохранить набор параметров надстройки Поиск решения
(Solver)
или
загрузить предварительно сохраненный набор.
Решение
Предположим, вы используете надстройку Поиск решения
(Solver)
для решения
задачи оптимизации и решили попробовать разные ограничения, чтобы найти ре
шения для различных случаев. Сохранить заданные для каждого случая параметры
в диапазоне рабочего листа можно следующим образом:
\.
Откройте диалоговое окно Параметры поиска решения
выполнив команду меню Данные
(Data)
1
Анализ
(Solver Parameters),
(Analyze) Поиск решения
1
(Solver).
2.
Заполните параметры, необходимые для решения задачи: целевую ячейку, изме
няемые ячейки, ограничения и пр.
3.
Нажмите кнопку Загрузить/сохранить
окно Загрузить/сохранить модель
4.
(Load/Save ), чтобы
(Load/Save Model).
открыть диалоговое
В поле диапазона выберите диапазон пустых ячеек, в который собираетесь
сохранить параметры, и нажмите кнопку Сохранить
(Save ).
Чтобы загрузить предварительно сохраненный набор параметров:
1.
Откройте диалоговое окно Параметры поиска решения
и нажмите кнопку Загрузить/сохранить
2.
(Solver Parameters)
(Load/Save ).
В поле диапазона выберите диапазон рабочего листа, содержащий сохраненные
параметры.
3.
Нажмите кнопку Загрузить
(Load), и Ехсе\ загрузит
(Solver Parameters).
параметры в диалоговое
окно Параметры поиска решения
Пояснение
Надстройка Поиск решения
(Solver)
автоматически сохраняет последний набор
параметров, который вы ввели в диалоговое окно Параметры поиска решения
Анализ «что если»
(Solver Parameters),
1
423
поэтому вам не нужно каждый раз, когда вы вновь открываете
это диалоговое окно, начинать с чистого листа. В этом разделе показано, как сохра
нить другие заданные вами параметры, чтобы вы могли их вновь загрузить в случае
необходимости.
14.21. Сохраняем
сценарии,
сгенерированные надстройкой поиск решения
Задача
У вас есть решенная с помощью надстройки Поиск решения
(Solver)
задача, и вы
хотите сохранить значения ее изменяемых ячеек в виде сценария.
Решение
Решив задачу с помощью надстройки Поиск решения
(Solver),
нить значения ее изменяемых ячеек в виде сценария (см.разд.
вы можете сохра
14. 5).
Для сохранения сценария нажмите в диалоговом окне Параметры поиска реше
ния
(Solver Parameters)
кнопку Найти решение
вом окне Результаты поиска решения
нарий
(Save Scenario).
(Solve), а
(Solver Results) -
в открывшемся диалого
кнопку Сохранить сце
При появлении запроса введите имя сценария и нажмите
кнопку ОК, чтобы его сохранить.
Пояснение
В этом разделе предлагается удобный способ добавления решения надстройки
Поиск решения
(Solver)
в инструмент Диспетчер сценариев
(Scenario Manager),
позволяющий быстро вернуться к результатам решения. Этим действием вы сохра
ните значения изменяемых ячеек сценария в виде нового сценария, используя ука
занное вами имя.
14.22. Отображаем отчеты
надстройки поиск решения
Задача
Вы хотите сгенерировать отчет надстройки Поиск решения
(Solver)
о найденном
решении или возникшей проблеме.
Решение
Надстройка Поиск решения
иска решения
(Solver) использует диалоговое окно Результаты по
(Solver Results), в котором сообщает вам, что она решила задачу
и/или столкнулась с проблемой. Это диалоговое окно включает указанный в поле
Отчеты
(Reports)
набор отчетов, которые вы можете использовать, чтобы узнать
больше о результатах работы надстройки.
424
1
Глава
14
Чтобы сгенерировать отчет, выберите его в поле Отчеты
мости установите флажок Отчеты со структурами
рировать для него струкrуру (см. разд.
Поиск решения
(Solver)
2.17),
(Reports), при необходи
(Outline Reports), чтобы сгене
и нажмите кнопку ОК- надстройка
добавит отчет в рабочую книгу в виде нового рабочего
листа.
Пояснение
Надстройка Поиск решения
(Solver)
может отображать разнообразные отчеты
в зависимости от метода решения, наличия целочисленных ограничений и резуль
тата. Например, если надстройка не нашла допустимого решения, вы можете сгене
рировать отчет, показывающий все ограничения, которые она не может выполнить,
чтобы вы могли их перепроверить.
ГЛАВА
15
PowerQuery
Power Query -
это мощный инструмент преобразования данных, который позволя
ет импортировать внешние данные, выполнять манипуляции с наборами данных, а
затем загружать результаты в Ехсе\. Если базовые данные изменятся, вы сможете
обновить их в Ехсе\. В работе с
1.
Power Query есть
четыре основных этапа:
На этапе подключения вы указываете, какие данные хотите импортировать и как
получить к ним доступ.
2.
Подключившись к данным, вы сможете преобразовать их с помощью редактора
Power Query.
Например, применить фильтры, разбить или объединить столбцы
и вызвать пользовательские функции.
3.
В случае необходимости вы также можете соединить наборы данных, добавив
или объединив их.
4.
И наконец, сможете загрузить данные в Ехсе\.
В этой главе вы найдете решения для каждого из перечисленных этапов.
Power Query, или Получить и преобразовать данные (Get &
Excel 2016 и более поздних версиях для Windows. Многие
его функции доступны в Excel 365 для macOS, Excel для Интернета также поддер
живает некоторые его функции, а другие продукты Microsoft, такие как Power 81,
Инструментарий
Transform),
доступен в
тоже включают их. В этой главе основное внимание уделяется функциям, доступ
ным в
Excel 365 для Windows.
15.1. Получаем
и загружаем данные
Задача
Вы хотите получить данные из файла, Интернета, базы данных или другого источ
ника и загрузить их в Ехсе\.
Решение
Power Query
позволяет получать данные из различных источников, включая файлы,
базы данных и интернет-сайты (в зависимости от вашей версии Ехсе\). Как только
вы укажете, какие данные нужно импортировать, то сможете сформировать и пре
образовать их с помощью редактора
в Ехсе\.
Power Query,
а затем загрузить результаты
426
1
Глава
15
Чтобы получить данные, выполните команду меню Данные
преобразовать данные
(Get & Transform Data)
1
(Data)
1
Получить и
Получить данные
и выберите подходящий вариант. В зависимости от вашей версии
(Get Data)
Excel
здесь воз
можны следующие варианты:
♦
Из файла
(From File).
Вы можете импортировать данные из
JSON, PDF
♦
Excel,
файлов формата
Text/CSV, XML,
15.2).
или из файлов в папке с тем же типом и структурой (см.разд.
Из базы данных
(From Database ).
Поддерживаемые базы данных включают
SQL Server, Microsoft Access
и
SQL
Server Analysis Services.
♦ Из
Azure (From Azure ).
Этот вариант включает
Azure Data Lake Storage
2-го поколения и
Azure Data
Explorer.
♦
Из
Power Platform (From Power Platform).
Этот вариант включает
Dataflows и Dataverse.
♦ Из других источников
(From Other Sources).
Вы можете загрузить данные из таблицы или диапазона, веб-страницы,
Query,
из веб-канала данных
OData,
из подключений
ODBC
или
Microsoft
OLEDB или из
изображения. Допускается также создать пустой запрос, который вы сможете,
к примеру, использовать для создания пользовательской функции (см.разд.
15. 25).
Выбрав вариант, используйте мастер запросов, чтобы указать, какие данные следу
ет импортировать,
-
те кнопку Загрузить
например, конкретный файл
(Load) -
Excel
или таблицу. Затем нажми
чтобы загрузить данные в место назначения по
умолчанию
Excel, Загрузить в (Load То) (из раскрывающегося списка кнопки
(Load)) - чтобы выбрать место назначения (см. разд. 15.3) или Преоб
разовать в (Transform to) чтобы сформировать данные с помощью редактора
Power Query, прежде чем загрузить их.
Загрузить
Когда вы загружаете данные в
Excel, Power Query
создает запрос, содержащий ша
ги, обеспечивающие получение и преобразование данных. Вы можете увидеть спи
сок запросов рабочей книги на вкладке Запросы
ключения
(Queries & Connections),
которую
(Queries) панели Запросы и под
Excel обычно открывает по умолча
нию. Если панель закрыта, открыть ее можно, выполнив команду меню Данные
(Data) 1 Запросы и подключения (Queries & Connections)
ния (Queries & Connections).
1
Запросы и подключе
Пояснение
В этом разделе основное внимание уделяется подключению к данным и их загрузке
в
Excel.
Конкретный пример вы найдете в разд.
15.2.
Power Query
15.2. Получаем
1
427
и загружаем данные из файлов в папке
Задача
У вас есть папка, содержащая файлы с идентично структурированными данными,
которые вы хотите объединить и загрузить в
Excel.
Решение
Предположим, вы храните в отдельных Ехсеl-файлах идентично структурирован
ные данные для нескольких отделов и служб предприятия, и вам надо загрузить эти
данные в новую Ехсеl-таблицу, которая будет включать все строки каждого файла
в качестве единичной или повторяющейся записи. Решить эту задачу можно, создав
запрос, получающий и загружающий данные из папки:
1.
Поместите файлы, данные которых собираетесь объединить, в специальную
папку.
2.
Создайте или вновь откройте рабочую книгу
Excel,
в которую собираетесь за
грузить данные, убедившись, что она находится в папке, отличной от указанной
на шаге
3.
1,
и не является ее подкаталогом.
Выполните команду меню Данные
(Get & Transform Data)
Из папки (From Folder).
4.
1
Получить и преобразовать данные
Получить данные
(Get Data)
1
Из файла
(From File)
1
Выберите папку, содержащую файлы, из которых нужно загрузить данные, и на
жмите кнопку Открыть
5.
1
(Data)
(Open) -
Power Query отобразит список
файлов папки.
Нажмите на стрелку раскрывающегося списка кнопки Объединить (ComЬine) и
выберите один из вариантов. Например, чтобы объединить данные и загрузить
их напрямую в
Excel,
выберите в меню кнопки Объединить (ComЬine) пункт
Объединить и загрузить (ComЬine
6.
& Load).
В открывшемся диалоговом окне Объединить файлы (ComЬine
выберите образец файла, который
Power Query
Files)
(рис.
15.1)
будет использовать в качестве
основы для своих запросов. Затем выберите данные для загрузки, установите
флажок Пропустить файлы с ошибками
(Skip files with errors)
и нажмите
кнопку ОК, чтобы создать запрос.
В созданный запрос можно включать любые добавленные в папку новые файлы,
а также вносить в данные любые изменения, для чего достаточно его обновить
(см.разд.
15. 5) -
это перезапустит шаги запроса и перезагрузит данные.
Вы также можете использовать эту функцию для загрузки данных из нескольких
папок
-
например, если у различных отделов есть файлы, хранящиеся в подката
логах. Чтобы в таком случае беспрепятственно импортировать данные, на шаге
3
выберите родительский каталог, а затем выполните все оставшиеся шаги, чтобы
включить нужные файлы. В случае необходимости после этого вы можете восполь
зоваться рекомендациями разд.
15.12,
чтобы отфильтровать файлы.
Глава
428
15
□
х
Объединить файлы
Выберите объект, который сле.дуеr извлечь ~13 каждого файла, Дополнительные сае.дения
Пр1>1мер файла:
Первый фаW!
• 1
р
Отобра:,;11ть nара~етры
,
G
"
Пора.,.етр1 [б]
[r;J
Доnолнит~ьная таб.nица продаж
c:ll
Т а6л-1ца комnани\4
[!ij] Т облица nрод•ж
Та блица продаж
D
Номер счета
Продавец
ИОМJАНИJI
СЧООООl
Ю.11мя Сммоно.&а
СпррубJtь
345,13
24 012011
СЧОООО2
в~нтмн Бепое
Копжа~
6753,23
26 011013
СЧООООЗ
Георn~ЙДУf!е
Сторрубi!ь
6743,31
19011022
СЧОООО4
XalJl)OH
М1tнrустмн
7683,06
27011023
счооооs
КмрнмСимон~
Манrуамн
6834,74
28 01 2013
СЧООООб
Юлия Скмоноаа
Котсжафr
3957,49
01 021023
СЧОООО7
Хаsрон Иnатое
Сторрубпь
СЧООООВ
ГОО9f>'ЙДу,8
Котока~
СЧОООО9
Вlмнтмн Бе/lое
Манrустин
19879,25
01 031013
СЧООО10
61.Лентмн Бепоа
Сторрубi!ь
3987,91
02.031023
CЧOOOll
Хаерон Иnзrое
Koтatt.a~
8203,2.f
01 04.1023
СЧООО12
IOJl~Я~MOН08a
Манrустмн
8294,24
01.042023
СЧООО13
ГеорrvйД~
Копжа~
82049,23
02041023
Иnатое
Сумма
Даn,nродажм
783,24
24 012013
7391,34
24 012023
<
>
~
..t- Пропустить фай.пы с оwибкамУ
Рис.
15.1. Диалоговое
д•1
Or~a
окно Объединить файлы
Пояснение
Объединение данных из нескольких файлов вручную может оказаться затратным
по времени и привести к ошибкам. Предлагаемое в этом разделе решение поможет
вам упростить процесс, воспользовавшись для добавления данных каждого файла
и загрузки их в Ехсе\ мастером инструмента
Power Query
по созданию запроса.
Этот раздел окажется особенно полезным, если вам нужно включить все изменения
исходных данных
-
например, новые файлы, добавляемые в папку для создания
ежемесячных отчетов, поскольку вы сможете легко перезагрузить данные, обновив
запрос (см. разд,
15.5).
15.3. Указываем,
куда загрузить данные
Задача
У вас есть запрос, и вы хотите указать, куда загружать его данные.
Решение
По умолчанию
Power Query
загружает данные из одного запроса в таблицу на но
вом рабочем листе, а данные из нескольких запросов одновременно
данных (см. главу
16).
-
в модель
Однако некоторые версии Ехсе\ предоставляют возможность
выбрать загрузку данных в другое место.
Power Query
1
429
Для новых запросов указать место, куда загружать данные, можно, выбрав вариант
Загрузить в (Load То) в мастере запросов Получить данные (Get Data) (см. разд.
15.1) или выполнив команду редактора Power Query Главная (Ноте) 1 Закрыть
(Close) 1 Закрыть и загрузить (Close & Load) 1 Закрыть и загрузить в (Close &
Load То) (см . разд. 15.7), открывающую диалоговое окно Импорт данных (lmport
Data), включающее следующие параметры (рис . 15 .2):
♦
Таблица (ТаЫе).
Этот параметр по умолчанию загружает данные в таблицу
х
?
Импорт данных
Excel.
&,берите способ представления данных в книге.
E::J @Iаблица
[0
•Gi!
О Qтчет сводной таблицы
О ~водная диаграм••а
С' О Т О/!ЬКО создать подключение
Куда следУет nо••естить данные ?
Имеющийся оист·
~ SAS1
@ tiовый лист
□ !добавить эти данныt в ~ОВ.tль данных!
Отмена
ок
Рис.
♦
Отчет
сводной
15.2. Диалоговое
таблицы
окно Импорт данных
(PivotTaЫe
и
Report)
диаграмма
Сводная
(PivotChart).
Эти параметры загружают данные в кеш сводной таблицы (см . разд.
11.28),
что
дает возможность создать сводную таблицу или сводную диаграмму, не создавая
сначала таблицу .
♦ Только создать подключение
(Only Create Connection).
Этот параметр предоставляет другим запросам доступ к результатам запроса, не
загружая его данные в Ехсе\. Это может оказаться полезным, если , к примеру,
вам
надо использовать
выходные данные одного запроса для
результатов другого, как показано в разд.
♦
Куда следует поместить данные?
Если
вы
(PivotTaЫe
выбрали
Report)
параметр
♦
(Where do you want to put the data?).
(ТаЫе),
Таблица
или Сводная диаграмма
какой рабочий лист использовать
-
фильтрации
15. 31 .
Отчет
(PivotChart),
сводной
таблицы
то можете выбрать,
новый или имеющийся.
Добавить эти данные в модель данных
(Add this data to the Data Model)
У становите этот флажок, если нужно, чтобы
дель данных рабочей книги (см . главу
Power Query
загружал данные в мо
16).
Открыть диалоговое окно Импорт данных
(lmport Data)
для существующих запро
сов можно, щелкнув правой кнопкой мыши на запросе в панели Запросы и под-
430
1
Глава
15
I(JIIОчения
в
(Queries & Connections)
(Load То).
и выбрав в контекстном меню пункт Загрузить
Чтобы изменить расположение, куда
Power Query загружает данные по умолчанию,
Excel Данные (Data) 1 Получить и преобразовать дан
ные (Get & Transform Data) 1 Получить данные (Get Data) 1 Параметры запроса
(Query Options) (или команду редактора Power Query Файл (File) 1 Параметры и
настройки (Options and Settings)), выберите в разделе Глобальные (Global) пункт
Загрузка данных (Data Load) и воспользуйтесь параметрами, приведенными
в разделе Стандартные параметры загрузки запроса (Default Query Load Settings).
выполните команду меню
Пояснение
В этом разделе показаны способы указать место, куда следует загружать да1шые
запроса. Обратите внимание, что в
macOS на момент подготовки книги
можно было загружать данные только в таблицу Excel, поэтому диалоговое окно
Импорт данных (Import Data) в этой версии Excel недоступно.
15.4. Редактируем
Excel
для
настройки и безопасность
источника данных
Задача
Вы хотите поменять местоположение или учетные данные источника данных.
Решение
Предположим, у вас есть один или несколько запросов, получающих данные из
файла, который вы впоследствии переместили. Чтобы обновить местоположение
файла, выполните команду меню
Excel Данные (Data) / Получить и преобразо
(Get & Transform Data) / Получить данные (Get Data) 1 Параметры
источника данных (Data Source Settings) (или команду редактора Power
Query Главная (Ноте) Источники данных (Data Sources) / Настройки источни
ка данных (Data Source Settings)), открывающую диалоговое окно Параметры
источника данных (Data Source Settings) (рис. 15.3), установите в нем параметр
Источники данных в текущей книге (Data sources in current workbook), выберите
вать данные
1
в соответствующем поле источник данных, нажмите кнопку Изменить источник
(Change Source) и
перейдите в новое местоположение файла.
Если вам надо изменить источники данных одного запроса
-
например, сослаться
на другой файл или таблицу, вы сможете это сделать, отредактировав шаги запро
са Источник
(Source)
и/или Навигация
(Navigation).
Это пригодится, если вам надо
скопировать запрос и применить его преобразования к другому источнику данных
(см. разд. 15.27).
С
помощью диалогового
Settings)
окна
Параметры
источника данных
(Data Source
также можно изменить разрешения для источника данных, используемого
Power Query
431
- выберите для
(Data sources in current
workbook) или Глобальные разрешения (Global pennissions), выделите источник
данных и нажмите кнопку Править разрешения (Edit Pennissions) или Очистить
разрешения (Clear Pennissions), в зависимости от того , что вам надо сделать.
в текущей рабочей книге, или обновить глобальные разрешения,
этого параметр Источники данных в текущей книге
Нааройки источника данных
Управление параметрами источников даниых. используемых в запросах
•
Г 11о6~ькые pa3~weнlt4я
Источники данных в текущей книr~
D
d:\работа\ехсеl сооkЬо ... меры\rлава_ 15\demosdatapq.xlsx
Праеить ра,рNJе'НИЯ» ,
И:,мемить источю«. .,
Рис.
15.3. Диалоговое
окно Параметрь1 источника данных
х
Параметры запроса
Машинные запросы к базе данных
ГЛОБАЛЬНЫЕ
Т~епь уnsерждения nопьюs1те.пя для новых машинн.ых
Общие
З1гру,о ~нных
Редоаор
31npocoe
ба:~ данных
Power Query
Отзыв сертификата 0
Бf!зоn,сность
Полна•
•
Конфид~,нци,..ьносrь
Реr11онаJ1ьные настройки
Ди:.1rносrмК!I
ьаюм•
npooepou, 0
npooepou, 0
Нет0
Уровень предупреждения для предварительной
веб-версии
ТЕКУЩАЯ КНИГА
0
З1rррка данных
РеrУ1он411ьные нмтройr:м
Конфид~,нц.....,,ьность
Утвержденные службы проверки подлинности
ADFS 0
Q На данном компьютере оrсутствуют
уте~ржде-нные СJ1у.:«6ы nроеер1СИ nоД11инности.
Рис.
15.4. Диалоговое
окно Параметры запроса
432
1
Глава
15
Чтобы управлять строгостью безопасности для различных типов источников дан
ных, выполните команду меню
Excel Данные (Data) Получить и преобразовать
(Get & Transform Data) 1 Получить данные (Get Data) 1 Параметры запро
са (Query Options) (или команду редактора Power Query Файл (File) 1 Параметры и
настройки (Options and Settings) 1 Параметры запроса (Query Options)), в разделе
Глобальные (Global) открывшегося диалогового окна Параметры запроса (Query
Options) (рис. 15.4) выберите пункт Безопасность (Security) и установите требуе
1
данные
мые параметры.
Пояснение
В этом разделе показано, как управлять настройками источника данных, такими как
местоположение
или
разрешения.
Вы
можете использовать этот подход,
если,
к примеру, у вас есть запросы, загружающие данные из файла, который вы впо
следствии переместили.
15.5. Обновляем
данные запроса
Задача
У вас есть запрос, базовые данные которого изменились, и вы хотите обновить
загруженные в
Excel
данные.
Решение
Как и в случае со сводными таблицами (см. разд.
11.5),
запрос предоставляет мо
ментальный снимок базовых данных. Если данные меняются, вам нужно обновить
запрос, чтобы эти изменения загрузились в Ехсе\. Обновление запроса перезапуска
ет его шаги, позволяя применить к обновленным данным любые преобразования.
Обновить запрос можно с помощью следующих методов:
♦
наведите курсор мыши на запрос в панели Запросы и подключения
Connections) и щелкните на значке Обновить (Refresh) [~J
♦
щелкните правой кнопкой мыши на панели Запросы и подключения
Connections)
♦
и выберите из контекстного меню пункт Обновить
(Queries &
(Refresh);
выполните команду меню Данные
Connections) Обновить
все (Refresh AII);
1
♦
(Queries &
все
(Data) 1 Запросы и подключения (Queries &
(Refresh AII) Обновить (Refresh) или Обновить
1
воспользуйтесь рекомендациями ртд.
сле чего выполните
(Close)
1
Закрыть и
15. 7, чтобы отредактировать запрос, по
команду редактора Power Query Главная (Ноте) Закрыть
заrрузить (Close & Load).
1
Обычно выбирают параметр Обновить
запрос, и Обновить все
(Refresh AII) -
(Refresh) -
чтобы обновить выбранный
чтобы обновить все данные в рабочей кни
ге, включая запросы, сводные таблицы и подключения
Power Pivot.
Power Query
1
433
Вы также можете настроить Ехсе\, чтобы он автоматически обновлял данные
в конкретных запросах каждый час или когда вы открываете рабочую книгу. Если
вы работаете в
Excel
для
Windows,
выполните двойной щелчок мышью на запросе
в панели Запросы и подключения
(Queries & Connections), выберите параметр
Свойства (Properties), перейдите на вкладку Использование (Usage) и с помощью
настроек раздела Обновление экрана (Refresh Control) укажите, когда необходимо
обновлять данные. Если вы работаете в Ехсе\ для macOS, то найдете эти настройки,
выделив ячейку в таблице, куда вы загрузили данные, и выбрав на вкладке Данные
(Data)
пункт Свойства
(Properties).
Пояснение
Когда вы обновляете запрос,
Power Query
перезапускает каждый шаг, применяя все
преобразования к обновленным данным. Например, если у вас есть запрос, который
загружает данные из файлов в папке (см. ршд.
15.2),
то при обновлении данных
в него будут автоматически включены все добавленные вами файлы, что избавит
вас от затратного по времени редактирования запроса вручную.
Возможность обновлять данные запроса также позволяет эффективно автоматизи
ровать большинство задач по импорту и преобразованию данных, не используя при
этом макросы или язык
VBA.
Например, вы можете генерировать ежемесячные от
четы, создавая периодически обновляемые запросы.
15.6. Управляем запросами
Задача
Вы хотите переименовать запрос, удалить его, скопировать его в другую рабочую
книгу или добавить его в группу.
Решение
Управлять запросом можно, щелкнув на нем правой кнопкой мыши в панели За
просы и подключения
(Queries & Connections)
и выбрав из контекстного меню
один из доступных вариантов:
♦
Копировать (Сору) и Вставить
(Paste).
Эти параметры позволяют копировать и вставлять запрос, в том числе и в другие
рабочие книги.
♦
Изменить
(Edit),
Удалить
(Delete),
Переименовать
(Rename).
Эти параметры используют для редактирования запроса (см.разд.
15. 7),
удале
ния его или изменения его имени.
♦
Обновить
(Refresh)
и Загрузить в
(Load
То).
Эти параметры используют для обновления данных запроса (см. ршд.
изменения места его загрузки (см. ршд.
15.3).
15.5)
или
434
1
Глава
15
♦ Дублировать
(Duplicate),
Ссылка
(Reference),
Объединить
(Merge),
Добавить
(Append).
Эти параметры используют, чтобы продублировать запрос, создать запрос на его
♦
основе,
объединить или добавить его данные к данным в другом запросе
(см.разд.
15.27-15.30).
Экспортировать файл подключения
(Export Connection File).
Этот параметр используют, когда хотят поделиться внешним источником дан
ных. Выбрав его, вы создадите ОDС-файл
ключения к данным
(Office Data Connection -
файл под
содержащий информацию о подключении к источ
Office),
нику данных, шаги и формулы
Power Query.
Чтобы использовать общий источ
ник данных, выполните на ОDС-файле двойной щелчок мышью, открыв тем
♦
самым файл в новой рабочей книге
диалоговое окно Импорт
данных
как загружать данные.
(см. разд.
(Import Data)
Переместить в группу
(Move
Excel, откройте
15.3) и укажите в нем,
То
Group),
Вверх
(Move Up),
Вниз
(Move Down).
Эти параметры позволяют группировать запросы или изменять местоположение
запроса в группе.
♦
Показать выбор
(Show the Peek).
Этот параметр отображает всплывающее окно, содержащее предварительный
просмотр данных, его столбцы, время его последнего обновления и прочую ин
формацию.
♦
Свойства
(Properties).
Используйте этот параметр, чтобы открыть панель Запросы и подключения
(Queries & Connections)
(рис.
15.5).
С ее помощью, например, вы можете автома
тически обновить данные запроса (см.разд.
15. 5).
Другие параметры управления запросом вы найдете, выполнив команду меню
Excel
Data)
Данные
(Data)
Получить и преобразовать данные
(Get & Transform
(Get Data) 1 Параметры запроса (Query Options) (или
команду редактора Power Query Файл (File) 1 Параметры и настройки (Options
and Settings)). Например, открыв здесь командой Глобальные (Global) 1 Общие
(General) параметр Просмотр запроса (Query peek), можно отказаться от отобра
1
1 Получить данные
жения обзора запроса при наведении на него указателя мыши.
Пояснение
В этом разделе показаны способы управления запросами и выполнения базовых
задач, таких как переименование, удаление или организация запросов в группы.
Большинство из указанных здесь параметров вы найдете в редакторе
Power Query,
щелкнув правой кнопкой мыши на запросе в списке запросов. Вы также можете
переименовать запрос, введя его новое имя в поле Имя
запроса
(Query Setti11!!s)
(см. разд.
15.8).
(Name)
панели Параметры
435
Power Query
А
~
'°"""с..-
о
с
8
Стlрру6.оь
345,23
3
СЧ00002
8а11ентин Бело~
Кото"фе
4
СЧОООО3
ГеорrмА Дум
СТ1рру6,,•
6753,23
6743,31
5
СЧОООО4
Хаерон Ипатов
манrуtт"4Н
7683,06
6
СЧО11ОО5
Кмрм.1111 Сммомоt М8Nl'yC'h4M
7
СЧООООб
Юли,~ Симоноаа
Котокафе
6834,74
3957,49
в
tчоооо7
Ха ■рон ИПIТО8
СТ.ррубль
9
счоооов
Георrмй Дуев
Котокафе
10
СЧОООО9
ваnентин Белое
Манrустмн
29879,25
11
СЧОООlО
8а.пентин белов
Старрубль
3987,92
12
СЧООО11
Хt1рон Иn,roe
Котокафе
JJ
СЧ00012
Юлия Симонова
МанrуСТ\llн
14
СЧ00013
Ге9Rrий Дуев
Котокаф@:
783.24
7392,34
8203,24
82!;4,24
82049,23
Запросы и подклю ч ен ия
24.01 2022
25.01.2023
1'-01.2022
27.01.2023
28.01.2023
01 .02.2023
24.02.2023
24.02.2023
01.03.2023
02.03.2023
01.04.2023
02.04.2023
02.04,2.()23
V
х
ПOДIUIIO~H~.I
)\
[I)
Уды~ить
Пt~.,Mt'.НOIITt,,
['а
Обноеи'Т~,
О
Загру:жтъ а
15
16
17
18
19
l=:J
0~НН111.>
Ж
ДоЬ.е,.нь
20
Эr.cnopТtllp<;uть ф1йл nсдц1t0чtни"
21
22
23
24
25
Помит11r 1ЫООр
[:'ь
26
С1ойсн1"
27
Рис.
15.5. Панель Запрось~ и подключения (справа) и контекстное меню запроса
15.7. Редактируем запрос
Задача
Вы хотите отредактировать запрос, чтобы сформировать и преобразовать данные,
которые он возвращает.
Решение
Предположим, вы с помощью
Power Query
загрузили данные в
Excel,
и теперь вам
надо их преобразовать. Сделать это можно, отредактировав запрос.
Запросы редактируются в редакторе
Power Query
(рис .
15 .6),
и чтобы его открыть,
воспользуйтесь одним из следующих способов:
♦
выполните команду меню Данные (Data) Получить и преобразовать данные
(Get & Transform Data) 1 Получить данные (Get Data) 1 Запустить Редактор
Power Query (Launch Power Query Editor);
♦
выполните двойной щелчок мышью на запросе в панели Запросы и подключе
1
ния
♦
(Queries & Connections);
щелкните правой кнопкой мыши на запросе и в контекстном меню выберите
пункт Изменить
Редактор
(Edit).
Power Query
слева отображает список запросов, из которых вы можете
выбрать нужный для редактирования . Когда вы выбрали запрос, в центральной об
ласти окна появляется предварительный просмотр
I ООО
строк его данных, показы-
Глава
436
15
вающий эффект от всех примененных вами преобразований. При выборе запроса
справа также отображается панель Параметры запроса
щая список всех шагов запроса (см.разд.
11
V "' •
1
содержа
Про~ж:и - Pe,дituop Powtr Que-ry
Главная
Прtо6р13оааниt
D
~
просмотр•
3аГРУJИТЬ•
о
Добамtниt сrолбца
3а~срыть
о
LJ Расwирtнный ptдanop
Уnрамtниt
ь] Упрамtниt "
стоtt6Цllми
Со~тить
•
<
а;] ДоnПрода,оо,
!х
Прод.,.,.
А8с ПРQДАИЦ
-
-
- -
~ ИсПО/IЬ308аТЬ ntpвyto строк
1
СЧООООl
IOJl)tA С'кмонОА
Сrорруб.,~ь
СЧОООО2
Baмtfntн Бvюе
KOTOt'.itфe
3
СЧОООО3
r_.... дv<0
Сrорру6м,
4
СЧОООО4
Хаарон Иnатоа
Манrусw.н
s
счооооs
Кмрк.м Симоноа
Mi!H(YCn'H
б
СЧООООб
IOJl"я Сммоноеа
Котсжафе
1
8
СЧОООО7
Хаврон ИNТО&
СrорруО,,ь
СЧОООО8
Гюрп~йДу~
КОТОt<>ф,
9
СЧОООО9
66лентмн Бепо&
MitHf\'(ТМH
10
СЧ00010
84ле-t11')'!Н БеЛО&
Сrаррубль
11
CЧOOOll
Ха sрон Иrtато&
Котсжафе
12
СЧООО12
Ю11"я Симоном
MМil)ltn'H
13
СЧ00013
Г~рrмйДу9
KOTOtl..
---
•
.,. 2 Замена sначений
...
2
--
Тиnданных:Тtкст•
по
Прtобрnое.аниf
V
Параметры запроса
• А1с Коммимя
,
х
СВОЙСТВА
и
...
rоодаж,1
Всесю~стu
,
ПРИМЕНЕННЫЕ ШАГИ
Источн1А1t
Навигация
Повышенные 3afOJIOl!IKи
*
*
*
.)( И3Уененнь~й mn
>
ПРоФИАИРQ-!оНtfе сто116ца на O(J-;O!'~ nt~t,Ц Cl"pQK (1000)
-
~
Ра~~fЛить Группиронть 1
• TitЬl4!. Transfort1ColUW1Ty pes( J "Лo SЬ111eннwe
<
СТОЛБЦОВ 6. аРОК:. 13
r..
стол6tц •
с
~. А8с Номер счета
[:]' Компании
~!
i!
строки•
3.anpoc
3i.'r:,occ [3]
х
Просмотр
tt:]саойства
Обновить nрtдuритtпьный
Якрытьи
(Query Settings),
15.8).
- - -
-
Рис.
--- -
15.6.
------
Окно редактора
Power Query
Предварительный просмотр данных редактора
11с11ному кешу данных, и
Power Query
ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР ?.АГРУЖЕН е 16:22
~-----
Power Query
обращается к сохра-
может предложить вам обновить предвари
т~"11,ный просмотр, если он устарел, нажав в этом предложении кнопку Обновить
(Refresh).
Главная
Вы также можете сделать это, выполнив команду редактора
Power Query
(Query) 1 Обновить предварительный просмотр
или Главная (Home) 1 Запрос (Query) 1 Обновить предвари
просмотр (Refresh Preview) 1 Обновить все (Refresh AII) - при этом об
(Home)
(Refresh Preview)
тельный
1
Запрос
новится и кеш всех запросов. Чтобы очистить кеш, выполните команду редактора
Power Query
Файл
(File)
Запрос
(Query)
Параметры запроса
(Query Options)
(или команду Excel Файл (File) 1 Параметры и настройки (Options and Settings)) и
в открывшемся диалоговом окне выполните команду Глобальные (Global) 1 За
грузка данных (Data Load) 1 Параметры управления кешем данных (Data Cache
Management Options) Очистить кеш (Clear Cache).
1
1
1
Чтобы преобразовать данные, используйте параметры в ленте или заголовки столб
цов,
описанные в последующих разделах, а
проса выполните команду редактора
(Close)
1
Закрыть и загрузить
данные в
Excel.
после завершения
редактирования
за
Power Query Главная (Home) 1 Закрыть
(Close & Load), которая закроет редактор и загрузит
Power Query
1
437
Пояснение
В этом разделе показано, как открыть окно редактора
Power Query,
используемое
для редактирования запроса. В последующих разделах этой главы вы найдете более
подробное описание доступных параметров.
15.8. Управляем
шагами запроса
Задача
У вас есть запрос, и вы хотите удалить или изменить один из его шагов.
Решение
В шагах запроса указываются источник его данных и все преобразования, исполь
зованные для их формирования. При этом
Power Query
для каждого примененного
вами преобразования добавляет новый шаг.
Редактор
Power Query отображает список шагов запроса на панели Параметры
(Query Settings), расположенной в правой области его диалогового окна
(см. рис. 15.6). Если панель окажется закрытой, открыть ее можно, выполнив
команду редактора Просмотр (View) 1 Структура (Layout) 1 Параметры запроса
(Query Settings). Панель Параметры запроса (Query Settings) отображает название
текущего запроса в поле Имя (Name), а раздел Примененные шаrи (Applied Steps)
запроса
содержит список шагов в том порядке, в котором они были применены.
Чтобы увидеть, как конкретные шаги преобразуют данные, нажмите на шаг
-
это
действие изменит предварительный просмотр данных и покажет эффект шага. Вы
также можете изменить шаг (где это допустимо), наведя на него курсор мыши и
щелкнув на значке настроек [Qj, расп.оложенном справа от шага, или удалить шаг,
щелкнув на значке удаления [8], расположенном слева от него. Вы найдете обе эти
опции (а также многие другие), щелкнув на шаге правой кнопкой мыши.
Пояснение
В отличие от
Excel,
в
Power Query
нет команды Отменить
(Undo).
Однако вы мо
жете изменить или удалить шаги (как показано в этом разделе), отменив тем самым
внесенные вами изменения. Вы также можете отбросить все внесенные вами с мо
мента запуска редактора
кнопку Отменить
Power Query изменения, закрыв окно Power Query и нажав
(Discard) в ответ на запрос, хотите ли вы сохранить изменения.
15.9. Управляем
столбцами
Задача
У вас есть запрос, и вы хотите переименовать, переместить или удалить столбец.
438
1
Глава
15
Решение
Предположим, вам надо преобразовать данные имеющегося у вас запроса, пере
именовав, переместив или удалив столбец.
Чтобы переименовать столбец, в окне предварительного просмотра данных редак
тора
Power
Qнery (см. рис.
15.6)
выполните двойной щелчок мышью на его имени.
Переместить столбец вы можете, выбрав его (щелкнув на заголовке столбца) и пе
ретащив в новое местоположение, а удалить
выбрав его и нажав клавишу
-
<Del>.
Вы также можете выполнить эти действия, щелкнув правой кнопкой мыши на
столбце и выбрав из открывшегося контестного меню вариант Переименовать
(Rename),
Переместить
(Move)
или Удалить
(Remove).
В некоторых случаях, например при импорте данных из Интернета, вам может по
требоваться использовать первую строку данных для имен столбцов или имена
столбцов в качестве первой строки. Сделать это можно, выполнив команду редак
тора Power Query Главная (Home) 1 Преобразование (Transform) 1 Использовать
первую строку в качестве заголовка
дящий вариант (см. разд.
(Use First Row as Headers)
и выбрав подхо-
15.14).
Пояснение
В этом разделе показано, как преобразовать данные, переименовав, переместив или
удалив столбец запроса.
Если в вашем запросе много столбцов, то будет проще выбирать их или переходить
к ним, выполнив команду редактора Главная
(Manage
Colнmns)
1
Выбор столбцов
антами Выбор столбцов
(Choose
(Home)
(Choose Columns)
Управление столбцами
и воспользовавшись вари
Colнmns) и Перейти к столбцу
Вы также можете удалить выделенные или
команду Главная
1
(Go
То
Column).
невыделенные столбцы, выполнив
(Home) Управление столбцами (Manage Columns) Удалить
(Remove Columns), либо переместить выбранные столбцы влево, вправо,
в начало или в конец, выполнив команду Преобразование (Transform)
Любой
столбец (Any Column) Переместить (Move).
1
1
столбцы
1
1
15.10. Используем
типы данных
Задача
У вас есть столбец, и вы хотите просмотреть или отредактировать тип данных,
который он может содержать.
Решение
Power
Queгy присваивает каждому столбцу тип данных, определяющий тип дан
ных, которые он может содержать, и операции, которые допускается к нему приме
нять. Например, столбец с типом данных Целое число
(Whole
Numbeг) содержит
целочисленные значения, и вы можете применить к ним числовые фильтры и опе
рации.
Power Query
1
439
Чтобы просмотреть или изменить тип данных столбца, выделите в редакторе
Query
form)
столбец и выполните команду Главная (Ноше)
1
Тип данных
(Data Туре).
♦ Десятичное число
Number),
Процент
1
Преобразование
Power
(Trans-
Здесь доступны следующие варианты:
(Decimal Number),
(Percentage).
Валюта
(Currency),
Целое число (Wlюle
Это числовые типы данных, которые позволяют вам применять к ним числовые
фильтры и операции. Тип Десятичное число представляет число с плавающей
точкой и позволяет обрабатывать числа с дробными значениями, тип Валюта
имеет фиксированное местоположение для десятичного разделителя, тип Целое
число представляет целочисленные значения, а тип Процент похож на тип Де
сятичное число, за исключением того, что форматирует значения как проценты;
♦
Дата и время (Date/Тime ), Дата
пояс
(Date ),
Время
(Time ),
Дата, время и часовой
(Date/Time/Timezone ).
Это типы данных даты и/или времени, где тип Дата и время содержит компо
ненты даты и времени, тип Дата
-
это просто дата, тип Время
время, а тип Дата, время и часовой пояс
координированному времени
♦ Продолжительность
(UTC)
-
-
это просто
это дата и время по Всемирному
со смещением по часовому поясу;
(Duration).
Этот вариант представляет период времени, и вы можете использовать операции
с типом Продолжительность, чтобы извлечь количество дней, часов, минут
и т. д. Его также можно задействовать для выполнения вычислений со значе
ниями даты и/или времени;
♦
Текст
(Text).
Этот тип данных представляет собой текстовую строку;
♦
Истина/ложь
(True/False).
Этот вариант предназначен для булевых значений Истина и Ложь;
♦ Двоичный
(Binary).
Этот вариант представляет данные в двоичном формате.
Редактор Роwег
Query
отображает слева от имени каждого столбца значок, указы
вающий на тип данных этого столбца. Вы можете щелкнуть на этом значке, чтобы
открыть список типов данных, а затем либо выбрать один из них, чтобы изменить
тип данных столбца, либо нажать клавишу
<Esc>,
чтобы закрыть список, не внося
никаких изменений.
Пояснение
В этом разделе приведено описание доступных в
Power Query
типов данных и спо
собов их использования.
По умолчанию
Power Query
автоматически выявляет тип данных каждого столбца,
учитывая содержащиеся в нем значения. Управлять этим поведением можно, вы-
440
Глава
1
15
полнив команду редактора Power Query Файл (File)
Параметры и настройки
(Options and Settings) Параметры запроса (Query Options) (или команду Excel
Файл (File)
Параметры и настройки (Options and Settings)) и настроив пара
метры Определение типов (Туре Detection), выбрав их в разделе Глобальные
(Global) 1 Загрузка данных (Data Load) и в разделе Текущая книга (Current
Workbook) 1 Загрузка данных (Data Load). Вы также можете выполнить команду
Преобразование (Transform) 1 Любой столбец (Any Column) 1 Определить тип
данных (Detect Data Туре), чтобы предоставить Power Query право автоматически
1
1
1
определять тип данных выбранного столбца.
15.11. Сортируем
и фильтруем данные
Задача
У вас есть запрос, и вы хотите отсортировать и/или отфильтровать данные в одном
или нескольких столбцах.
Решение
Сортировка и/или фильтрование данных в редакторе
; югич но тому,
как мы это делали в таблице
Power Query
выполняется ана
Excel.
Чтобы отсортировать данные, выделите столбец, по которому вам нужно выпол
нить сортировку, выполните команду редактора Главная (Ноте)
1
Сортировать
и воспользуйтесь параметрами раздела для сортировки столбца в возрастаю
(Sort)
щем или убывающем порядке. Вы также можете изменить порядок строк на обрат
ный, выполнив команду Преобразование
строки
(Transform)
1
Таблица (ТаЫе)
1
Обратить
(Reverse Rows).
Чтобы отфильтровать данные, нажмите на стрелку раскрывающегося списка справа
от имени столбца и воспользуйтесь доступными параметрами выпадающего меню.
Здесь можно удалить строки с пустыми значениями, указать, какие значения вклю
чать или исключать, а также применить расширенные фильтры, основанные на
типе данных столбца
Дата
(Date),
(см.
разд.
15.1 О).
Например, если тип данных столбца
-
это
вы можете применить фильтр, возвращающий только даты в текущем
году, выбрав вариант Фильтры дат
(Date Filters)
1
Год
(Year)
1
Этот год
(This Year).
Отфильтровать данные также можно, щелкнув правой кнопкой мыши на ячейке,
содержащей значение, по которому вам нужно выполнить фильтрование, и выбрав
команду фильтрации. Например, если у вас есть столбец Продавец, содержащий спи
сок имен, и вам надо видеть строки только для конкретного имени, щелкните пра
вой кнопкой мыши на ячейке, содержащей имя, и выберите вариант Тестовые
фильтры
(Text Filters)
1
Равно
(Equals).
Применив фильтр, вы можете изменить его (например, добавить дополнительные
условия), изменив шаг, на котором открывается диалоговое окно Фильтрация
строк
(Filter Rows).
Выберите параметр Базовый
(Basic) -
чтобы применить одно
Power Query
или два условия к одному и тому же столбцу, или параметр Подробнее
ced) -
1
441
(Advan-
чтобы добавить дополнительные условия, которые можно применить к раз
ным столбцам (рис.
15.7).
х
Фильтрация стро к
Применить одно или несколько условий фильтра к строкам в этой таблице.
.,
•
Подробнее
Сохранятъ строки, в которых
И .nибо или
и
Столбец
Оn~ратор
Дата продажи
относится к rоду
Прод;,в~ц
равно
Значение
. 1
Этот год
_ __
До6ае.trь пред,южен!4е
~ °""""°
Рис.
15.7. Диалоговое
окно Фильтрация строк
Пояснение
Фильтрация данных в редакторе
Power Query
сокращает число строк, загружаемых
запросом в Ехсе\, что гораздо полезнее, чем загружать весь набор данных. Особен
но эффективно применять фильтрацию при работе с большими наборами данных,
количество строк в которых может превышать ограничения по строкам в Ехсе\.
Дополнение
Вы также можете применить фильтр, используя значение параметра (см.разд.
или результаты другого запроса (см. разд.
15.12. Фильтруем
15.24)
15.31).
файлы при загрузке данных из папки
Задача
У вас есть папка, содержащая файлы с идентично структурированными данными,
и вы хотите отфильтровать файлы, объединить их данные и загрузить их в Ехсе\.
Решение
Предположим, вам надо объединить и загрузить в Ехсе\ идентично структуриро
ванные данные, содержащиеся в отдельных файлах Ехсе\, хранящихся в одной из
папок компь_ютера, указав, данные каких файлов надо исключить.
442
1
Глава
15
Для этого:
1.
Выполните шаги из разд.
15.2,
выбрав в меню кнопки Объединить (ComЬine)
пункт Объединить и преобразовать данные (ComЬine
& Transform Data) Power Query.
этим действием вы создадите запрос и откроете его в редакторе
2.
На панели Параметры запроса
те шаг Источник
3.
(Source),
(Query Settings)
редактора
Power Query
выбери
чтобы его отредактировать.
Предварительный просмотр редактора
Power Query
отображает список файлов
папки со столбцами, включая Имя файла, Расширение и Путь к папке. При
ме ните фильтр, чтобы исключить все файлы, данные которых вам не нужно
загружать.
4.
Выполните команду редактора
Power Query Главная (Home) 1 Закрыть (Close) 1
(Close & Load), чтобы закрыть редактор Power Query и за
Excel.
Закрыть и загрузить
грузить данные в
Пояснение
Решение этого раздела основано на решении из разд.
чить при загрузке данных в
Excel
15.2
и показывает, как исклю
определенные файлы, что расширяет ваши воз
можности управления данными. Например, вы можете исключить файлы из опре
деленных папок или включить только те файлы, имена которых начинаются со сло
ва Команда.
15.13. Удаляем
дубликаты, пустые строки и ошибки
Задача
У вас есть запрос, который возвращает повторяющиеся строки, пустые строки или
ошибки в значениях, и вы хотите удалить их.
Решение
Предположим, в вашем запросе имеются повторяющиеся или пустые строки или те,
в которых содержатся ошибки. Удалить их можно, выполнив команду редактора
Power Query Главная (Home)
(Remove Rows) и выбрав
строки (Rепюvе Тор Rows),
1
ки
Сократить строки
(Reduce Rows)
1
Удалить стро
один из доступных вариантов: Удалить верхние
Удалить нижние строки
(Remove Bottom Rows),
(Remove Altemate Rows), Удалить дубликаты
пустые строки (Remove Blank Rows) и Удалить
Удалить 'lередующиеся строки
(Remove DL1plicates), Удалить
ошибки (Remove Erroгs).
Rы также можете сохранить определенные строки, выполнив команду редактора
Powe1· Query
строки (Кеер
строки (Кеер
Главная (Ноте)
Сократить строки (Reduce Rows)
Сохранить
Rows) и выбрав один из доступных вариантов: Сохранить верхние
Тор Rows), Сохранить нижние строки (Кеер Bottom Rows), Сохра1
1
пять диапазон
Duplicates)
строк
(Кеер
Range of Rows),
Errors).
Сохранять
443
Power Query
1
дубликаты
(Кеер
и Сохранить ошибки (Кеер
Пояснение
В этом разделе представлен удобный способ удаления или сохранения определен
ных типов строк. Это пригодится, если вам необходимо удалить из данных пустые
или повторяющиеся строки или сохранить строки с ошибками, чтобы отследить
источник этих ошибок.
15.14. Преобразуем данные
в столбцах
Задача
У вас есть запрос, и вы хотите преобразовать данные, содержащиеся в одном или
нескольких столбцах.
Решение
Вкладка Преобразование
(Transfonn)
редактора
Power Query
включает множество
параметров для формирования содержащихся в столбцах данных.
♦
Раздел Таблица (ТаЬ\е) этой вкладки содержит параметры, которые вы можете
применить ко всему набору данных запроса:
•
Группировать по
(Group
Ву).
Этот параметр группирует данные и вычисляет агрегированные значения для
каждой строки. Выберите вариант Базовый
(Basic) -
чтобы сгруппировать
данные по одному столбцу и рассчитать одно агрегированное значение, и ва
риант Подробнее
(Advanced) -
чтобы сгруппировать данные по нескольким
столбцам или включить более одного вычисления;
•
Использовать первую строку в качестве заголовков
(Use First Row as
Headers).
Этот параметр применяют, чтобы использовать значения в первой строке
в качестве имен столбцов или имена столбцов в качестве первой строки дан
ных;
•
Транспонировать
(Transpose).
Этот параметр транспонирует строки и столбцы, преобразуя каждую строку
в отдельный столбец;
•
Обратить строки
(Reverse Rows).
Этот параметр меняет порядок строк на противоположный;
•
Считать строки
(Count Rows).
Этот параметр заменяет столбцы на их количество.
444
♦
1
Глава
15
Раздел Любой столбец
(Any Column)
содержит параметры для любого столбца.
Выделите столбец (или столбцы), который собираетесь преобразовать, и выбе
рите один из следующих параметров:
•
Тип данных
(Data Туре).
Этот параметр отображает тип данных столбца и позволяет изменить его
(см.разд.
•
15.10);
Определить тип данных
(Detect Data Туре).
Этот параметр автоматически определяет тип данных выбранного столбца на
основе его значений;
•
Переименовать
(Rename)
и Переместить
(Move).
Используйте эти параметры для переименования или перемещения столбца
влево, вправо, в начало или в конец;
•
Замена значений
(Rep\ace Values).
Используйте значения этого параметра Замена значений
и Замена ошибки
(Replace Values)
чтобы найти и заменить значения или
(Rep\ace Errors),
ошибки в выбранном столбце. Если вы выберете вариант Замена значений
(Replace Values),
то можете воспользоваться расширенными параметрами,
позволяющими указать, следует ли сопоставлять все содержимое ячейки и
использовать специальные символы;
Вы можете щелкнуть правой кнопкой мыши на ячейке и выбрать вариант Заме
на значений
этим вы откроете одноименное диалоговое
(Replace Values) -
окно, в котором поле Значение для поиска
(Value to find)
предварительно за
полнено значением ячейки.
•
Заполнить
(Fill).
Этот параметр заполняет пустые ячейки значениями из соседних ячеек в том
же столбце. Выберите вариант Вниз
(Down) -
чтобы скопировать значения
вниз и заполнить пустые ячейки значениями непосредственно над ними, или
вариант Вверх
(Up) -
чтобы скопировать значения вверх и заполнить пус
тые ячейки значениями непосредственно под ними;
•
Столбец сведения
(Pivot Column).
Этот параметр создает выходные данные, похожие на базовую сводную таб
лицу Ехсе\ (см. также разд.
•
15.16);
Отменить свертывание столбцов
(Unpivot Columns).
Этот параметр преобразует столбцы в пары атрибут-значение
при
структурировании
(см. также разд.
•
данных
для
использования
в
15.17);
Преобразовать в список
(Convert to List).
Этот параметр преобразует столбец в список (см. разд.
-
он полезен
сводных
15.19).
таблицах
Power Query
♦
Раздел Столбец «Текст»
(Text Column)
1
445
содержит параметры, которые работают
с текстовыми значениями. Выделите столбец, который вам надо преобразовать,
и выберите один из следующих параметров:
•
•
Разделить столбец
Эти
параметры
разд.
15.15);
Формат
(Split Column) и
позволяют
вам
Объединить столбцы
или
разделять
(Merge Columns).
объединять
столбцы
(см.
(Format).
Этот параметр позволяет форматировать значения столбцов различными спо
собами. Выберите варианты Нижний регистр (Lowercase), Верхний регистр
(Uppercase) и Каждое слово с прописной буквы (Capitalize Each Wоrd)
(Trim) - чтобы удалить
(Clean) - чтобы удалить непе
чтобы вставить текст
префикс (Add Prefix) чтобы вста
Добавить суффикс (Add Suffix) -
чтобы изменить регистр текста, вариант Усечь
начальные или конечные пробелы, Очистить
чатные символы, Добавить
перед каждым значением, и
вить текст после значения;
•
Извлечь
(Extract).
Этот параметр позволяет извлекать символы из значений. Выберите вариант
(Length) - чтобы вернуть длину текстовой строки, варианты Первые
(First Characters), Последние символы (Last Characters) и Диапа
чтобы вернуть указанное число символов с начала, с конца
зон (Range) или с середины текстовой строки, варианты Текст перед разделителем (Text
Before Delimiter), Текст после разделителя (Text After Delimiter) и Текст
чтобы вернуть текст
между разделителями (Text Between Delimiters) -
Длина
символы
с помощью разделителей;
•
Выполнить анализ
(Parse ).
Этот параметр позволяет извлечь строки и столбцы из текста формата
XML
илиJSОN.
♦
Раздел Столбец «Количество»
(Number Column)
содержит параметры, которые
можно использовать с числовыми столбцами. Выделите столбцы, которые вам
надо преобразовать, и выберите один из следующих параметров:
•
Статистика
(Statistics).
Этот параметр заменяет столбцы запроса на единый статистический показа
тель, полученный из выбранного столбца (см. разд.
15.19). Выбрать здесь
(Minimum), Максимум
можно один из вариантов: Сумма (Sum), Минимум
(Maximum), Медиана (Median), Среднее (Average), Стандартное отклоне
ние (Standard Deviation), Посчитать значения (Count Values) и Посчитать
разные значения (Count Distinct Values);
•
Стандартный
(Standard).
Этот параметр преобразует выбранный столбец, используя стандартные ма
тематические операции: Добавить
(SuЬtract),
Разделить
(Divide),
(Add),
Умножить
Целочисленное
(Multiply), Вычесть
(lnteger-Divide),
деление
446
1
Глава
15
Остаток от деления
(Modulo ),
Процентный
(Percentage) и Доля (Percent Ot).
Например, вы можете задействовать этот параметр, чтобы добавить число
к каждому значению в столбце или умножить каждое его значение на опре
деленный коэффициент;
•
Научный
(Scientific ).
Этот параметр позволяет выполнить следующие операции: Абсолютное зна
чение
(Absolute Value),
степени
Показатель
(Power), Квадратный корень (Square Root),
(Exponent), Логарифм (Logarithm) и Факториал
Степень
(Factorial);
•
Тригонометрические
(Trigonometry).
Этот параметр позволяет выполнить следующие тригонометрические опера
ции: Синус
(Sine), Косинус (Cosine), Тангенс (Tangent),
(Arccosine) и Арктангенс (Arctangent);
Арксинус
(Arcsine),
Арккосинус
•
Округление
(Rounding).
Используйте этот параметр для округления значений с увеличением до сле
дующего
целого
числа
или
с уменьшением до
предыдущего
целого
числа.
Здесь есть также возможность указать, до скольких десятичных знаков необ
ходимо округлить значение.
•
Информация
(Information).
Используйте этот параметр, чтобы вернуть знак каждого значения или ука
зать, является ли оно положительным или отрицательным.
♦
Раздел Столбец «Дата и время»
(Date & Тime Column)
содержит параметры для
столбцов даты и/или времени и продолжительности. Выделите столбец и выбе
рите в зависимости от типа данных один из следующих параметров:
•
Дата
(Date ).
Этот параметр вы можете использовать со столбцами, которые включают
компонент даты. Например, с его помощью можно вернуть возраст, год,
квартал, месяц, неделю, день и самую раннюю или последнюю дату;
Параметр Возраст (Age) возвращает разницу в днях между выбранной датой и
сегодняшним днем. Для преобразования возраста в днях в количество полных
лет выполните команду редактора Power Query Преобразование (Transform) 1
(Date & Time Column) 1 Продолжительность (Dura(Total Years) - чтобы преобразовать продолжительность
в годы, после чего выполните команду Преобразование (Transform) 1 Столбец
«Количество» (Number Column) 1 Округление (Rounding) 1 Округление с умень
шением (Round Down) - чтобы округлить результат с уменьшением до преды
Столбец «Дата и время»
tion)
1
Всего лет
дущего целого числа.
•
Время
(Time).
Этот параметр предлагает варианты, которые вы можете использовать со
столбцами, содержащими компонент времени. Например, здесь можно вер
нуть часы, минуты и секунды, а также самое раннее или позднее время;
Power Query
•
Продолжительность
1
447
(Duration).
Этот параметр предлагает варианты, которые вы можете использовать вместе
с типами данных Продолжительность. Например, вернуть годы, дни, часы,
минуты или секунды. Здесь также можно умножить или разделить продолжи
тельность на указанное значение или вернуть такие статистические показате
ли, как сумма или среднее.
♦
Раздел Структурированный столбец
(Structured Column)
которые
со
можно
использовать
вместе
содержит параметры,
структурированными
данными
-
на
пример, столбец, возвращающий таблицу для каждого значения. Информацию
о работе с этим типом данных вы найдете в разд.
15.18.
Пояснение
В этом разделе приведено описание множества параметров вкладки Преобразова
ние
(Transform)
редактора
в целом, некоторые
Power Query.
Некоторые параметры преобразуют данные
преобразуют данные в столбцах, в то время как другие при
-
менимы лишь к конкретным типам данных.
Как правило, параметры заменяют значения в столбцах, которые они преобразуют.
Если вам нужно сохранить исходные значения столбца и добавить новый столбец,
содержащий
(Transform)
преобразования,
используйте
вкладку Добавление столбца
15.15. Разделяем
вместо
(Add Column)
вкладки
Преобразование
(см. разд.
15.20).
и объединяем столбцы
Задача
Вы хотите разделить столбец по разделителю, количеству символов, позициям,
регистру или типу символов или объединить столбцы.
Решение
Чтобы разделить столбцы, выделите столбец, выполните команду редактора
Query Главная (Ноте) Преобразование (Transform) Разделить
Column) и воспользуйтесь одним из следующих вариантов:
1
♦
По разделителю (Ву
1
столбец
Power
(Split
Delimiter).
Этот параметр разделяет значения с помощью указанного вами разделителя
-
такого как пробел. Например, вы можете использовать этот параметр, чтобы
разделить значение Глеб Богданов на два столбца: первый будет содержать значе
ние Глеб, а второй
-
значение Богданов. Столбцы допускается разделять, исполь
зуя крайние левые, крайние правые или все вхождения разделителя. Расши
ренные
параметры
этого
варианта
позволяют
указать,
разделять
ли
значения
на столбцы (по умолчанию) или строки и, если необходимо, на сколько столб
цов;
448
♦
1
Глава
15
По количеству символов (Ву
Number of Characters).
'Этот параметр разделяет значения на фрагменты указанной длины. Вы можете
разделить значения один раз
вправо
-
-
как можно дальше влево или как можно дальше
или несколько раз. Расширенные параметры этого варианта позволя
ют указать, разделять ли значения на столбцы (по умолчанию) или строки
и, если необходимо, на сколько столбцов;
♦ По позициям (Ву
Positions).
Этот параметр разделяет значения на фрагменты в указанных вами позициях.
Например, при вводе для позиций значения О,
ся в один столбец, а оставшиеся символы
2
первые два символа помещают
в другой. Расширенные параметры
-
этого варианта позволяют указать, разделять ли значения на столбцы (по умол
чанию) или строки;
♦
По переходу со строчных на прописные (Ву
Lowercase to Uppercase).
Этот параметр разделяет значения по месту перехода от строчных букв на про
писные. Например, он разделяет значение ГлебГригорьевичБогданов на три столбца:
первый столбец содержит Глеб, второй
♦
-
Григорьевич, а третий
По переходу с прописных на строчные (Ву
-
Богданов;
Uppercase to Lowercase).
Этот параметр разделяет значения по месту перехода от прописных букв на
строчные. Например, он разделяет значение ГлебГригорьевичБогданов на четыре
столбца: первый столбец содержит г, второй
-
лебГ, третий
-
ригорьевичБ, а чет
вертый~· огданов;
♦
По переходу с цифр на не цифры (Ву
Digit to Non-Digit).
'Этот параметр разделяет значения по переходу с цифровых символов на нециф
ровые. Например, он разделяет значение NE123SW456 на два столбца: первый стол
бец содержит NE123, а второй
♦
-
SW456;
По переходу с не цифр на цифры (Ву
Non-Digit to Digit).
'Этот параметр разделяет значения по переходу с нецифровых символов на циф
ровые. Например, он разделяет значение NE123SW456 на три столбца: первый стол
бец содержит NE, второй
-
12зsw, а третий
-
456.
Чтобы объединить столбцы:
1.
Выделите столбцы, которые нужно объединить, в том порядке, в котором их
требуется объединить.
2.
Чтобы создать новый объединенный столбец, который заменяет столбцы, вы
бранные вами на шаге
1, выполните команду редактора Power Query Преобра
(Transform) 1 Столбец «Текст» (Text Column) 1 Объединить столбцы
(Merge Columns). Чтобы создать новый столбец и сохранить при этом выделен
ные вами столбцы, выполните команду Добавление столбца (Add Column)
Из
текста (From Text) Объединить столбцы (Merge Columns).
зование
1
1
3.
При появлении запроса выберите символ для разделения значений (по умолча
нию
None
(Нет)), укажите имя нового столбца и нажмите кнопку ОК, чтобы
создать столбец.
1 449
Power Query
Пояснение
Excel может оказаться сложной задачей,
вашей версии Excel и применяемого способа разделе
Power Query предлагает для этого гибкую альтерна
Разделение столбцов с помощью функций
решение которой зависит от
ния данных. Использование
тиву.
При объединении столбцов вы можете выбрать, надо ли вам заменять или сохра
нять объединяемые столбцы . Чтобы заменить столбцы , пользуйтесь параметра
(Transform), а чтобы сохранить
столбца (Add Column) (см. разд. 15.20).
ми вкладки Преобразование
вкладки Добавление
15.16. Выполняем
их
-
параметрами
сведение столбцов
Задача
У вас есть запрос, и вы хотите использовать уникальные значения столбца в каче
стве заголовков для новых столбцов и включить агрегации другого столбца для их
значений.
Решение
Предположим, в вашем запросе присутствуют столбцы Продаве ц, компания и Сумма ,
и вы решили заменить столбцы Компания и Сумма на новый столбец для каждого зна
чения Комп а ни я и вычислить сумму значений Количество для каждого из них.
Сделать это можно, использовав параметр Столбец сведения
(Pivot Column):
Выделите столбец Компания .
1.
Выполните
2.
команду
Столбец «Текст»
редактора
(Text Column)
Power Query
1
Преобразование
Столбец сведения
(Transform) 1
(Pivot Column), чтобы от
крыть одноименное диалоговое окно .
Из раскрывающегося списка Столбец значений
3.
(Values Column)
выберите зна
чение Сумма.
При необходимости разверните раздел Расширенные параметры
4.
чтобы выбрать конкретное агрегированное значение
-
Нажмите кнопку ОК, чтобы преобразовать данные (рис.
5.
L::J 12 Сrарруб11ь
[!П. 1 д8с Прод,11ищ
~
12
Котокафе
(Advanced),
по умолчанию это Сумма.
15.8).
Е1
.;, 12 Мангустми
29879,15
1
Валентин Белов
3987,91
6753,13
2
Георn<Й Дуее
6743,31
89441,57
пи//
3
Кирим Симонов
null
null
6834, 74
4
Хаврон Ипатов
783,14
8103,14
7683,06
5
Юп11я С~монова
345,23
3957,49
8194,14
Рис.
15.8.
Сведение столбца Компания, вычисление значения Сумма для каждого продавца
450
1
Глава
15
Пояснение
В этом разделе показано, как преобразовать данные, чтобы они были организованы
аналогично базовой сводной таблице
в
Excel
Excel.
Это поможет вам избежать загрузки
всего набора данных, когда вам нужно увидеть лишь суммарные значения.
Альтернативным способом расчета агрегированных значений является использова
ние параметра Группировать по
(см.разд.
(Group
Ву) вкладки Преобразование
(Transform)
15.14).
15.17. Отменяем
сведение столбцов
Задача
У вас есть запрос, и вы хотите преобразовать значения столбцов в пары атрибут
значение.
Решение
Предположим, в вашем запросе присутствуют столбцы Старрубль, Котокафе и Мангу
стин, которые содержат числовые значения, и вам нужно заменить их на столбцы
камлания и Сумма, чтобы более эффективно использовать набор данных со сводной
таблицей (см.разд.
11.1).
Сделать это можно,
использовав параметр
Отменить свертывание столбцов
(Unpivot Columns):
Выделите столбцы Старрубль, Котокафе и Мангустин.
1.
Выполните
команду
Столбец «Текст»
редактора
(Text Column)
Power Query
1
Преобразование
(Transform)
(Unpivot
столбцов (Unpivot
1
Отменить свертывание столбцов
Columns) Отменить свертывание только для
Only Selected Columns) - Power Query заменит
1
выбранных
выбранные столбцы на столбец
Атрибут (содержащий компании) и столбец значение (содержащий суммы).
2.
Присвойте столбцу Атрибут имя Компания, а столбцу Значение -
На рис.
15.9
имя Сумма.
показан эффект от отмены сведения данных до переименования столб
цов Атрибут И Значение.
Пояснение
Отмена сведения столбцов набора данных иногда необходима, чтобы упростить его
использование со сводными таблицами. Однако преобразование данных с помо
щью формул
Excel
может потребовать много времени и усилий. В этом разделе по
казано, как отменить сведение данных с помощью
упрощает задачу.
Power Query,
что, как правило,
PowerQuery
(m. д8с Продавец
[:] 1.2 з»ачеяие
[:] д8с Атркбvт
[:]
Валентин Белов
Старру6ль
2
Валентин Белов
Котокафе
3
Валентин Белов
Манrусткн
29879,25
4
Г еорrий Дуев
Старру6ль
6743,31
89441,57
3987,92
6753,23
5
Георгий Дуев
Коrокафе
б
Кирим СимонО/1
Манrусткн
7
Ха!!рОн Ипатов.
Старрv6пь
8
Хаврон Ипатов.
Кото1<афе
8203,24
9
Ха врон И патов.
Манrусткн
7683,06
10
ЮnиR Симонова
Старру6ль
345,23
11
Юли RСимонова
КотО1<афе
3957,49
12
ЮлиR Симонова
Манrусткн
8294,24
Рис.
15.9.
451
6834,74
783,24
Отмена сведения столбцов Старрубль, Котокафе и Мангустин
15.18. Преобразуем
структурированные столбцы
Задача
У вас есть столбец, содержащий запись, таблицу или список данных, которые вы
хотите развернуть.
Решение
Структурированный столбец содержит структурированные данные вместо данных
конкретного типа. Существуют три основных типа структурированных данных:
♦
Список
(List).
Этот тип хранит список значений.
♦
Запись
(Record).
Этот тип хранит набор именованных полей и устанавливает связь с первичными
данными запроса «один к одному».
♦
Таблица (ТаЫе).
Этот тип хранит таблицу со строками и столбцами и устанавливает связь с пер
вичными данными запроса «один ко многим».
На рис.
15 .1 О
показан пример предварительного просмотра таблицы со структури
рованными табличными данными в столбце
Data.
Когда вы получаете данные из источника данных,
Power Query
извлекает их в виде
структурированных данных и автоматически распределяет по столбцам. Однако
при некоторых обстоятельствах, например при объединении запросов (см.разд.
15.30),
вам придется сделать это самим. Чтобы распределить структурированные данные:
452
Глава
15
Е1
li!т д8с Name
2
li!
Б;.J д8с ltem
Oatil
Продажи
Table
Продажи
ДоnПродажи
Table
ДоnПродажи
Компании
3
Компании
Table
4
Продажи!
ТаЬlе
Продажи
5
ДоnПродажи2
ТаЬlе
ДопПродажи
б
Комnании3
ТаЬlе
Компании
Рис.
15.10.
Столбец
Data
содержит тип структурированных данных ТаЫе (Таблица)
1.
Выделите структурированный столбец.
2.
Выполните
команду
Е1
редактора
Power Query Преобразование (Transform) 1
(Structured Column) 1 Развернуть (Expand) или
нажмите кнопку Развернуть (Expand) Ба, расположенную справа от заголовка
столбца, и выберите вариант Развернуть (Expand).
Структурированный столбец
3.
Отметьте все столбцы, которые собираетесь добавить в запрос, снимите выделе
ние с тех, которые добавлять не нужно, и (что необязательно) введите префикс
для имен столбцов.
4.
Нажмите кнопку ОК, чтобы добавить столбцы.
Вы также можете включить агрегированные значения таблицы:
1.
Выделите структурированный столбец.
2.
Power Query Преобразование (Transform) 1
(Structured Column) 1 Агрегация (Aggregate) или
нажмите кнопку Развернуть (Expand) Ба, расположенную справа от заголовка
столбца, и выберите вариант Агрегация (Aggregate).
Выполните
команду
редактора
Структурированный столбец
3.
Отметьте все столбцы, которые собираетесь включить в агрегацию.
4.
Укажите агрегированные значения для каждого столбца, для чего наведите кур
сор мыши на каждый из них, щелкните на стрелке раскрывающегося списка
справа и выберите параметры, которые следует отобразить.
5.
Нажмите кнопку ОК, чтобы добавить агрегации.
Пояснение
В этом разделе приведены способы преобразования структурированных столбцов.
Вы можете воспользоваться ими, если, к примеру, объединили два запроса и реши
ли распределить данные второго запроса по столбцам.
15.19. Возвращаем значение или
список
Задача
У вас есть запрос, и вы хотите использовать его, чтобы вернуть список значений
или одно значение.
Power Query
1
453
Решение
Предположим, в вашем запросе присутствует столбец Продавец, и вам надо преобра
зовать его в список
в
Excel
-
последовательность значений, которую можно загрузить
и на которую могут ссылаться другие запросы,
фильтровать другой запрос (см. разд.
и выполнив команду редактора
столбец
(Any Column)
1
например, чтобы от
-
Сделать это можно, выделив столбец
15.31).
Преобразование
Power Query
Преобразовать в список
(Transfom1)
(Convert to List).
1
Любой
Создав список, вы можете его обработать, использовав параметры контекстной
вкладки Средства для списков
мер,
удалить
повторяющиеся
(List Tools)
значения,
1
Преобразование
отсортировать
их
или
(Transform).
Напри
применить для
вы
полнения статистических операций.
Запрос может также возвращать одно значение
-
например, статистическую свод
ку, число строк в запросе или значение в конкретной ячейке. Чтобы вернуть стати
стические показатели, выделите столбец, по которому вам надо их рассчитать, вы
полните команду редактора
«Количество»
показатели.
(Transform)
Power Query Преобразование (Transform) Столбец
(Number Column) 1 Статистика (Statistics) и выберите требуемые
Чтобы
1
вернуть
Таблица (ТаЫе)
1
число строк, выполните
1
Считать строки
команду Преобразование
И наконец, вы може
(Count Rows).
те вернуть значение в конкретной ячейке, щелкнув на нем правой кнопкой мыши и
выбрав из контекстного меню пункт Детализация
(Drill Down).
Пояснение
В этом разделе показано, как преобразовывать запрос, чтобы он возвращал список
значений, а также рассмотрены способы возврата одного значения. Возврат значе
ния или списка из запроса может пригодиться, если, к примеру, вам нужно извлечь
одно или несколько значений, на которые могут ссылаться другие запросы и кото
рые они могут использовать (см. разд.
15.23).
Польза применения этого решения наглядно видна в случае фильтрации запроса
с использованием значения в ячейке
в этом разделе метод Детализация
Excel. Вы можете задействовать упомянутый
(Drill Down) - чтобы получить значение ячей
ки, а затем воспользоваться рекомендациями разд.
15.31 -
чтобы отфильтровать
запрос по этому значению.
15.20. Добавляем
новые столбцы
Задача
У вас есть запрос, и вы хотите добавить в него новые столбцы.
Решение
Вкладка Добавление столбца
(Add Column)
редактора
Power Query
включает мно
жество параметров, позволяющих добавлять новые столбцы, сохраняя при этом
исходные.
454
1
Глава
15
Разделы этой вкладки Из текста
времени
(From Date & Time)
(From Text),
Из числа
(From Number)
и Из даты и
содержат параметры, аналогичные содержащимся
в разделах Столбец «Текст» (Text Column), Столбец «Количество» (Number
Column) и Столбец «Дата и время» (Date & Time Column) вкладки Преобразова
ние (Transform) (см.разд. 15.14). Основные отличия заключаются в следующем:
♦
использование параметров вкладки Добавление столбца
(Add Column) сохраня
(Transform) их
ет исходные столбцы, в то время как вкладка Преобразование
заменяет;
♦ задействовать параметры пункта Статистика
Number)
(Statistics)
раздела Из числа
вы сможете, только если выберете несколько столбцов
(From
например,
-
для расчета их среднего для каждой строки;
♦
применять математические операции к нескольким столбцам можно, обратив
шись к параметрам пункта Стандартный
Number).
раздела Из числа
(From
Так, если вы выделите два числовых столбца и выполните команду
Добавление столбца
(Standard)
(Standard)
1
Добавить
(Add Column) 1 Из числа (From Number) 1 Стандартный
(Add), то Power Query добавит новый столбец, содержа
щий сумму каждой строки;
♦ пункты Дата
(Date), Время (Time) и Продолжительность (Duration) раздела Из
(From Date & Тime) включают параметры Вычесть (Subtract),
даты и времени
которые можно использовать для вычисления разницы между двумя столбцами
даты/времени или продолжительности,
-
например, чтобы рассчитать разницу
в днях между двумя датами.
Раздел Общие
(General)
вкладки Добавление столбца
(Add Column)
включает сле
дующие параметры:
♦
Создать дубликат столбца
(Duplicate Column).
Этот параметр копирует выбранный в текущий момент столбец, включая его
значения;
♦
Столбец индекса
(Index Column).
Этот параметр добавляет новый столбец, содержащий значения индексов, кото
рые вы можете использовать для поддержки других преобразований, основан
ных на позиции строки. Выберите здесь вариант От О
чтобы значения индекса начинались с О или
1,
(From
О) или От
1 (From 1) -
или вариант Настроить (Сustоm)
чтобы указать начальное значение и шаг;
♦
Столбец из примеров
(Column From Examples).
Этот параметр добавляет столбец аналогично инструменту Мгновенное запол
нение
(Flash Fill)
(см.разд.
♦ Условный столбец
Этот параметр
(см.разд.
15.22);
15. 21);
(Conditional Column).
создает столбец,
используя
один
или
несколько
критериев
Power Query
♦ Настраиваемый столбец
♦
(см. разд.
455
(Custom Column).
Этот параметр позволяет добавлять новый столбец с помощью М-кода
Query
1
Power
15. 2 3);
Вызвать настраиваемую функцию
(Invoke Custom Function).
Этот параметр добавляет новый столбец, вызывая созданную вами пользова
тельскую функцию (см.разд.
15.26).
Пояснение
В этом разделе представлено описание параметров вкладки Добавление столбца
(Add Column)
редактора
Power Query.
Как правило, эти параметры добавляют
новые столбцы, сохраняя исходные. Если вам нужно, чтобы новые столбцы заме
няли исходные, либо вручную удалите их после добавления нового столбца, либо
используйте параметры, описанные в разд.
15.21. Добавляем
15.14.
столбцы, основанные на примерах
Задача
У вас есть запрос, и вы хотите добавить новый столбец с помощью ввода примеров,
которые
Power Query
может попробовать сопоставить с шаблоном.
Решение
Предположим, в вашем запросе присутствует столбец Продавец, содержащий имена
и фамилии, и вам нужно создать новый столбец, который будет отображать имена
в формате фамилия
имя. При этом, например, Георгий
Дуев превращается в Дуев
Георгий, Юлия Симонова становится Симонова Юлия И т. д.
Сделать это можно, применив параметр Столбец из примеров
(Column From
Examples), который работает аналогично инструменту Excel Мгновенное заполне
(Flash Fill) (см.разд. 1.14), - вы помещаете в первые несколько строк примеры
результатов, которые вам нужны, и если Power Query определит шаблон, то запол
ние
нит остальные строки.
1.
Для сопоставления ввода с шаблоном с использованием определенного столбца
или столбцов (в нашем примере столбца Продавец) выделите столбец (столбцы) и
выполните команду Добавление столбца
Столбец
из
примеров
(Add Column)
(Column From Examples)
Из
1
1
Общие
(General) 1
(From
выделения
Selection).
Для сопоставления с шаблоном с использованием всех столбцов выполните
команду Добавление столбца
примеров
(Add Column) 1 Общие (General) 1 Столбец
(Column From Examples) Из всех столбцов (From All Columns).
Какой бы вариант вы ни выбрали,
Power Query
вставит новый столбец.
из
Глава
456
2.
15
Введите в новый столбец несколько примеров значений. Так, если вы на шаге
1
выбрали столбец Продавец, значения в первых двух строках которого Юлия Симонова
и Валентин Белов, вам надо ввести в первую строку значение Симонова Юлия, а
во вторую
3.
Когда
-
значение Белов Валентин.
Power Query
определит шаблон, он предложит значения для оставшихся
строк. Если эти предложения неверны, добавляйте еще примеры значений, пока
он не определит правильный шаблон. Вы также можете отредактировать от
дельное значение, выполнив двойной щелчок мышью на его ячейке.
4.
Если Power Query
<Ctrl>+<Enter> или
верно определил
шаблон, нажмите комбинацию клавиш
кнопку ОК, чтобы принять значения.
На рис. 15 .11 показан случай использования параметра Столбец из примеров
(Column From Examples) с примерами значений в первых двух строках столбца
Пользовательский и предложениями Power Query для остальных строк.
о
[и Добавить столбец И3 примеров
ВБедите примеры значений, чтобы создать столбец (чтобы применить. наж,,•ите клаБиш ...
Преобразовйты
let sрlitПродавец = Splitter.SplitTextВyDelimiter(" •, QuoteStyle.None)([Пpoд, ..
ок
А8е Продавец
uБ. А8е Номер с.чета
СЧООООl
Бd
ПолЬ3оватеnы:кий
Юлия Симонова
Симонова Юлия
Белов Валемтин
2
СЧОООО2
Валентин Белов
3
счооооз
Георп,й Дуев
4
СЧОООО4
Хаврон Ипатов
"1па
5
счооооs
Кирим Симонов
С
б
СЧООООб
Юnия Симонова
С uон )Ба Юлt,t
1"1raтos Хаврон
7
СЧОООО7
Хаврон Ипатов
8
счооооэ
Георп,й Дуее
Валентм н Белов
9
СЧОООО9
10
СЧООО10
Валентм н Белов
11
СЧООО11
Хаврон Ипатов
12
СЧООО12
Юлия Симонова
13
СЧООО13
Георгий Дуее
Рис.
15.11.
Orмei<a
os
о
Хаерон
sКи
Применение параметра Столбец из примеров
Пояснение
Добавление столбца с использованием примеров значений может оказаться удоб
ным, если для преобразования данных необходимо выполнить несколько шагов,
или если вам нужна помощь в выборе подходящего параметра. В этом разделе при
веден пример использования этой функции.
Power Query
15.22. Добавляем
1
457
условный столбец
Задача
У вас есть запрос, и вы хотите добавить в него новый столбец, значения которого
зависят от выполнения одного или нескольких условий.
Решение
Предположим, в вашем запросе присутствует столбец Компания, и вам нужно доба
вить новый столбец, значения которого равно
если это компания котокафе, и
1,
если это компания старрубль,
2,
всех остальных значений.
3 для
Чтобы это сделать:
1.
Выполните команду
(General)
2.
1
Power Query Добавление столбца (Add Column)
(Conditional Column).
1
Общие
Условный столбец
(New column name) открывшегося диалогового
(Add Conditional Column) введите назва
например, Код компании (рис. 15.12).
В поле Имя нового столбца
окна Добавление условного столбца
ние нового столбца
-
х
Добавление условного столбца
Добавьте уСJ1овный столбец. который вычисляется ю друrИI( сrо.лбцов или эначенt1~.
Иwfll ноеоrо сто111бца
Код коt.<1nани~
Значенме
On~arop
Имйсто1tбца
Ес11и
•
Ко-.nания
~~
Вы•од
Q)
То
• J1 Старруб,ь
~~ •
0
~~,.
1
Кото~фе
В nротманом ~е (1)
~ ..
3
Рис .
3.
15.12. Диалоговое
Используйте строку Если
(lf),
окно Добавление условного столбца
чтобы указать первое условие и соответствующее
ему значение, которое требуется добавить в новый столбец. Так, в нашем при
мере из раскрывающегося списка Имя столбца
(Column Name) выберите значе
(Operator) - вариант
ние Компания, из раскрывающегося списка Оператор
Равно
(Equals),
(Output)- 1.
4.
в поле Значение
(Value)
введите Старрубль, а в поле Вывод
Для указания второго условия нажмите кнопку Добавить предложение
Clause),
которая добавит строку Иначе
(Else lf).
(Add
Выберите из раскрывающегося
458
1
Глава
15
списка Имя столбца
раскрывающегося
списка Оператор
Значение
(Column Name) значение Компания, из
(Operator) вариант Равно (Equals), в поле
введите Котокафе, а в поле Вывод (Output)-2.
5.
(Value)
Для указания третьего условия нажмите кнопку Добавить предложение
Clause ),
которая добавит новую строку Иначе
(Else It).
(Add
Введите в нее значение,
которое нужно вернуть, если ни одно из условий не выполнилось (в нашем при
мере это значение
3),
и нажмите кнопку ОК, чтобы добавить новый столбец.
Если вам понадобится удалить или переместить предложение, в диалоговом окне
Добавление условного столбца (Add Conditional Column) наведите на него кур
сор, щелкните на значке многоточия
.::::11:81,
которое появится справа от последней
строки, и выберите подходящий вариант.
Вы также можете использовать условный столбец для сравнения значений в двух
столбцах или возврата значения из столбца при выполнении условия. Например,
сравнить даты в двух столбцах дат и вернуть самую раннюю дату. Чтобы сравнить
два столбца, из раскрывающегося списка Имя столбца
(Column Name) выберите
(Value) выберите вари
имя первого столбца, в раскрывающемся списке Значение
ант Выбрать столбец
(Select
а
column),
после чего выберите имя второго столбца.
Чтобы вернуть значение столбца, в раскрывающемся списке Вывод
рите пункт Выбрать столбец
(Select а column),
(Output)
выбе
а затем выберите имя столбца.
Пояснение
Добавление условного столбца предлагает гибкий способ вставки в запрос столбца,
значения которого зависят от критерия. В некотором смысле он работает анало
гично использованию функций Ехсе\ для построения критериев ЕСЛИ и ЕСЛИМН
(см.разд.
7.5).
Примеры этого раздела описывают построение критерия с использованием кон
станты или значений столбца. Третий вариант заключается в использовании значе
ний параметров (см. разд.
15.23. Добавляем
15.24).
настраиваемый столбец
Задача
У вас есть запрос, и вы хотите добавить в него столбец, который использует фор
мулу, написанную на языке формул
Power Query М.
Решение
Предположим, вам надо добавить в запрос новый столбец, но преобразования, ко
торые вы собираетесь применить, недоступны на вкладке Добавление столбца
(Add Column).
В подобной ситуации вы можете задействовать настраиваемый
столбец, который использует формулу для извлечения значения каждой строки.
Power Query
1
459
Для добавления настраиваемого столбца :
1.
Выполните команду
(General)
2.
1
Power Query
Добавление столбца
Настраиваемый столбец
В поле Имя нового столбца
(New column name)
(Custom Column)
на Настраиваемый столбец
(рис.
(Add Column)
1
Общие
(Custom Column).
открывшегося диалогового ок
введите имя нового столбца
15 .13).
3.
В поле Настраиваемая формула столбца (Custom column formula) введите
нужную формулу и нажмите кнопку ОК, чтобы вставить столбец.
4.
Убедитесь в правильности типа данных нового столбца и измените его в случае
необходимости (см . разд.
15. 1О).
х
Настраиваемый столбец
Добавьте столбец. который вычисляется на основании других столбцов.
Имя нового столбца
ВременнаяМепса
Настраиваемая формула столбца
0
Доступные столбцы
Г
: DateТi""'. LocaШow'( j
Номер счета
Продавец
Компания
Сумма
Дата продажи
Дата оплаты
Сведения о формулах POWl!er Query
Сиктаксические ошибки не обнаружены.
..,/
Рис.
15.13. Диалоговое
окно Настраиваемый столбец с примером введенного кода формулы
Формулы настраиваемого столбца записываются с помощью языка формул
Query
М
-
Power
чувствительного к регистру языка, который вы можете использовать
для создания ссылок на запросы, столбцы и параметры . Он также предоставляет
возможность задействовать операторы и М-функции для возвращения нужных ре
зультатов . Далее приведено несколько примеров записи формул настраиваемого
столбца :
♦
DateTime. LocalNow()
Эта функция помещает в столбец текущую дату и время . Она представляет со
бой М-эквивалент использования функции ТдАТА () в
♦
Excel ;
[ Сумма ]*Коэффицие н т
Эта
функция
(см.разд.
умножает
15.24);
значения
в
столбце
Сумма
на
параметр
Коэффициент
460
♦
1
Глава
15
[Продавец]=ИмяПродавца
Эта функция проверяет, равно ли каждое значение в столбце Продавец запросу
ИмяПродавца, который возвращает одно значение (см.разд.
♦
15.19);
List.Contains(ИмeнaПpoдaвцoв; [Продавец])
Эта функция проверяет, содержит ли запрос ИменаПродавцов (возвращает список,
см. разд.
значение из столбца Продавец.
15. 19)
Вы можете добавить столбец в формулу, выбрав его из списка Доступные столбцы
(AvailaЫe
columns)
диалогового окна Настраиваемый столбец
(Custom Column), -
выполните на имени столбца, который нужно добавить, двойной щелчок мышью
или выделите его и нажмите кнопку Вставить
В отличие от формул
;·.
:
'
Excel,
язык формул
(lnsert).
Power Query
М чувствителен к регистру.
Убедитесь, что вы ввели все формулы правильно, иначе код отобразит синтакси-
. ческую ошибку.
Пояснение
В этом разделе показано, как добавлять в запрос столбец с помощью языка формул
Power Query М. Это может пригодиться
Query не предоставляет в готовом виде.
вам для преобразований, которые
Чтобы узнать больше об использовании языка формул
перейдите
в диалоговом окне Настраиваемый столбец
Сведения
о формулах
Power Query М,
(Custom Column) по ссылке
Power Query (Learn about Power Query formulas).
Power
Дополнение
Если вам нужно написать более сложную формулу или ту, которую можно будет
повторно использовать в нескольких запросах, задумайтесь о применении пользо
вательской функции (см. разд.
15.24. Используем
15.25
и
15.26).
параметры
Задача
Вы хотите присвоить постоянной величине имя, чтобы ссылаться на нее по этому
имени в условном столбце или коде или использовать ее для фильтрации строк.
Решение
Предположим, вы используете в нескольких столбцах или запросах имеющееся
у вас значение
-
например, коэффициент или текстовую строку, и вам надо иметь
возможность ссылаться на это значение по имени
фиксировать его в запросах,
лять каждый запрос.
-
-
вместо того, чтобы жестко
ведь если значение изменится, вам придется обнов
Power Query
Достичь этого можно, добавив значение в виде параметра
-
1
461
постоянной величи
ны, на которую вы сможете ссылаться по имени в условных столбцах, фильтрах,
настраиваемых столбцах и коде:
1.
2.
3.
(Home) 1 Параметры (Parameters) 1 Управление
(Manage Parameters) 1 Создать параметр (New Parameter).
Выполните команду Главная
параметрами
В поле Имя (Name) открывшегося диалогового окна Управление параметрами
(Manage Parameters) введите название параметра - например, Коэффициент.
При необходимости введите в поле Описание
(Description)
соответствующее
описание для этого параметра.
4.
Установите флажок Требуется
его нужно сбрасывать, только если
(Required) -
значение параметра можно оставить пустым.
5.
разд.
15. 1О),
Десятичное
число
В раскрывающемся списке Тип (Туре) выберите тип данных
возвращать
должен
который
параметр,
-
например,
(см.
(Decimal Number).
6.
Параметр Предлагаемые значения
чтобы
Power Query
(Suggested Values)
определяет, надо ли вам,
предлагал значения для параметра, если вы решите его изме
Power Query (как в этом примере), выбе
(Any Value). Если надо, чтобы значения предла
нить. Если вам не нужны предложения
рите вариант Любое значение
гались из жестко заданного списка (который вы укажете, введете значения и за
дадите значение по умолчанию), выберите пункт Список значений
Values).
(List of
Если вы предпочтете предложить значения из запроса, присвойте пара
метру Предлагаемые значения
(Suggested Values)
значение Запрос
(Query)
и выберите запрос, который возвращает список.
7.
8.
В поле Текущее значение
(Current Value)
введите значение параметра (напри
мер,
вы должны заполнить это поле, если установили флажок Требует
ся
на шаге
0,25) (Required)
4.
Завершив настройку данных, нажмите кнопку ОК, чтобы создать параметр
(рис.
15.14).
Создав параметр, вы можете ссылаться на него в условных столбцах, фильтрах, на
страиваемых столбцах и коде. Так, чтобы
столбце (см. разд.
15.22),
щихся списков Значение
использовать параметр в условном
выберите вариант Параметр
(Value)
или Вывод
(Parameter)
из раскрываю
и выберите имя параметра.
(Output)
Аналогичным образом с помощью значения параметра вы можете фильтровать
данные (см.разд.
15.11), выбрав вариант Параметр (Parameter) в диалоговом окне
(Filter Rows). Чтобы сослаться на параметр в настраиваемом
(см. разд. 15.23), введите или выберите там имя параметра.
Фильтрация строк
столбце или коде
Добавив один или несколько параметров, вы можете отредактировать их значения,
выполнив команду
Управление
Parameters).
Параметры (Parameters)
Power Query Главная (Ноте)
Изменить параметры (Edit
(Manage Parameters)
параметрами
1
1
1
Здесь можно либо ввести для каждого параметра, который вам требу
ется изменить, новое значение, либо выбрать значение из раскрывающегося спи-
462
ска
Глава
-
15
если в параметре Предлагаемые значения
ант Список значений
(List of Values)
или Запрос
нить или удалить параметры, выполнив команду Главная (Ноте)
(Parameters)
1 Управление параметрами
выбран вари
(Suggested Values)
(Query). Вы также
можете изме
Параметры
1
(Manage Parameters).
х
Управление параметрами
Со~ать
х
Имя
Г козффиц"•~
l
Описание
---------
Очень еа:ж:ны~::i параметр
1
{! Тр~уется
T1,1n
Десятичн~_
чи_сп_о_ _ _·_,J
Пре,д11аrаемые эначения
/lюбО<! ,начение
_-=]
Т l!!JCyщee эначение
0,25
()((
Рис.
15.14. Диалоговое
()rме,;а
окно Управление параметрами с примером параметра
Пояснение
Использование параметров предоставляет удобный способ ссылаться на постоян
ные величины по их именам в условных столбцах, фильтрах, настраиваемых столб
цах и коде . Параметры избавляют вас от необходимости жестко фиксировать
в запросах значения, делая запросы, которые их задействуют, более удобными
в обслуживании.
Ограничение этого способа заключается в том, что параметры не могут быть
использованы
для
хранения
результатов
вычисления
или
сводного
значения,
возвращаемого запросом. Однако вы можете сослаться на имя запроса, применив
настраиваемые столбцы, функции или код (см . разд.
15.25. Создаем
15.23, 15.25 и 15.30).
пользовательскую функцию
Задача
Вы хотите написать функцию, используя язык формул
Power Query
М.
Power Query
1
463
Решение
Предположим , вы создали формулу, которая вычисляет комиссию, умножая суммы
больше
1ООО
на О, 1. Использовать эту формулу в нескольких запросах или приме
нить ее к разным столбцам можно, написав пользовательскую функцию с помощью
языка формул
Power Query
М (см . разд.
15.23).
Для создания пользовательской функции :
1.
(Data) 1 Полу
данные (Get
Получить
1
Data)
чить и преобразовать данные (Get & Transform
Data) 1 Из других источников (From Other Sources) 1 Пустой запрос (Blank
Query) или команду редактора Power Query Главная (Home) 1 Новый запрос
(New Query) 1 Создать источник (New Source) 1 Другие источники (Other
Sources) Пустой запрос (Blank Query).
Создайте пустой запрос, выполнив команду меню Ехсе\ Данные
1
2.
Присвойте функции имя , изменив имя запроса на имя функции . Так, в этом при
мере вам нужно запрос Комисси я переименовать в функцию с именем Комиссия .
3.
Выполните команду
Power Query Просмотр (View)
(Advanced Editor).
1
Подробнее
(Advanced)
1
Расширенный редактор
4.
поле
В
кода
открывшегося
(Advanced Editor)
диалогового
введите код функции (рис.
комиссию , умножая суммы больше
1ООО
на
окна
Расширенный
редактор
15.15). Например, чтобы вычислить
О, 1, следует ввести код, приведен
ный в примере , показанном далее .
5.
Завершив ввод кода, нажмите кнопку Готово
(Done).
х
о
Расшир~нный р~актор
Комиссия
Ото6ра,.,ть пара м етры •
( с у,.,.а as number) as nu11Ьer z>
let
Источник с if су,.,.а > 1000 then
с у,.,.а
f)
1
• 0.1 el se 0
in
Источник
v
Синтаксические ошибки не об н аружены.
Гсrаео
Рис .
15.15.
Пользовательская функция с примером кода
Оrмеаа
464
Глава
15
Пример: код для функции Комиссия
(сумма
as
as
numЬer)
numЬer
=>
let
Источник=
if
сумма>
1000 then
сумма*
0.1 else
О
in
Источник
Этот код работает следующим образом:
♦
первая строка: (сумма as numЬer)
as numЬer => -
определяет числовой аргумент
сумма и указывает, что функция возвращает число (numЬer);
♦
выражение let во второй строке указывает на вычисления, которые необходимо
выполнить формуле (в этом примере вычисление выполняется в третьей строке);
♦ третья строка вычисляет комиссию, умножая аргумент сумма -
1ООО ♦
если она больше
на О, 1, и присваивает результат переменной источник;
выражение in в четвертой строке указывает на возвращаемое значение функции
(в этом примере значение переменной Источник, определенное в пятой строке).
Создав функцию, вы можете проверить ее работу с помощью различных значе
ний,
-
это поможет вам убедиться, что она возвращает правильный результат: вы
берите запрос из списка запросов редактора
Power Query,
введите значение любого
аргумента (в этом примере суммы) и нажмите кнопку Вызвать
проверить функцию комиссия можно, вызвав ее со значениями
шись, что она возвращает О и
fx
500
соответственно (рис.
(lnvoke). Например,
500 и 5000 и убедив
15 .16).
Введите параметр
Ком"ссия
сумма
500
Вовt!i!о
О.истwь
functюn (сумма
Рис.
15.16.
as number) as number
Вызов пользовательской функции
Каждый раз, когда вы нажимаете кнопку Вызвать
(lnvoke), Power Query
создает
новый запрос, вызывающий функцию с указанными аргументами и возвращающий
результат. Убедившись, что функция работает правильно, вы можете удалить эти
запросы, иначе
в
Power Query
при следующем его закрытии загрузит их результаты
Excel.
Пояснение
В этом разделе описывается процесс создания пользовательских функций с исполь
зованием языка формул
Power Query М. Определив функцию, вы можете вызвать
15.16 или написав М-код (см.разд. 15.23 и 15.30).
ее, выполнив шаги из разд.
Power Query
15.26. Добавляем
465
столбец,
вызывая пользовательскую функцию
Задача
У вас есть пользовательская функция, и вы хотите использовать ее, чтобы добавить
новый столбец в запрос.
Решение
Предположим , что вы, воспользовавшись решением из ртд.
15.25,
определили
пользовательскую функцию комиссия и теперь собираетесь применить ее для вычис
ления
комиссии
по
каждой
строке
столбца
Сумма
с
размещением
результатов
в новом столбце:
1. Выберите запрос, в который решили добавить столбец, и выполните команду
редактора Добавление столбца (Add Column) 1 Общие (Geпeral) 1 Вызвать на
страиваемую функцию (lnvoke Custom Function).
2. В поле Имя нового столбца (New column name) открывшегося диалогового
окна Вызвать настраиваемую функцию (lnvoke Custom Function) введите имя
для нового столбца - например, Полученная комиссия (рис. 15.17).
3. В раскрывающемся списке Запрос функции (Function query) выберите имя
в этом примере вы должны выбрать вариант
пользовательской функции Комиссия.
4. Укажите значения или имена столбцов, которые будут использоваться для всех
в этом примере вы должны выбрать имя столбца из выпадающе
аргументов, го списка аргумента сумма, а затем выбрать столбец Сумма.
5. Нажмите кнопку ОК, чтобы вставить столбец.
х
Вь звать f-iастра~,<ваемую
ункцию
Вызов функци,1, определенной в этом файле, для каждой строки.
Имя нового столбца
По,ученная КОМ>'СС>'Я
Запрос функци>'
Ком~сс~я
сумма
•
Сумма
15.17. Пример использования диалогового окна Вызвать настраиваемую функцию : добавление
нового столбца Полученная комиссия, в который помещается результат работы функции Комиссия
Рис.
466
1
Глава
15
Пояснение
В этом разделе показано, как вызовом настраиваемой функции, которую вы пред
варительно определили, добавлять новый столбец. Такой прием предлагает удоб
ную альтернативу вставке настраиваемого столбца (см. разд.
15.23)
и вызову функ
ции в коде столбца вручную.
15.27. Дублируем
отчет
Задача
Вы хотите сделать точную копию запроса и (необязательно) применить эти шаги
к другому источнику данных.
Решение
Предположим, у вас есть запрос, получающий данные из рабочей книги
Excel
и преобразующий их, и вам надо скопировать его, чтобы применить те же преобра
зования к данным в другой рабочей книге с той же схемой.
Решить эту задачу можно, продублировав запрос и настроив его шаги.
Чтобы продублировать запрос, выберите его в списке запросов редактора
Query и
(Manage)
выполните команду Главная (Ноте)
1
Дублировать
(Duplicate)
1
Запрос
(Query)
1
Power
Управление
или щелкните на запросе правой кнопкой мы
ши и выберите в контекстном меню пункт Дублировать
(Duplicate).
Продублировав запрос, вы можете изменить источник данных нового запроса, от
редактировав его шаги Источник
ние шага Источник
(Source)
(Source)
и Навигация
(Navigation).
Редактирова
позволяет выбрать другой путь к файлу (перейдя
к файлу или использовав значение параметра) или, если необходимо, изменить тип
файла. Редактирование шага Навигация
(Navigation)
позволяет выбрать в файле
ресурс, из которого вам нужно получить данные.
Пояснение
Дублирование запроса может оказаться полезным, если вам надо сделать его копию
перед внесением изменений или применить преобразования запроса к другому ис
точнику данных. Вместо того чтобы повторно создавать запрос с нуля, вы можете
скопировать его и отредактировать его источник данных.
15.28. Ссылаемся
на запрос
Задача
Вы хотите создать новый запрос на основе шагов в другом запросе.
Power Query
1
467
Решение
Предположим, у вас есть запрос, преобразующий данные, и вы решили создать
второй запрос, который применяет все шаги первого запроса, а затем включает
дополнительные преобразования.
В этом случае вы можете создать новый запрос, который будет ссылаться на ис
ходный, используя тем самым его в качестве своего источника. Это поможет избе
жать копирования одинаковых шагов в различных местах и сделает запросы более
удобными в обслуживании.
Для создания такого нового запроса выберите запрос, на который он будет ссы
латься,
выполните команду Главная (Ноте)
(Manage)
Ссылка
1
(Reference)
1
Запрос
(Query)
1
Управление
или щелкните на запросе правой кнопкой мыши и
выберите в контекстном меню пункт Ссылка
(Reference ).
После чего переименуйте
новый запрос.
Если вам надо создать новый запрос, ссылающийся на первые несколько шагов ис
ходного запроса, их можно извлечь в новый запрос, на который потом вы сможете
ссылаться:
1.
Выберите запрос, шаги которого вам нужно извлечь.
2.
На панели Параметры запроса
(Query Settings)
щелкните правой кнопкой мы
ши на шаге, следующем сразу за теми шагами, на которые вам нужно сослаться,
и выберите в контекстном меню пункт Извлечь предыдущий
3.
В открывшемся диалоговом окне Извлечение шагов
(Extract Previous).
(Extract Steps)
введите на
звание нового запроса (того, в который вы извлекаете шаги) и нажмите кнопку
ОК
-
этим вы создадите запрос, содержащий нужные вам шаги исходного за
проса (выбранного вами на шаге
4.
1).
Выберите новый запрос, созданный вами на шаге
ная
(Home)
1
Запрос
(Query)
1
Управление
3, и
(Manage)
1
выполните команду Глав
Ссылка
(Reference),
кото
рая создаст отдельный запрос, ссылающийся на него. Теперь вы сможете ис
пользовать этот запрос, чтобы применить больше преобразований.
Чтобы увидеть зависимости между запросами, выполните команду Просмотр
Зависимости
(Dependencies)
1 Зависимости запроса
(View)
(Query Dependencies) -
1
этим вы отобразите диаграмму, показывающую все запросы, их источники данных
и все зависимости.
Пояснение
Предложенное здесь решение пригодится, если вам надо создать несколько запро
сов на основе одного и того же источника данных и применить к каждому из них
стандартный набор преобразований. Это поможет предотвратить сохранение копий
одних и тех же шагов в нескольких запросах.
468
1
Глава
15
15.29. Добавляем данные из нескольких запросов
Задача
Вы хотите создать новый запрос, который включает все строки двух или более
запросов.
Решение
Предположим, у вас есть два запроса с совпадающими именами столбцов, и вы ре
шили создать новый запрос, возвращающий все строки обоих запросов. Сделать это
можно, добавив данные в новый запрос:
1.
Выполните команду Главная (Ноте)
просы
2.
(Append Queries)
1
В полях Первая таблица
(First
3.
Объединить
(Combine) 1 Добавить за
(Append Queries as New).
tаЫе) и Вторая таблица
шегося диалогового окна Добавление
(рис.
1
Добавить запросы в новый
(Append)
(Second
tаЫе) открыв
выберите имена двух запросов
15.18).
Если вам надо добавить данные из более чем двух запросов, выберите вариант
Три таблицы или больше
(Three or more
taЫes
option)
и добавьте остальные
запросы.
4.
Нажмите кнопку ОК, чтобы создать новый запрос, после чего переименуйте его.
х
Добавление
Объединять строки из двух таблиц в одну.
ti) Две таблицы
О Три таблицы или больше
Первая табли ца
[_~~~~
-
Вторая таблица
[ ДопПродажм
---------.~1
О1(
Рис.
15.18.
Оrмена
Пример использования диалогового окна Добавление: создание нового запроса,
добавляющего данные из запросов Продажи и ДопПродажи
Новый запрос содержит все строки и столбцы из выбранных вами запросов, распо
ложенные в том порядке, в котором вы их выбрали. Он сопоставляет столбцы
с одинаковыми именами и помещает нулевые значения во все столбцы, которые он
не может сопоставить.
Power Query
1
469
Пояснение
В этом разделе показано, как добавлять данные из нескольких запросов, создавая
новый запрос. Например, вы можете использовать этот подход, чтобы добавить
строки из нескольких источников данных или разных типов файлов.
Добавить данные также можно и в существующий запрос. Для этого выберите за11рос, в который нужно добавить строки, и выполните команду Главная (Ноте)
Объединить (ComЬi11e) 1 Добавить запросы
1
(Append Quer-ies).
Дополнение
Если вам надо создать запрос, добавляющий данные из файлов в папке, обратитесь
к разд.
15.2.
Чтобы объединить связанные данные в двух запросах, обратитесь к ртд.
15.30. Объединяем данные
15.30.
из нескольких запросов
Задача
Вы хотите создать новый запрос, который объединяет два связанных запроса.
Решение
Предположим, оба имеющихся у вас запроса: Продажи и компании -
содержат стол
бец компания, и вам надо создать новый запрос, включающий все столбцы и строки
из ·запроса Продажи, добавив в него информацию о компаниях из запроса Компании по
тем строкам, которые совпадают.
Сделать это можно, объединив запросы:
1.
Выполните команду Главная (Ноте)
запросы
(Merge Queries)
1
1
Объединить (ComЬine)
Объединить запросы в новый
1
Объединить
(Merge Queries as
New).
2.
В первом раскрывающемся списке открывшегося диалогового окна Слияние
(Merge)
(рис.
15. 19)
выберите первый запрос, предназначенный для объединения
(в нашем примере запрос Продажи), -
при этом отобразится предварительный
просмотр строк и столбцов первого запроса.
3.
Во втором раскрывающемся списке выберите второй запрос, предназначенный
для объединения (в нашем примере запрос компании), -
при этом отобразится
предварительный просмотр строк и столбцов второго запроса.
4.
Выберите столбцы, которые следует использовать для сопоставления или объ
единения данных обоих запросов (в нашем примере столбец Компания).
5.
Из раскрывающегося списка Тип соединения
(Join Kind)
выберите вариант,
описывающий способ сопоставления данных. Например, вариант Внешнее со
единение слева (все из первой таблицы, совпадающие из второй)
(Left Outer
470
Глава
15
(all from the first, matching from the second))
включает все строки первого запроса
(продажи) и все совпадающие строки из второго (компании).
6.
В случае необходимости укажите, использовать ли для объединения нечеткое
совпадение или объединять только те данные, для которых найдено точное сов
падение (по умолчанию).
7.
нажмите кнопку ОК, чтобы создать запрос.
Новый запрос включает все столбцы из первого запроса и дополнительный столбец
для данных второго запроса, содержащий структурированные данные, которые вы
можете преобразовать, использовав решение из разд.
15.18.
х
Слияние
Выберите таблицы и совпадающие столбцы для создания объединенной таблицы.
Продажи
ПpoдillleЦ
Номерсчrта
Сумма
СЧООООl
Юлия Сим.оноеа
Старрубль
СЧОООО2
6aлeti№ н Белов
СЧОООО3
Дата продажи
Дата оплаты
345,23
24012022
Котокаф•
6753,13
26 011023
0102.2022
пи!/
Георги~ Дуев
Старрубль
6743,31
19012022
0102.2022
СЧОООО4
Хаорон Ипатов
Мангуспtн
7683,06
27012023
2802.2023
СЧООООS
l\><pltJ\II Сммонов
Мангуспtн
6834,74
28.012023
28.01.2023
Ко~nании
Комnаиия
ОсИДl(а
Старрубль
FAtSE
Котокаф•
ТRUE
Манrуm,н
FAtsE
Тип соединения
Внешнее соедин;.:'..".:.._слева (все И3 nе_рвой таблиц... -:-i
Исnопь.зовать нечеткие соответст5ия для с11и.яния
,
t, Параметрь~ нечетк:оrо соотв~тстsия
.,/ Выделенный фрагмент соотоетстоует строкам из первой таблицы (13 ...
Рис.
15.19.
О1(
Пример использования диалогового окна Слияние
Пояснение
В этом разделе показано, как объединять запросы путем их слияния. Такой подход
пригодится, если у вас есть данные в двух запросах, которые вам требуется объ
единить на основе совпадающих значений.
Power Query
1
471
Вы также можете объединить данные в существующем запросе. Для этого выде
лите запрос, который решили использовать в качестве основного, и выполните
команду Главная (Ноте)
1
Объединить
(Combine)
1
Объединить запросы
(Merge
Queries).
Дополнение
Чтобы добавить данные двух или более запросов, обратитесь к разд.
15.31. Редактируем
15. 2 9.
М-код запроса
Задача
У вас есть запрос, и вы хотите посмотреть или отредактировать исходный код всего
запроса.
Решение
«Под капотом»
Power Query
генерирует М-код для каждого создаваемого вами за
проса и его шагов. Посмотреть код для одного шага можно, выбрав этот шаг и рас
ширив панель формул, а чтобы просмотреть весь код, выполните команду Про
смотр
(View)
1
Подробнее
(Advanced)
1
Расширенный редактор
(Advanced Editor).
Так, для шага, на котором столбец Продавец фильтруется, чтобы вернуть только
строки для значения Юлия Симонова, код на панели формул может выглядеть сле
дующим образом:
=ТаЫе.
SelectRows ( #"Измененный
тип";
each ( [Продавец] =
В некоторых случаях вам может потребоваться
-
"Юлия Симонова"
1)
или вы просто предпочтете
отредактировать М-код вместо того, чтобы использовать команды редактора
Query.
Power
Предположим, к примеру, что вы решили изменить фильтр Продавец, чтобы
использовать значение, возвращаемое запросом ИмяПродавца, вместо жестко закоди
рованного текста. Тогда вы заменяете "Юлия Симонова" на имя запроса следующим
образом:
=ТаЫе.
SelectRows ( #"Измененный
тип";
each ( [Продавец] =
ИмяПродавца)
)
Аналогичным образом для изменения фильтра с тем, чтобы он ссылался на список
значений, возвращаемых запросом ИменаПродавцов, вам нужно обновить код сле
дующим образом:
=ТаЫе.SеlесtRоws(#"Измененный тип";еасh List.Сопtаiпs(ИменаПродавцов; [Продавец]
Завершив изменение кода, нажмите кнопку Готово
ли его в окне Расширенный редактор
если использовали панель формул.
1)
(Done) - если вы редактирова
(Advanced Editor), или клавишу <Enter> -
472
1
Глава
15
Пояснение
В этом разделе приведены способы редактирования кода запроса вместо исполь
зования команд редактора
Power Query.
Редактирование кода запросов возможно,
поскольку «под капотом» каждый запрос написан на языке формул
Power Query М.
Дополнение
В разд. 15.23 и 15.25
Power Query М.
вы также найдете примеры использования языка формул
ГЛАВА
16
и модель данных
Power Pivot
По умолчанию вы можете основывать сводную таблицу только на одной таблице
Excel,
однако это проблематично, если ваши данные находятся в нескольких свя
занных таблицах. Более того, ограничения
Excel
по количеству строк могут затруд
нить обработку больших наборов данных.
Если вы работаете в
Excel
для
зовавшись моделью данных
-
Windows,
обойти эти ограничения можно, восполь
набором связанных таблиц, сохраненных в вашей
рабочей книге. Использование модели данных дает ряд преимуществ:
♦
вы можете создать сводную таблицу, которая использует данные из нескольких
связанных таблиц;
♦
нет ограничения по количеству строк
-
вы можете импортировать миллионы
строк из нескольких источников данных;
♦
ускорение обработки больших наборов данных благодаря эффективным алгоритмам сжатия модели данных.
Решения, приведенные в этой главе, показывают, как работать с моделью данных
Excel,
используя
Power Pivot -
надстройку, которая взаимодействует с моделью
данных. Рассматриваемые здесь области включают: добавление данных в модель
данных,
определение
взаимосвязей
между
таблицами,
создание
вычисляемых
столбцов, мер и ключевых показателей эффективности (КПЭ) и использование
сводных таблиц и формул кубов для извлечения и анализа данных модели данных.
16.1. Устанавливаем Power Pivot
Задача
Вы хотите установить надстройку
данных
Power Pivot,
чтобы взаимодействовать с моделью
L:xcel.
Решение
Воспользоваться надстройкой
Power Pivot
для взаимодействия с моделью данных
рабочей книги вы сможете только, если работаете в
всего,
Excel
для
Power Pivot следует активировать:
1.
Выполните команду меню Файл
2.
Перейдите на вкладку Надстройки
(File)
1
Параметры
(Add-ins).
(Options).
Windows.
Прежде
474
3.
1
Глава
16
В поле Управление
4.
В диалоговом
в нижней части диалогового окна выберите вари
(Manage)
ант Надстройки СОМ (СОМ
Add-ins)
и нажмите кнопку Перейти
(Go).
окне Надстройки
Microsoft Power Pivot
для
СОМ (СОМ Add-ins) установите флажок
Excel (Microsoft Power Pivot for Excel) и нажмите
кнопку ок.
Пояснение
Надстройка
привносит в
Power Pivot
Excel
дополнительные функции, которые по
зволяют взаимодействовать с моделью данных рабочей книги и выполнять более
глубокий анализ данных. Более подробную информацию о том, как использовать
этот мощнейший инструмент, вы найдете в следующих разделах этой главы.
16.2. Добавляем данные
в модель данных
Задача
У вас есть данные, которые нужно проанализировать, и вы хотите добавить их
в модель данных рабочей книги.
Решение
В большинстве случаев лучшим способом добавления данных в модель данных
является использование инструмента
Power Query,
который позволяет очищать и
преобразовывать данные, прежде чем их импортировать. Как правило, для получе
ния данных с помощью
(Get Data)
Power Query
следует в мастере запросов Получить данные
выбрать вариант Загрузить в
(Load То) (см. разд. 15.1), в открывшемся
(lmport Data) (см. разд. 15.3) установить флажок
данных (Add this data to the Data Mode1) и нажать
диалоговом окне Импорт данных
Добавить эти данные в модель
кнопку ок.
Если вам надо загрузить в модель данных таблицу из текущей рабочей книги, не
преобразуя ее данные, выполните команду меню
Power Pivot I Таблицы (ТаЫеs) 1
(Add to Data Model) - таблица будет добавлена в мо
окно Power Pivot (рис. 16.1 ).
Добавить в модель данных
дель данных, и откроется
Вы также можете воспользоваться инструментами импорта
Power Pivot
для загруз
ки данных непосредственно в модель данных, не добавляя ее на рабочий лист,
выполните команду
Power Pivot
I
Модель данных
(Мапаgе), в открывшемся диалоговом окне
ная (Ноте)
1
Получение внешних данных
-
(Data Mode1) Управление
Power Pivot выполните команду Глав
(Get Extemal Data) и выберите один из
1
доступных вариантов:
♦
ИJ базы дан11ых
(From Database).
'Этот вариант позволяет импортировать данные из баз данных
Access, Analysis Services
и
Power Pivot;
SQL Server,
Power Pivot
ФаМ
rfx
Mep11t1
Формулы
Разм,тка страницы
Всrавка
Гпаекая
06мен1
в
д
~
%
Форщтиронние Сорrиро1,:,1 и
Найти
Вь~чисмни• Просмо1 р
фм~тр•~·
Т4'6АИЦI
IHfWHИX A,IIHHWX
(Номер кли
сщю,; 1 ,Ф,ШЕI ОfЫ fШ \·А ~ !
С1одн••
06новит~
Попучtние
~фер
/х
:
Power Plvot
Констру,:.тор
с
ВычиСfltНМЯ
V
AcroЬat
475
aw ,
[:]
Ключе1ые noкua,1111 ГА11н11
:,ффективностм
G32
Справа
Вид
Рецеюирование
Данные
и модель данных
•
N
•
9
2
1 Старрубль
3
2
Номuр клиента
1
Манrустин
,4
З kотоtеафе
5
6
4 НоваА Москва
_,
5 Галактика
D
Название а
1
1
Старрубль
2
3
2
3
4
5
Мангустин
4
Котокафе
Новая Мое
Галактика
9
10
11
12
13
14
15
16
17
1В
19
Рис.
♦
Из службы данных
16.1.
Добавление таблицы
Excel
в модель данных
(From Data Service ).
Этот вариант позволяет импортировать данные из канала данных
OData
(Откры
тый протокол данных);
♦
Из других источников
Этот
вариант
предлагает
Sybase, lnformix
♦
(From Other Sources).
и IВМ
множество
включая
источников,
Oracle, Teradata,
DB2;
Существующие соединения
(Existing Connections).
Этот вариант позволяет выбрать существующее соединение.
Выбрав нужный вариант, следуйте инструкциям мастера импорта данных.
Пояснение
В этом разделе объясняется, как добавлять данные в модель данных рабочей книги.
Power Query, поскольку он
Лучше всего для этой задачи использовать инструмент
позволяет очищать и преобразовывать данные, прежде чем их импортировать. За
грузив данные, вы сможете моделировать их с помощью
16.3. Управляем
соединениями данных
Power Pivot.
Power Pivot
Задача
Вы использовали надстройку
Power Pivot,
чтобы добавить данные в модель данных,
и хотите отредактировать ее соединение с исходным данными.
476
Глава
16
Решение
Когда вы добавляете данные в модель данных с помощью параметров импорта
Power Pivot
(см. ртд.
16.2), надстройка Power Pivot создает соединение с источни
ком данных. Просмотреть эти соединения можно в диалоговом окне Существую
щие соединения
(Existing Connections) (рис. 16.2), для открытия которого следует
выполнить команду Power Pivot I Модель данных (Data Model) 1 Управление
(Manage) и в открывшемся диалоговом окне Power Pivot выполнить команду Глав
ная (Ноте) 1 Получение внешних данных (Get External Data).
х
?
Существующие соединения
llыбра-.ь сущесmуоцее сое_..,._
Выберите соед1<Нение с источником д,знных. содержащим д.знные .<LЛЯ импорта .
Выберите соед1<Нение с источником д.знных :
1101 - - - -
S
Excel Кtи-а 1
_,._ Data Source • F.\Работа\Книга1.хlsх
J
Excel
Кt.w-a1
Книг а :
Power P,vot.xlsx
Продолжить выбор ...
Открыть
Измен11ть
Обновить
Уд.злить
Закрыть
Рис.
16.2.
Диалоговое окно Существующие соединения
Диалоговое окно Существующие соединения
(Existing Connections)
позволяет от
крыть соединение для повторного входа в мастер импорта таблицы, отредактиро
вать соединение, чтобы изменить его имя или другие настройки, обновить данные
или удалить соединение,
-
выделите соединение и выберите подходящие пара
метры.
Список соединений, включая соединение для модели данных, также можно увидеть
на панели Запросы и подключения
(Queries & Connections)
(рис.
16.3).
Выполните
Power Pivot и
для ее открытия команду Данные
Connections)
модель данных
1
477
(Data) 1 Запросы и подключения (Queries &
(Queries & Connections) и выберите вари
Запросы и подключения
1
ант Подключения
Просмотреть или отредактировать свойства со
(Connections).
единения вы сможете, щелкнув на нем правой кнопкой мыши и выбрав в открыв
шемся контектстном меню вариант Свойства
1 . ...
.,
А
2 1
3
.
.
в
f
'
1
Старрубль
2
Манrустин
с
..
(Properties ).
Запрос ы и подключения
Запросы
4
3
l<отокафе
5
4
Новая Москва
б
slгалактина
х
! Подключения
ПодК11ючений:
-
V
2
----
-
~ Thi sWorxbookDatэModel
Data Model
7
~ Excel Книrа1
8
9
10
11
·Рис.
16.3.
Панель Запросы и подключения
Пояснение
В этом разделе показано, как управлять соединениями с источниками данных с по
мощью инструментов импорта
Power Pivot. Чтобы изменить настойки запроса для
Power Query, воспользуйтесь рекомендациями
данных, добавленных с помощью
разд.
15.4.
16.4. Просматриваем таблицы
модели данных
и управляем ими
Задача
Вы добавили данные в модель данных и хотите просмотреть, переименовать или
удалить ее таблицы.
Решение
При импорте данных в модель данных добавляется одна или несколько таблиц, ко
торые вы можете просмотреть и которыми можно управлять с помощью представ
ления данных или диаграммы
Power Pivot.
Power Pivot I Мо
(Manage), в открывшемся диалоговом
Главная (Home) 1 Просмотр (View) и выбе
(Data View) (если он еще не выбран). Окно
Чтобы использовать представление данных, выполните команду
дель данных
1
окне
команду
(Data Model)
Power Pivot выполните
Управление
рите режим Представление данных
Power Pivot
отобразит столбцы и данные каждой таблицы, используя для них от
дельные вкладки (рис.
16.4).
478
an1,,1
FJ!)
Глава
16
~ • ,:♦
-.
ГлiJаная
"
Pow,r Pivol для Excol • Power Pivot.xlsx
Констру.:.тор
□
8
Тип данных;
Буфер
обмена
Попуче:ние
Обновить
внешних данных •
~
Ферма т:
С водная
таблица •
$ ., % '
♦~8
~6g
8
;::~~::~: ~
l ~_ Предсrаапение .дttаrрам,,ы
L
На~ТИ Вычи:11ения сре::ан~:ние
00:п Пока1ать скрытые:
mОбметь 8ЫЧИС/ltНИЯ
Просмотр
Фор1r~1атироuние
[Номер кли ...
х
Допо11ниrе11ьно
~
Номер клиента
11
0
Название
J
•
1 Старрубль
2 Мангустин
2
з
З Котокафе
4
4
5
5
Д~талиЗак!)а
з.эnись
14
•
34g3
1
Новая Москва
Галактика
Кмендарь ··1Кпие,ты r· Рвультаты Странil
'"" I
l11s5
•
1
ИI1
,1
Рис.
16.4.
Представление данных
~
.::
Power Pivot
Щелчок правой кнопкой мыши на вкладке таблицы откроет вам следующий набор
параметров:
♦
Удалить
(Delete ).
Этот параметр позволяет удалить таблицу из модели данных. Если вы добавили
данные с помощью
Power Query,
этого запрос (см.разд.
♦
Переименовать
удалить их следует, отредактировав вместо
15. 3);
(Rename ).
Этот параметр используют для переименования таблицы;
♦
Переместить
(Move ).
Этот параметр позволяет передвигать вкладки;
♦
Описание
(Description).
Этот параметр позволяет добавлять описание таблицы;
♦
Скрыть из набора клиентских средств
(Hide/Unhide from Client Tools).
С помощью этого параметра можно определить, будет ли таблица скрыта от та
ких инструментов, как сводные таблицы. Управлять отображением скрытых
таблиц в
смотр
♦
Power Pivot вы сможете, выполнив команду
(View) 1 Показать скрытые (Show Hidden);
Показать область вычисления
Главная (Ноше)
1
Про
(Show Calculation Area).
Этот параметр определяет видимость области вычисления таблицы. Вы также
можете управлять ею, выполнив команду Главная (Ноше)
Область вычисления
(Calculation Area).
1
Просмотр
(View)
1
Power Pivot
и модель данных
4 79
Чтобы использовать представление диаграммы, выполните команду
Power Pivot
(Manage) и в открывшемся диалоговом
окне Power Pivot выполните команду Главная (Home) 1 Представление диаграм
мы (Diagram View). Это представление (рис. 16.5) отображает каждую таблицу
Модель данных
(Data Model)
1
1
Управление
(с ее столбцами) в виде отдельного блока, которые можно передвигать, нажимая на
них и перетаскивая в нужное место. Вы можете здесь переименовать таблицу, вы
полнив двойной щелчок на ее метке, удалить таблицу, выбрав ее и нажав клавишу
<Del>,
а также щелчком на ней правой кнопкой мыши отобразить меню парамет
ров, аналогичное параметрам, доступным в представлении данных.
ф
IA
r+ ,;
½Г11аена,~
Power Pivot AflЯ ExceJ • Power Pivot.xls.x
Конструктор
[],
Буфер
обwена
Получение
Обновить
енеwних Дl!ННЫХ
о
м
~
Тиnд.,,1ных:
L
~
&1чиt.11енщt
Предстамение
8
s
% ' ~.& .~
Сортироекll и
фИ.11ьтрация
Найти
Д,5ННЫХ
rm
Номорклиооrа
Название
Область 8ЫЧИUltНИ~
Номор заказа
rm
Датаэаказа
□ Номор продукта
□ Номор клиооrа
l:!J
l:IJ
L'умма
L
1:!)
16.5.
_
□ Дета_,1!@акаэ.i
□ Заказ
Клиооты
~ Покаять скрытые
Проо,отр
Форматироuние
Рис.
r:t8 ПРtдстае1tен~1едиаграt.1t.1ы
Формаr
CaOДHiSR
таблиц,, •
х
о
Доnо11нtпl!11ьно
Представление диаграммы
Номор заказа
Цена продукта
Каnlt'ЮСТВО
Сумма
_ _ ____.
Power Pivot
Пояснение
Добавив данные в модель данных, вы можете просматривать ее таблицы, переиме
новывать их или удалять из модели данных, если они больше вам не нужны. В этом
разделе показано, как это сделать с помощью представления данных и диаграммы
Power Pivot.
16.5. Обновляем данные
модели данных
Задача
Вы добавили данные в модель данных и хотите обновить их, чтобы включить из
менения исходных данных.
480
1
Глава
16
Решение
Модель данных использует моментальный снимок исходных данных, поэтому при
их изменении вам необходимо обновлять данные в модели данных.
Обновить всю модель данных можно, выполнив команду Данные
(Data)
1
Запросы
(Queries & Connections) 1 Обновить (Refresh) 1 Обновить все
Power Pivot и выполнив в нем команду Главная
(Ноте) 1 Обновить (Refresh) 1 Обновить все (Refresh All). Чтобы обновить все
данные, добавленные с использованием Power Query, вы можете воспользоваться
решением из разд. 15. 5, а для обновления данных, добавленных с помощью соеди
нения Power Pivot, выберите соединение на панели Запросы и подключения
(Queries & Connections) и щелкните на значке Обновить (Refresh).
и подключения
(Refresh AII)
или открыв окно
Как и в случае с решением из разд.
15.6,
вы можете сделать так, чтобы
Excel
обнов
лял конкретные соединения каждый час или когда вы открываете рабочую книгу.
Дr1я этого щелкните правой кнопкой мыши на соединении в панели Запросы и
подключения
ва
16.3), выберите параметр Свойст
вкладку Использование (Usage) и воспользуйтесь на
в разделе Обновление экрана (Refresh Control), чтобы
(Queries & Connections)
(Properties),
выделите
стройками, имеющимися
(см. разд.
указать, когда необходимо обновлять данные.
Пояснение
В этом разде,1е показано, как обновлять данные в модели данных. Самый простой
подход заключается в использовании параметра Обновить все
(Refresh All),
позво
ляющего обновить все данные, включая сводные таблицы и запросы. Однако, если
необходимо, вы можете обновлять запросы и соединения по отдельности.
16.6. Работаем
со столбцами таблицы
Задача
У вас есть таблица в модели данных, и вы хотите переименовать столбец, скрыть
или удалить его, изменить его тип данных или применить фильтр.
Решение
Предположим, вам надо изменить столбцы таблицы, добавленной в модель данных.
Сделать это можно с помощью представления данных
Power Pivot
(см.разд.
16. 4).
Чтобы просмотреть или изменить тип данных столбца, выделите столбец, щелкнув
на нем, и выполните команду Главная (Ноте)
Тип данных
(Data Туре).
1
Форматирование
(Currency)
и
1
(Text), Дата (Date),
(Who\e Number), Валюта
доступных для управления типом данных параметров: Текст
(Decimal Number), Целое
ИСТИНА/ЛОЖЬ (TRUE/FALSE).
Десятичное число
(Formatting)
В зависимости от данных в столбце, вы найдете здесь ряд
число
Power Pivot и
модель данных
481
В зависимости от типа данных столбца вы можете отформатировать их, выполнив
команду Главная
(Home)
1
Форматирование
(Formatting)
и применив к ним про
центный или валютный формат, указав число десятичных знаков, выбрав конкрет
ный формат даты и пр.
Чтобы отсортировать или отфильтровать столбец, нажмите на стрелку раскрываю
щегося списка в заголовке столбца и выберите какой-либо из доступных вариантов.
Вы можете здесь, например, отсортировать данные в порядке возрастания или убы
вания, включить или исключить определенные значения или применить фильтр на
основе типа данных столбца. Выполнив команду Главная
фильтрация
(Sort and Filter),
(Home)
1
Сортировка и
вы получите доступ к элементам управления, с по
мощью которых сможете отсортировать данные, очистить все примененные вами
сортировки или фильтры или задействовать параметр Сортировка по столбцам
(Sort
Ьу
Column),
чтобы отсортировать один столбец по значению другого столбца.
Так, если у вас есть таблица дат (см. разд.
16.13),
содержащая столбцы для имен
месяцев и номеров месяцев, вы можете выбрать сортировку имен месяцев по их
номерам (рис.
16.6) -
чтобы январь
( 1-й
месяц) отображался перед февралем
(2-й месяц).
?
Сортировка по столбцу
х
Выберите сор,мруемый столбец и столбец. по которому бу~т ~диlЬСil сор~а
- о,сор-мру!!те имена~ по номерам~). Ще11ОiИте след),ощ)'Ю ссылку,
чтобы ознакоми,ься со аюсобом сорn,,роеки по столбцу и.з ФУ\"ОЙ табJИ!,1 .
~
Сорn,ровап,
По
Столбец
Столбец
~1Мес
_
11.1_ _ _ _ _ _ _~ v1
~ Номер Мес-
i.Как сортировать по столбцу из npyroi'\ таб1ИJЬ1 ?-!
Рис.
16.6.
ок
Использование диалогового окна Сортировка по столбцам
для сортировки одного столбца по значению другого
Чтобы переименовать столбец, либо выполните двойной щелчок на заголовке
столбца и введите новое имя, либо щелкните правой кнопкой мыши на столбце и
выберите в открывшемся контекстном меню вариант Переименовать столбец
(Rename Column).
Вы также можете использовать это контекстное меню для вы
полнения других операций
-
таких как удаление столбца, скрытие его из набора
клиентских средств (например, сводных таблиц) или переход к связанной таблице
(см. разд.
16. 7).
И наконец, вы можете переместить столбец, щелкнув на его заголовке и перетащив
его в нужное место.
Пояснение
В
этом
разделе
представлены
общие
изменения,
которые
вы
можете
внести
в столбцы таблицы модели данных, при этом основное внимание уделяется пара-
482
1
Глава
1б
метрам, доступным в представлении данных
Power Pivot.
Многие из этих парамет
ров доступны также в представлении диаграммы, но, как правило, при использова
нии этого представления сложнее увидеть их эффект.
Дополнение
В таблицу модели данных можно добавлять и вычисляемые столбцы (см.разд.
16. 7. Создаем
16. 8).
и изменяем взаимосвязи
Задача
У вас есть модель данных, содержащая таблицы, и вы хотите указать, как они свя
заны.
Решение
Предположим, ваша модель данных включает две таблицы: Клиенты и заказ -
со
держащие информацию о клиентах и сделанных ими заказах соответственно. В ка
ждой таблице имеется числовой столбец Номер
клиента, сопоставляющий данные
этих двух таблиц с тем, чтобы можно было понять, какой клиент какие заказы раз
мещал.
Когда у вас есть связанные таблицы, для них нужно задать взаимосвязь, указываю
щую, как они связаны. Так, в этом примере вам следует создать взаимосвязь, опре
деляющую, что столбец Номер клиента в таблице Клиенты соответствует столбцу Номер
клиента в таблице Заказ:
команду
1.
Power Pivot, выполнив
(Data Model) 1 Управление (Manage).
2.
Выполните в этом окне команду Конструктор
Откройте окно
Создание связи
3.
Power Pivot
(Design)
1
I Модель
Связи
данных
(Relationships)
1
(Create Relationship).
В открывшемся диалоговом окне Создание связи
(Create Relationship)
восполь
зуйтесь двумя раскрывающимися списками и укажите, для каких двух таблиц
определяете взаимосвязь. Так, в этом примере, в одном раскрывающемся списке
выберите вариант Клиенты, а в другом
4.
-
Заказ (рис.
16. 7).
В окне предварительного просмотра каждой таблицы, отображаемой в диалого
вом окне Создание связи
(Create Relationship),
выберите, какие столбцы содер
жат сопоставимые значения. В этом примере выберите для каждой таблицы
столбец Номер клиента.
5.
Нажмите кнопку ОК, чтобы создать взаимосвязь.
Создать взаимосвязь можно и с помощью представления диаграммы
(см. разд.
16.4):
Power Pivot
либо щелкните правой кнопкой мыши на таблице и в контекстном
меню выберите пункт Создание связи
(Create Relationship ),
открывающий одно
именное диалоговое окно, либо начертите линию между столбцами, содержащими
Power Pivot
и модель данных
483
х
Со,д1ни~ сl!lя:,и
Выберите взаимосвязанные теблицы и столбцы .
j Клиеюы
Номер
На:,еанме
K""""'lil
н.,-р
кnиенr.,
Сумма
01 .01 .2023 0:00:00 1
01 .01 .2023 0:00:00 2
02.01 .20230:00;1003
03.01 .2023 0:00:00 4
ОЗ. 01 . 20230 : 00:00 5
QK
08ктиеные
Рис.
16.7.
Использование диалогового окна Создание связи для определения связи
связанные данные, щелкнув на одном из них и проведя ее к другому. Так, в этом
примере, вы можете создать необходимую связь, щелкнув на столбце Номер клиента
в таблице Клиенты и протащив линию к столбцу Номер
(рис.
клиента в таблице Заказ
16.8).
Определяя взаимосвязь между двумя столбцами, убедитесь, что их типы данных
сопоставимы, иначе это может привести к ошибкам. Чтобы просмотреть или изме
нить тип данных столбца, обратитесь к разд. 16.б.
Чтобы отредактировать или удалить существующую взаимосвязь, выполните ко
манду Конструктор (Design) 1 Связи (Relationships) 1 Управление связями
(Manage Relationship), в открывшемся диалоговом окне Управление связями
(Manage Relationship) выберите связь и нажмите кнопку Изменить (Edit) или Уда
лить (Delete) в зависимости от того, какое действие собираетесь выполнить.
Отредактировать взаимосвязь также можно, выполнив двойной щелчок мышью на
связи в представлении диаграммы, а удалить
лить
(Delete ),
-
выделив ее и нажав кнопку Уда
либо щелкнув на связи правой кнопкой мыши и выбрав необходимые
варианты в открывшемся контекстном меню.
Альтернативой удалению связи является ее отключение
-
у этого действия тот же
эффект, что и при удалении связи, но оно упрощает ее последующее восстановле-
484
Глава
16
ние. Чтобы отключить связь, отредактируйте ее, а затем в диалоговом окне Изме
нение связи
(Edit Relationship)
сбросьте флажок Активные
(Active)
или щелкните
правой кнопкой мыши на связи в представлении диаграммы и выберите пункт
Пометить как неактивную
ф
IIJI
~
+,
Главная
(Mark as Inactive ).
Powe, Pivot дпя Exccl • Р~ Pivot.xlsx
-.
Конструктор
С:
Б~fфер
...
06ноеить
внешних данных "
Сводная
I
фипьтрацкя ..
[j
16.8.
Номер зatcma
--
_ _ _ _~
,- ·l==rm~Дmа
~_заказа
r:n
Рис.
•
Заказ
rm
rm Название
1Щ
Форматирование: Сортироеu и Найти Вычиспе:ни.я Прос~•
таблица ...
mJКrмoon,i
х
,., .
%
Получение:
обwе:на
о
Доnолнитv~ьно
Сумма
Взаимосвязь между двумя таблицами в представлении диаграммы
Пояснение
Если в вашей модели данных присутствуют две или более как-либо связанные таб
лицы, вы должны указать, как они связаны, определив взаимосвязи. Наличие уста
новленных взаимосвязей важно, поскольку они влияют на вычисления (например,
на отображаемые в сводных таблицах), а если взаимосвязи не установлены, ваша
модель данных может возвращать неправильные результаты.
В этом разделе показано, как создавать взаимосвязи и управлять ими с помощью
Power Pivot.
Если вы не активировали
Power Pivot, то можете создавать взаимосвя
(Data) 1 Работа с данными (Data
зи и управлять ими, выполнив команду Данные
Tools)
1
Отношения
(Relationships).
16.8. Добавляем
вычисляемый столбец
Задача
У вас есть таблица в модели данных, и вы хотите добавить новый столбец, исполь
зующий формулу.
Power Pivot
и модель данных
485
Решение
Предположим, ваша модель данных включает таблицу Детали заказа, содержащую,
помимо прочих, столбцы Цена
продукта и Количество, и вам надо вставить новый
столбец, вычисляющий произведение этих двух столбцов по каждой строке.
Решить эту задачу можно, добавив в таблицу вычисляемый столбец,
-
тому, как вы добавляете подобный столбец в таблицу рабочего листа
аналогично
Excel.
Для
добавления столбца в модель данных:
1.
2.
Огкройте окно Power Pivot, выполнив
(Data Model) 1 Управление (Manage).
команду
Переключитесь на представление данных (рис.
ная (Ноте) 1 Просмотр
(View)
1
Power Pivot
16.9),
I Модель
данных
выполнив команду Глав
Представление данных
и перей
(Data View),
дите к таблице, в которую собираетесь добавить столбец (в нашем примере это
таблица ДеталиЗаказа).
3.
Выполните двойной щелчок мышью на заголовке Добавление столбца
Column),
(Add
расположенном справа от столбцов таблицы, введите имя для нового
столбца (в нашем примере Сумма) и нажмите клавишу
<Enter>,
чтобы создать
новый столбец.
4.
Выберите вновь созданный столбец, введите в панель формул формулу, которую
собираетесь использовать для вычисления его значений, и нажмите клавишу
<Enter>.
Так, чтобы перемножить значения в столбцах Цена продукта и Количество,
вам нужно ввести
=
•
[Цена продуJС'l'а] *[Количество].
o6r.trнa
Обновить
Н,
D
6
1
2
3
4
5
7
6
Форматированиt Сортироека и
Сводна.я
табnица
внеwних данных
Номер заказа
1
2
3
4
5
о
%
Получtниt
х
Доnолнитеnьно
с
буфtр
о
Power Pivot АЛЯ Ехс~ - Power Pivot.xlsx
Конструnор
Глаена.я
Номер продукта
-
D
Вычислrниа Прос"отр
фильтрация
Цена продукта
D l&•i,Mii 141•1·1 •i@)kЦffil •1
1
2
5,34
7,99
5,34
3
2
10_.Р
2
На~ти
7,99
5,5
7,99
100
50
150
200
125
500
50
534
399,5
801
2114
998,75
2750
399,5
>
<
Рис.
16.9.
Создание вычисляемого столбца Сумма
Глава
486
16
Когда вы добавляете вычисляемый столбец в таблицу модели данных, Power Pivot
автоматически извлекает ее типы данных. Вы можете просмотреть или изменить
типы данных или изменить формат столбца с помощью параметров, описанных
в разд. 16. б.
'
Вычисляемые столбцы в таблицах модели данных также ссылаются на столбцы
в связанных таблицах. Предположим, к примеру, что существует взаимосвязь
между таблицами Детализаказа и Заказ с сопоставимыми значениями в столбце Номер
заказа, и вам надо использовать эту взаимосвязь, чтобы добавить в таблицу Заказ
новый столбец, вычисляющий сумму столбца сумма таблицы детализаказа для каж
дой связанной строки (рис.
16.1 О):
1.
Перейдите в таблицу заказ в представлении данных окна
2.
Выполните двойной щелчок мышью на заголовке Добавление столбца
Column) ),
Power Pivot.
(Add
расположенном справа от столбцов таблицы, введите имя для нового
столбца (в нашем примере Сумма) и нажмите клавишу
<Enter>,
чтобы создать
новый столбец.
3.
Выберите
вновь
созданный
столбец,
введите
в
панель
=CALCULAТE (SUМ ( 'деталиЗахаза' [Сумма])) и нажмите клавишу
ф
ая
~
• cJ
Главнi!lя
w:
Добаsить
.,. ...
•
Power Pivot для Excel • Power Pivot.xlsx
Консrруrтор
Параметры
функции еычисления ..,,
о
r:rg
Создание Упрае11ение
СВЯЗИ
формулу
х
о
Дополнинльно
~
Вставка
формул
<Enter>.
СВЯJ.ЯltИ
~
' ':":'1
IIi.ill
Ceoйcrsa
Поtt.tетить как Та6лица
та611ицы
таблицу дат
f-:,
Отt.tенить ~
П оморить
дат
Из"'1енить
■:t•ltt~i•ii
1'
2
з
4
5
1 •jf,@1141111!•1Номер кли
•
-----
6
Мера
2
3
4
5
6
01 .01 .2023 0:0.. .
01 .01 .2023 0:0 .. .
02.01-2023 О.О .
03.01 .2023 00. ..
03.01 .2023 0:0...
03.01 .2023 0:0...
,С
D
2
5
4
3
2
Сумма
с•
933,5
801
2114
998 75 _ _ _ _ _ __
2750
399 5
1: 7996,75
..,,
<
ДеталиЗаказ.а j J.ака3 iКалендарь Клиенты Ре1ул~тать1 ! Стран.а (
Рис.
16.10.
Соэдание вычисляемого столбца Сумма
Формула =CALCULATE (SUM ( 'деталиЗаказа' [Сумма]) 1 использует фрагмент 'деталиЗаказа'
[Сумма] для ссылки на столбец Сумма в таблице ДеталиЗаказа, а функция suм складыва
ет его значения. Функция CALCULATE опирается на взаимосвязь между таблицами
Power Pivot
заказ и детализаказа для фильтрации вычислений
-
и модель данных
1
487
чтобы значения суммировались
только с сопоставимыми значениями столбца Номер заказа.
Еще одна полезная функция при работе с вычисляемыми столбцами
-
это функ
ция RELATED, возвращающая одно связанное значение из другой таблицы. Предпо
ложим, к примеру, что таблица заказ включает столбец дата заказа. В таком случае
вы можете добавить дату каждого заказа в таблицу детализаказа, создав вычисляе
мый столбец с формулой =REIATED ('Заказ' [Дата заказа]).
Пояснение
Добавление вычисляемого столбца в модель данных работает аналогично добавле
нию вычисляемого столбца в таблицу рабочего листа. Основное различие заключа
ется в том, что вы пишете формулы модели данных с помощью языка формул
(Data Analysis Expressions,
Синтаксис формул
DAX
выражения анализа данных) вместо формул
аналогичен формулам
Excel
DAX
Excel.
и включает многие функции
с такими же именами (например, suм), но указываемыми на латинице. При этом
дополнительные функции, такие как CALCULATE и REIATED, позволяют вам ссылаться
на значения столбцов в связанных таблицах и фильтровать результаты на основе их
взаимосвязей.
Дополнение
Вы также можете добавлять вычисления в модель данных с помощью мер (см.
ртд.
16. 1О).
16.9. Создаем
сводную таблицу или сводную диаграмму
на основе модели данных
Задача
Вы хотите вставить сводную таблицу или сводную диаграмму, которая использует
одну или несколько таблиц из модели данных.
Решение
Предположим, ваша модель данных включает две таблицы: Клиенты и Заказ -
пред
ставляющие информацию о клиентах и сделанных ими заказах соответственно.
В таблице Клиенты имеется столбец название, содержащий имя каждого клиента,
в таблице Заказ -
столбец Сумма, в котором указана сумма каждого заказа, и вам
надо создать сводную таблицу, отображающую имя каждого клиента и их общую
сумму.
Решить эту задачу можно, создав сводную таблицу, основанную на модели данных
и использующую данные из обеих таблиц:
488
1.
Глава
16
В окне
Power Pivot выполните команду Главная (Ноте) 1 Получение внешних
(Get Extemal Data) 1 Сводная таблица (PivotTaЬ\e), в открывшемся диа
логовом окне Создание сводной таблицы (Create PivotTaЬ\e) выберите, куда
эту сводную таблицу поместить на новый или на существующий рабочий
данных
лист, и нажмите кнопку ОК, чтобы ее вставить.
2.
На панели Поля сводной таблицы (PivotTaЬ\e
вкладку Все
3.
(All) (если
На вкладке Все
(All),
(рис.
Fields)
выберите
16.11)
она еще не выбрана).
содержащей список доступных таблиц (исключая все
скрытые из набора клие~пских средств
см. разд.
-
16.4),
щелкните на каждой
таблице и разверните ее, чтобы стали видны ее поля (включая все вычисления),
затем перетащите таблицу, которую собираетесь использовать в сводной табли
це, в разделы Фильтры
чения
(Values)
(Filter),
(см. разд.
11.3).
Столбцы
(Columns),
Название таблицы Клиенты в раздел Строки
в раздел Значения
Строки
или Зна
(Rows)
Так, в этом примере, следует перетащить поле
(Rows),
а поле Сумма таблицы заказ
(Values).
Вместо того чтобы на шаге 1 вставить одну сводную таблицу, вы можете создать
одну сводную диаграмму или разные сочетания их обеих. Чтобы увидеть доступ
ные варианты, в окне Power Pivot выполните команду Главная (Home) 1 Сводная
таблица (PivotTaЫe) .
А
1
2 1Галактика
5
Новая Моснва
б
Ста~рубль
мма по сrолбцу сумма
•
!
3 1 котокафе
4 1 Манrустин
2114
Поля сводной таблицы
Апианые
ОТЧtt
ЕЁ
[iJ
нужную обткть:
1@- 1
•
> 1:!ё ДеталиЗаu,а
J
imз..
11 !
....
!"'"
О д.то
13 1
!
Строки
' Нсванме
О Номерпк.,~
и
Т Фильтры
PI
1 Поиск
9 :
......
=-=-i
О Номерк.nие...
14
15 '
r.:11 Сумма
0
16
17
J
18
19
20
1
Столбцы
I:
ЗначенИJ1
fxM•p• 1
1:!ё К,,м.,.....
О Номер клие ...
а] Кl:~пние
21
> Ёfё Календарь
22 1
23 1
24
25 1
,~ j
_____
клиенты
1
... 0
◄Рис.
16.11.
l.
].
•
►
Создание сводной таблицы
J
Сrмма по а~бцу~~у .....
О Отлож. ..
1
Поля сводной таблицы (PivotTaЫe Fields) была настроена таким образом, чтобы список полей
и разделы Фильтры
рядом.
В<е
для добавленкя в
10 !
1 Панель
х
Вы~рите поля
933~
7996,75
!
V
Переrвщите пом а
2750
1200,5
998,75
7 ,Общий итоr
g
•
с
в
Названия СТl!_ОК
(Filter),
Столбцы
(Columns),
Строки
(Rows)
или Значения
(Values)
отображались
Power Pivot
и модель данных
1
489
По умолчанию допускается основывать сводную таблицу только на одной таблице
рабочего листа. Однако обойти это ограничение можно, добавив нужные таблицы в
модель данных и воспользовавшись надстройкой
Power Pivot,
чтобы вставить свод
ную таблицу.
Создав сводную таблицу, вы можете настроить ее, используя большую часть реше
ний главы
♦
11.
Тем не менее эти подходы несколько различаются:
сводная таблица, основанная на таблицах модели данных, имеет другие пара
метры агрегации в диалоговом окне Параметры поля значений
Settings)(cм. разд.
(Value Field
11.9);
♦ дополнительные вычисления в модель данных добавляются как вычисляемые
столбцы (см. разд.
16.8)
и как меры (см. разд.
16.10) -
вместо использования
вычисляемых элементов и полей;
♦
использовать решения из разд.
11.17
и
11.18
для группировки по числовым или
текстовым значениям не получится. Тем не менее вы можете применить реше
ние из разд.
11. 16,
чтобы выполнить группировку по значениям даты или вста
вить таблицу дат(см.разд.
♦
16.13);
вы можете скрыть столбцы в модели данных (см. разд.
16.6),
чтобы они не ото
бражались в списке полей сводной таблицы.
Пояснение
В этом разделе показано, как использовать
Power Pivot для
вставки сводной табли
цы на основе данных в модели данных. Если вы не активировали
Power Pivot,
то можете добавить в модель данных таблицу рабочего листа и создать сводную
таблицу, использующую данные модели данных, следуя шагам из разд.
новив на шаге
2
the Data Model).
флажок Добавить эти данные в модель данных
11.2 и уста
(Add this data to
·~
••••• •- Если вы работаете в Excel для macOS, то не можете основывать сводную таблицу
на нескольких таблицах, поскольку эта версия Excel не включает модель данных.
Однако обойти это ограничение можно, используя для добавления на рабочий лист
'
•
16.1 О.
дополнительных столбцов такие функции, как ПРОСМОТРХ (см. разд.
7.9).
Вставляем меры
Задача
У вас есть таблица в модели данных, и вы хотите добавить вычисление, которое
использует агрегации данных для получения результатов.
Решение
Предположим, ваша модель данных включает таблицу Заказ со столбцом Сумма,
и вам надо вычислить сумму столбца Сумма, чтобы получить возможность просмат-
Глава
490
16
ривать ее в модели данных, добавить в раздел сводной таблицы Значения
и использовать в качестве основы КПЭ (см.разд.
Сделать это можно, создав меру
(Values)
16.11).
добавляемую в таблицу модели данных форму
-
лу, возвращающую результат. Так, для решения этой задачи вам следует добавить
в таблицу заказ меру Общая сумма, которая будет рассчитывать сумму столбца сумма:
1.
Откройте окно
(Data Model)
2.
1
Power Pivot, выполнив
(Manage).
команду
Переключитесь на представление данных (рис.
ная (Ноте)
Просмотр
1
Power Pivot I
Модель данных
Управление
(View)
1
16.12),
выполнив команду Глав
Представление данных
(Data View),
и перей
дите к таблице, в которую собираетесь добавить столбец (в нашем примере это
таблица Заказ).
3.
В области вычисления под строками таблицы выделите пустую ячейку. Если эта
область вам сейчас не видна, попробуйте выполнить команду Главная (Ноте)
Просмотр
(View)
1
Область вычисления
(Calculation Area),
1
которая скрыва
ет/отображает область вычисления.
4.
Выделив пустую ячейку, введите на панели формул код меры
принимает общий вид имя_меры:=формула, где имя_меры формула -
обычно он
-
это название меры, а
это ее формула. Так, для создания меры Общая сумма, суммирующей
столбцы Сумма, введите Общая сумма:=SUМ('Дета.nиЗахаза' [Сунна]).
5.
Завершив ввод формулы, нажмите клавишу
ф
QD r.:iJ +, • (+
•
Гл-авная
А
обменг~
..
о
Обновить
sнеwних данных ...
х
Дополнительно
Н,
%
Пол учение
чтобы ее создать.
Power Pivot АЛА Excel • Power Pivot.xlsx
Констру к:тор
с
['\
Буфер
<Enter>,
Сводная
Фор11атироаание Сортировка и
таблица "
Найти
Вычисления Просмотр
фильтрация
,t--~[~у
С ~м_м_а~
] _ _ _ _ _f.__,
x Общая сумма : = SUМ ('ДеталиЗакаэз'[Сум ма])
Номер за . re, [; l•@Ji@ЫtИ41
1
2
1
2
3
4
5
6
з
4
5
6
•1Номеркли
01 .01 .2023 0:0...
01 .01 .2023 0:0. ..
02 01 2023 0:0. ..
03.01.2023 0:0. ..
03.01 .2023 0:0. ..
03.01 .2023 0:0. ..
<1f
D
Сумма
2
5
4
3
2
------------------------
D
933,5
801
2114
998,75
2750
399,5
,.
<
!Детали3ака.sа l Зао,3 rКалендарь I Клиенты !Р6ультаты Страна Клиенты 1
- 6 - - - .-.-,- - - - - - - - - - - - - - - - - - - - - 1 : ! ! J -
..
3а11Меt,, - ..- . - - - , , -
Рис.
16.12. Добавление
меры с использованием представления данных
~
.::
Power Pivot
опустить
Если
suм
меры
название
( 'деталиЗаказа'
[Сумма]
и
ввести
1, Power Pivot
только
и модель данных
формулу
ее
1
491
например,
-
присвоит мере имя по умолчанию, кото
рое потом можно будет изменить на панели формул.
Создав меру, вы можете увидеть ее значение в области вычисления (как, например,
в нашем примере: Общая сумма:
7996,75).
Если оно там полностью не помещает
ся, расширьте столбец с помощью его заголовка. У вас также будет возможность
отредактировать меру на панели формул, отформатировать ее с помощью парамет
ров раздела Главная (Ноте)
вишу
<Del>.
1
Форматирование
и удалить, нажав кла
(Formatting)
В качестве альтернативы, можно щелкнуть правой кнопкой мыши на
ячейке меры и выбрать в контекстном меню подходящий параметр.
Если вам надо создать простую меру агрегатной функции, сделать это можно, ис
пользовав параметр
Power Pivot
Автосумма
(AutoSum), -
вместо того, чтобы вво
дить формулу вручную. Выделите столбец, на котором нужно основать меру, вы
полните команду Главная (Ноте) 1 Вычисления (Calculations) 1 Автосумма
(AutoSum) и выберите одну из доступных агрегатных функций: Сумма (Sum),
Среднее (Average), Число (Count), Число уникальных (Distinct Count.), Макси
мум (Мах) и Минимум (Min). Так, в этом примере, вы могли бы создать меру для
подсчета суммы столбца Сумма, выделив столбец и выбрав агрегатную функцию
Сумма
(Sum)
в раскрывающемся списке Автосумма
(AutoSum).
- вы
(Measures)
Создавать, редактировать и удалять меры можно также в главном окне Ехсе\
полните там команду
Создать меру
Вычисления
Power Pivot
(New Measure) и воспользуйтесь
I
(Calculations)
1
Меры
1
для создания меры доступными
параметрами открывшегося диалогового окна Мера
(Measure)
(рис.
16.13 ).
Power Pivot Вычис
(Manage Measures),
в открывшемся диалоговом окне Управление мерами (Manage Measures) выберите
меру и нажмите кнопку Изменить (Edit) или Удалить (Delete).
Чтобы отредактировать или удалить меру, выполните команду
ления
(Calculations)
1
Меры
(Measures)
1
Управление мерами
Чтобы добавить меру в сводную таблицу, найдите ее в списке полей на панели По
ля сводной таблицы (PivotTaЬ\e
Fields)
и перетащите ее в раздел Значения
(Values) (см. разд. 16.9).
Пояснение
В этом разделе показано, как добавлять меру в таблицу модели данных. Так же как
это делалось при создании вычисляемых столбцов (см. разд.
меры на языке
DAX,
16.8),
вы создаете код
позволяющем ссылаться на столбцы в других таблицах и на
другие меры. Но, в отличие от вычисляемых столбцов, вы можете использовать ме
ры для создания КПЭ (см.разд.
16.11).
Меры, которые вы добавляете в модель данных предложенными в этом разделе
способами, иногда называются явными, потому что вы явно их определяете. Моде
ли данных могут также включать неявные меры, которые
Power Pivot
создает авто
матически, когда вы добавляете поле в раздел сводной таблицы Значения
Например, если вы добавите в раздел Значения
(Yalues)
(Values).
вычисляющий сумму
492
Глава
16
Мера
?
Имя rабли1.Jр1 :
х
Заказ
Название меры :
"
:::::=================================================:
1
Опиs;_ание :
~
С_
умм
_
а _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _~
мера
:=================================================~
<!>о1)!1)'ла : 1Е] Провеоиn. фОрмулу
с·~~~
ф
1- ...
00 ~..,..., .....
ПарамеlJ)Ы срорматирования
]5атегория:
Общие данные
Число
Валюта
дата
ИСТИНА/ПОЖЬ
ОК
Рис.
16.1 З.
Отмена
Добавление меры с помощью диалогового окна Мера
столбец Сумма таблицы заказ,
Power Pivot
автоматически создаст в таблице Заказ
эквивалентную меру. Неявные меры доступны только для чтения (т. е. вы не може
те обновлять их формулы), удаляются, когда вы удаляете их из сводной таблицы, и
не могут использоваться для создания КПЭ.
Оrображать или скрывать неявные меры таблицы в представлении данных
Pivot можно, выполняя команду Дополнительно (Advanced)
мер (Show Implicit Measures).
16.11. Используем
1
Power
Отображение явных
КПЭ
Задача
У вас в модели данных есть мера, и вы хотите визуально измерить ее эффектив
ность по сравнению с заданным целевым показателем.
Решение
Предположим, ваша модель данных включает две таблицы: Клиенты и заказ -
пред
ставляющие информацию о клиентах и сделанных ими заказах соответственно.
Power Pivot
и модель данных
493
В таблице Клиенты имеется столбец название, содержащий имя каждого клиента,
столбец сумма, в котором указана сумма каждого заказа. Целевая
в таблице заказ -
сумма общих заказов на одного клиента составляет
5000
Р, и вам для каждого кли
ента надо быстро оценить, на верном ли вы пути к достижению этой цели.
Решить эту задачу можно, используя КПЭ (ключевой показатель эффективно
сти)
-
визуальную меру, помогающую оценить статус показателя относительно
заданного целевого значения.
Чтобы работать с КПЭ, сначала нужно определить меру, которая предоставит его
базовое или текущее значение . Так, в этом примере, следует добавить в таблицу
Заказ меру Общая сумма, вычисляющую сумму столбца Сумма (см.разд.
Определив меру, создайте КПЭ (рис.
1.
Откройте
окно
диалоговое
16.14):
Ключевой
Performance Indicator (KPI)) одним
•
в представлении данных
Главная (Ноте)
•
1
16.1 О) .
показатель
эффективности
(Кеу
из следующих способов:
Power Pivot выделите меру и выполните команду
(Ca\culations) 1 Создать КРI (Create KPI);
Вычисления
щелкните правой кнопкой мыши на мере и выберите в контекстном меню
пункт Создать ключевой показатель эффективности
(Create KPI);
х
Ключr:еой покаяrмь 3Ффr:ктиеносrи
Обща• сум,,,1
Ба:ооеое поле кnючееоrо nокаоател• -1>810С1>! ~ ):
Соею,._ 15сnючееоrо nокаоател• -1>810С1>!
Оnре~,мп, uелееое она-:
Не <>"4"'д,,лено uелееое поле
@ Абсо1101t10е оначение:
5000
~------------------------ -~
~~JМте лорогоеые ~я состояния ·
о
о
о
'
Ц.rъ
ПыбеРите стиль ~ачка :
•• С] •
•
•
а
.
А 0.:,,сани•
ок
Рис.
16.14. Добавление
КПЭ с помощью диалогового окна
Ключевой показатель эффективности
о,.,.,...
494
•
1
Глава
1б
выполните
в
(Calculations)
главном
1
окне
Ключевые
Excel
ключевой показатель эффективности
2.
Power Pivot I Вычисления
(KPls) 1 Создать
(New KPI).
команду
показатели
эффективности
Убедитесь, что в раскрывающемся списке Базовое поле ключевого показателя
эффективности (значение)
(KPI base field (value))
отображается мера, на кото
рой вы решили основать КПЭ (в этом примере общая сумма). Если диалоговое
окно было открыто в главном окне
Excel,
может потребоваться выбрать меру из
раскрывающегося списка.
3.
В разделе Определите целевое значение
(Define target value)
выберите, нужно
ли использовать в качестве целевого значения КПЭ другую меру (которую там
надо будет выбрать) или задать абсолютное значение. По условию этого приме
ра целевая сумма общих заказов на одного клиента составляет
установите переключатель в положение Абсолютное значение
и введите в поле значение
4.
5000 Р, поэтому
(Absolute Value)
5000.
В разделе Определите пороговые значения состояния
(Define status thresholds)
- кото
выберите стиль для обозначения цвета: красного, желтого или зеленого
рым система будет помечать низкие, высокие и целевые значения, где красный
означает, что значение сильно отличается от целевого, желтый
-
что оно на
верном пути, но нужно проделать дополнительную работу, а зеленый
-
что
цель достигнута. В этом примере назначьте красный для низких значений, жел
тый для значений немного ниже целевого, а зеленый для значений выше целево
го
5.
-
это обеспечит сохранение стандартного стиля красный-желтый-зеленый.
Выбрав стиль цветов, введите в поля пороговых значений величины, указываю
щие, когда нужно менять статус цвета. Так, чтобы в момент, когда значение дос
тигает
2000,
изменить статус с красного на желтый, введите в поле между этими
двумя цветами число
2000. А
4000,
когда значение достигает
ло
6.
чтобы изменить статус с желтого на зеленый,
введите в поле между этими двумя цветами чис
4000.
В разделе Выберите стиль значка
(Select icon style)
выберите набор значков,
которые будут использоваться для КПЭ.
7.
Если
нужно
(Descriptions)
добавить
к
КПЭ
описание,
разверните
раздел
Описания
и введите в соответствующие поля описания для КПЭ: базовое
значение, статус (состояние) и целевое значение.
8.
Нажмите кнопку ОК, чтобы создать КПЭ.
Создав КПЭ, вы можете отображать его состояние (статус), добавив его в сводную
таблицу. Так, чтобы в этом примере отобразить КПЭ Общая сумма (рис.
16.15):
l.
Создайте сводную таблицу, использующую модель данных (см. разд.
2.
На панели Поля сводной таблицы (PivotTaЫe
•
Fields):
перетащите поле название таблицы Клиенты в раздел Строки
отобразить имя каждого клиента;
16. 9).
(Rows),
чтобы
Power Pivot
А
1 1Названия
2
Галактика
з
Котокафе
4
Манrустин
5
Новая Москва
6
7
8
9
10
.
в
строк • jобщая сумма Состояние
о
о
о
о
Старрубль
о
Общий итог
о
и модель данных
Поля сводной таблицы
Выберите поля для
добавления в отчет:
• нужную
область:
Г@ · \
У Фильтры
.Е]
1 По~1СI(
.
> jj'ё ДеталиЗакаJа
Строки
-
.J gё Зака3
О Номер ,ака,а
11
х
V
Пер<!Тащите поля
Все
Активные
495
На 3в ание
О Дата ,ака,а
12
13
14
15
16
17
18
19
20
21
22
О Номер клиента
Столбцы
О Сумма
...J
~ 06щая сумма
О /х Значение( ...
О Цель
I:
11',1 Состояние
Значения
Общая сумма Состояние
..J
Ёfё Кл и~нты
О Номер клиента
...,
клие
...
0
◄-
•
11',1 На,вание
•
•
О Отложить обно ...
Рис. 16.15. Отображение состояния (статуса) КПЭ в сводной таблице2
•
разверните таблицы Заказ и Общая сумма, чтобы отобразить их поля Значение,
Цель и Состояние, и перетащите поле Состояние в раздел Значения
(Values),
что
бы отобразить статус КПЭ для каждого клиента.
3.
Если требуется отобразить текущее значение и цель каждого клиента, перетащи-
те также в раздел Значения
(Values)
поля Значение и Цель.
Если вам понадобится изменить или удалить КПЭ, в представлении данных
Pivot
Power
щелкните правой кнопкой мыши на мере и выберите в контекстном меню
пункт Изменить параметры ключевого показателя эффективности
(Edit KPI
(Delete КР!). Найти
Power Pivot
Вычисления (Calculations) 1 Ключевые показатели эффективности (KPls) 1
Управление ключевыми показателями эффективности (Мапаgе KPls).
Settings)
или Удалить ключевой показатель эффективности
эти пункты можно также, выполнив в главном окне
Excel
команду
1
Если вы измените модель данных, любой из использованных в сводных таблицах
,·
статусов КПЭ может перестать правильно отображаться. Чтобы исправить это,
удалите статус из сводной таблицы, а затем верните его обратно.
~ Панель Поля сводной таблицы (PivotTaЫe Fields) была настроена таким образом. чтобы список полей
11 разделы Фильтры
рядом.
(Filter),
Столбцы
(Columns),
Строки
(Rows)
или 'Jиачения
(Values)
отображались
496
1
Глава
16
Пояснение
Ключевые
показатели
эффективности
предлагают удобный
способ
измерения
эффективности меры относительно заданного целевого значения. В этом разделе
показано, как создать один КПЭ, а затем отобразить его статус с помощью сводной
таблицы.
16.12. Создаем
иерархии
Задача
Вы хотите организовать поля, выбранные в списке полей сводной таблицы, в виде
иерархии, которую можно будет использовать для группировки и более подробного
изучения данных.
Решение
Предположим, ваша модель данных включает таблицу Страна, содержащую данные
этой страны в столбцах с именами Страна, Область, Район и Город, и вам надо группи
ровать данные по этим полям во всех создаваемых сводных таблицах, чтобы можно
было переходить от страны к области и т. д.
Чтобы это сделать, нужно создать иерархию
группу полей, которая отражается
-
в списке полей сводной таблицы в виде одного элемента. Иерархия для этого при
мера должна содержать родительский столбец Страна, за которым следуют столбцы
Область, Район И Город:
1.
Огкройте окно
(Data Model)
2.
1
Power Pivot, выполнив
(Manage).
команду
Переключитесь на представление диаграммы (рис.
крыто, выполнив команду Главная (Ноте)
диаграммы
3.
Power Pivot
I Модель
данных
Управление
1
16.16), если оно еще не от
(View) 1 Представление
Просмотр
(Diagram View).
Найдите таблицу, для которой создаете иерархию (в этом примере, таблицу Стра
на}, щелкните правой кнопкой мыши на столбце, предназначенном для исполь
зования в качестве родительского (столбец Страна), и выберите в контекстном
меню пункт Создать иерархию
(Create Hierarchy) -
иерархия будет добавлена
в нижнюю часть списка столбцов таблицы, и в нее скопируется родительский
столбец.
4.
Введите имя для иерархии
5.
Добавьте в иерархию столбцы Область, Район и Город: либо нажимая на них
-
например, Иерархия страны.
мышью и перетаскивая в нужное место, либо щелкая на них правой кнопкой
мыши и выбирая из контекстного меню пункт Добавить в иерархию
(Add to
Hierarchy).
Изменять порядок следования столбцов созданной иерархии можно, нажимая на
них мышью и перетаскивая в нужное положение, а удалить столбец
-
выбрав его
Power Pivot
в иерархии и нажав клавишу
и модель данных
497
Вы также можете щелкнуть правой кнопкой
<Del>.
мыши на столбце в иерархии и выбрать в контекстном меню любой из доступных
параметров.
Ф
au
")
~
Pow,r Pivot A11Я hcol • Pow,r Pivot.xlsx
.-
КонстрУJСТОР
Гпье ная
о
х
Допо1tнительно
Тиn даННЬl)С
Форм,r.
5Vфtp
Попучtнкt
O6H08t!Tb
С■ однаА
та611и41
обwtка ..,. 8HfWHИX Д,IIННЫХ "'
•
Сортировrа и
S · %,~;3 ..~
Найти
Вычисмния Просt.tотр
фИ11ьтр,щиа "
Форматиро~ян"t
Страна
~
1:П Страна
nD
Номер кл.-па
С!) Обnасть
[:!]
Название
CD
CD
3а1<аз
□ Номер
□ Дата
1-а- .
Район
Номер
rn:I
Город
Сумма
ОЩи1
Иерархия сrраны
Страна (Страна)
Обпасть (Обласrь)
Район (Район)
Город (Горцц,)
Рис.
в
А
1
2
3
4
5
б
7
8
16.16. Добавление
•
с
г;,
НазванИJ1 сrрок
Россия
иерархии в таблицу Страна
Поля сводной таблицы
Актиен.ые
Вс"
Выберите поля
AJ1.R
Московская
Одинцовский
добавления а отчет:
Краснознаменск
область:
1@~ 1
j Поиск
1::! Тульская
Т Фильтры
PI
Ефремовский
Е
> ~ Калr:ндарь
9
10
V
П ер~ащите поля в нужную
•
.,.
> (Ш Клиенты 1
Строки
Иtрарх ия страны
11
12
> ~Рщлыаты
13
> ~Р щлыаты
14
15
16
17
18
19
20
21
22
t
Столбцы
I:
Значения
...1m3c._
...J
II
Иерархи,о сr~ны
с._
Обмсrь
Р.tйон
ГороА
>
КЛ<tЕ
...
Рис.
+
16.17.
◄-
►
•
ra
Другие поля
> Im Страна
•
О Отложить обно...
Использование иерархии для строк сводной таблицы
х
Глава
498
16
Чтобы использовать иерархию, создайте сводную таблицу на основе модели дан
ных (см. разд.
16.9)
и в списке полей панели Поля сводной таблицы (PivotTaЫe
разверните таблицу, содержащую иерархию. Теперь вы сможете работать
Fields)
с иерархией как с единым элементом и перетащить ее в один из разделов панели,
чтобы добавить все ее поля сразу (рис.
16.17).
Пояснение
Иерархии могут пригодиться, если вам часто приходится группировать и подробно
изучать конкретные группы полей. В этом разделе показано, как добавить иерар
хию в модель данных, чтобы можно было ее использовать в сводных таблицах.
16.1 З.
Создаем таблицу данных
Задача
У вас есть сводная таблица, основанная на модели данных, и вы хотите иметь воз
можность настраивать группировку столбцов дат, в том числе по финансовому году
и кварталу.
Решение
Предположим, ваша модель данных включает таблицу Заказ, содержащую столбец
дата заказа, и вам нужно сгруппировать даты в сводной таблице на основе данных
этого столбца.
Для группировки дат по календарному году, кварталу и/или месяцу можно задать
группы, воспользовавшись решением из разд.
пировать данные иным способом
-
11.16.
Однако, если требуется груп
например, по финансовому году и финансово
му кварталу,
-
вы можете создать и использовать таблицу дат.
Таб.·zица дат
-
это добавляемая в модель данных таблица, содержащая последова
тельный
бами
-
набор дат со столбцами,
представляющими даты
различными спосо
например, месяц, год, финансовый год и т. д. Такую таблицу дат можно
использовать в сводных таблицах для группировки данных по одному или несколь
ким ее столбцам.
Чтобы создать таблицу дат (рис.
1.
16.18):
Откройте окно
Power Pivot, выполнив
(Data Model) Управление (Manage).
команду
Power Pivot I
Модель данных
1
2.
Переключитесь на представление данных (если оно еще не открыто), выполнив
команду Главная (Ноте)
1
Просмотр
(View)
1
Представление данных
(Data
Yiew).
3.
Выполните команду Конструктор (Desigп)
дат
(Date
ТаЫе)
1
Создать
(New),
1
Календари
(Calendars) Таблица
Power Pivot назовет
1
чтобы создать таблицу дат.
таблицу Календарь. заполнит ее датами и включит вычисляемые столбцы,
Power Pivot
представляющие даты различными способами,
и модель данных
499
например, Год, Номер месяца
-
и День недели.
4.
Таблица дат должна включать все даты, которые надо будет использовать в мо
дели данных. Чтобы изменить диапазон дат, включенных в таблицу, выполните
команду Конструктор
ТаЫе)
5.
1
(Design)
Обновление диапазона
Календари
1
(Update Range)
(Calendars)
1
Таблица дат
(Date
и выберите новый диапазон.
Создайте взаимосвязь между таблицей дат и столбцом дат в исходной таблице.
Так, если модель данных включает таблицу Заказ со столбцом дата заказа, следу
ет создать взаимосвязь между столбцом дата заказа таблицы Заказ и столбцом
Дата таблицы Календарь.
ЕВ
au
(,,
Гn111ан.s11
.-
□
Powf:r Prvot АЛА fxcf:1 - Powf:r Pivot.x l.sx
х
о
Допо.11нмтtnьно
Конnруктор
%
Обновить
Попучtниt
&jфtp
Формiниронниt Сортироа1е• и
Сводн1,-
Н111йти
Вычисntния Проu.1отр
ф1111ьтр1ция
т,6111,щ111
внtwнихданных
06мtн1
□ Замаз
[]
[j Номер заказа
ДеталмЗаказа
□ Номер заказа
Ддr.t33КВЗit
□ Номер продукта
Номеркn
□ Цена Продукта
Сумма
□ Количесmо
Общая сумма
□ Сумма
1 _ _ __,
Каоондарь
Дата
Гqд
Номер мосяц;1
Месяц
ммм-гттr
....
Рис.
16.18. Добавление
таблицы дат Календарь
Создав таблицу дат, вы можете добавлять в нее новые вычисляемые столбцы
-
в зависимости от того, в каком порядке требуется сгруппировать даты. Так, если
вам нужно иметь возможность группировать даты по финансовым кварталу и году,
а ваш финансовый год начинается
1 октября,
добавьте вычисляемый столбец Финан
совый квартал с помощью формулы =SWITCH (MONTH ( [Дата ]
10, 11 и 12-й месяцы возвращают\;\, 2 и 3-й месяцы 3, а оставшиеся месяцы - 4. Можно также добавить и
4; 3 ;5;3;6;3;4), где
и 6-й месяцы
-
Финансовый год YEAR ( [дата]
1; 10; 1 ; 11; 1; 12; 1; 1; 2; 2 ; 2 ; 3; 2;
2; 4, 5
столбец
с ПОМОЩЬЮ формулы =SWITCH ( [Финан совый квартал]; 1; YEAR 1 [Дата])+ 1;
11 . Эти формулы задействуют функцию DAX swrтcн, которая работает
аналогично функции ПЕРЕКПЮЧ в Ехсе\ (см. разд.
7.8).
500
1
Глава
16
Для работы с таблицей дат в сводной таблице:
l.
2.
Создайте сводную таблицу, использующую модель данных (см.разд.
Перетащите нужные поля в разделы Строки
чения
(Values),
(Rows),
Столбцы
16. 9).
(Columns)
и Зна
как мы это делали и ранее, но вместо полей дат исходной табли
цы (в этом примере Дата заказа таблицы Заказ) возьмите поля столбцов таблицы
дат. Так, чтобы сгруппировать строки по финансовому году и финансовому
кварталу, перетащите в раздел Строки
(Rows)
поля Финансовый год и Финансовый
квартал таблицы Календарь.
Если модель данных содержит несколько столбцов дат, по которым надо выпол
нить группировку, вам придется создать больше одной таблицы дат
-
по одной
для каждого столбца дат. Если вы уже создали таблицу дат, содержащую дополни
тельные пользовательские столбцы, ее можно будет использовать в качестве осно
вы для любых новых таблиц, которые потребуется создать, выделив эту таблицу,
выполнив команду Конструктор
(Date
ТаЬ\е)
1
(Design)
Сохранить конфигурацию
1 Календари (Calendars) 1 Таблица дат
(Save Configuration) и создав новые таб
лицы дат. Если впоследствии вам понадобится создать таблицу дат, используя кон
фигурацию
Power Pivot по умолчанию, то перед созданием таблицы выполните ко
(Design) 1 Календари (Calendars) 1 Таблица дат (Date ТаЬ\е) 1
Задать значение по умолчанию (Set Defau\t).
манду Конструктор
Пояснение
При использовании дат в сводных таблицах вам может потребоваться выполнить
группировку столбцов дат способом, который Ехсе\ не предоставляет по умолча
нию. Применение одной или нескольких таблиц дат поможет обойти эту проблему.
В этом разделе рассказано о создании таблицы дат с нуля, потому что это, как пра
вило, наиболее эффективный способ. Вы также можете определить существующую
1 ;- 1 :шцу как таблицу дат, выделив ее и выполнив команду Конструктор
(Design) 1
(Mark as Date ТаЬ\е), а затем
команду Конструктор (Design) 1 Календари (Calendars) 1 Пометить как таблицу
дат (Mark as Date ТаЬ\е) Параметры таблицы дат (Date ТаЬ\е Settings), чтобы
Календари
(Calendars)
1
Пометить как таблицу дат
1
указать, какой столбец содержит даты.
16.14. Используем
именованные наборы
Задача
У вас есть сводная таблица, основанная на модели данных, и вы хотите скрыть
агрегации для различных строк или столбцов.
Решение
Предположим, ваша модель данных включает таблицу Результаты" содержащую про
гнозные и фактические результаты экзамена учеников нескольких школ за не
сколько учебных лет. Эти сведения записаны в столбцы Школа, Ученик, Учебный год,
Power Pivot
и модель данных
501
Прогноз и Фактически, и вам надо вычислить средний балл по школе на основе данных
столбца Фактически для одних учебных лет и столбца Прогноз для других,
посколь
-
ку прогнозные баллы доступны, к примеру, только для некоторых учебных лет.
Решить эту задачу можно с помощью именованных наборов, позволяющих искать и
выбирать строки и столбцы, которые стоит включать в сводную таблицу.
Прежде чем создать и использовать именованный набор для этого примера, создай
те сводную таблицу на основе модели данных, перетащив поле Школа таблицы Ре
зультаты в раздел Строки
поле Учебный год в раздел Столбцы
(Rows),
поля Фактически и Прогноз в раздел Значения
(Values),
а
(Columns),
изменив их агрегации на Сред
нее. В результате вы получите сводную таблицу со строками и столбцами для каж
дой школы, отображающими прогнозные и фактические средние баллы за каждый
учебный год (рис.
16. 19).
о
А
Поля сводной таблицы
Н.»1анм11 сl•
и,оr Среднее
2
2022/2J
Среднееnо
Среднееnо
Срвднееnо
CIOltбцy
СIОАбцу
сrо11бцу
С:ТОАбцу
3 Ha,aaнtt11 cтpott •
4 , .......... 1
6
ПроrноJ
Общ,~Ммтоr
Фактмцеосм
Пропtо1
159
юо
193
352
225
42S
no
.
8~р,пеnомдri•
430
21
461
,:
539
191
Фм11тры
nо"н.
Фамтмчеао,
271
=···
г
1 > IПJЗ,u,
> fШКпм~ТD~
ir,
,.
.J
По Pesy~tir.iпьi
аш.-ом
1
'
1'
JO
11
1:1
11
r.l
12
13
14
15
16
17
18
Х
o6n,cn.:
до6,ма1КА • от чет:
[
,
V
Г\ep~Щl!TtПOJUI 1 ~
Все
и,оr Среднее rю
Dол
П ноз
стоttбцуФаnмч@ОС!
"JfJ23/24
Средмееnо
1
Ажтм11"ые
>
Yчc6tlt.iiiro,.
Проnю3
Ф,1,кtм•нюси
mJ Рnум.r.1ц.. 1
Столбцы
Уче6t<ыйrС>А
I
Зн1-«:н.uа
I'Зt+•~
Среднее
no
сrмбцу Проn10,
v
Среднее по стопбцу Ф•nмчеt ~
Pt))'/llor.JN
БаJоеая С1одна11
Рис.
клэ
16.19.
~ ...
Отпож~m,~о ..
~
Сводная таблица до определения именованного набора
Создав сводную таблицу, определите именованный набор, открыв для этого диало
говое окно Создание набора
(New Set), -
выделите сводную таблицу и выполните
команду Анализ сводной таблицы (PivotТaЬ\e
Analyze) Вычисления (Calculations) Поля, элементы и наборы (Fields, ltems, & Sets) Создать набор по столб
цам (Create Set Based on Column ltems).
1
1
1
Раскрывающийся список Поля, элементы и наборы
(Fields, ltems, & Sets) предла
Set Based
(Create Set Based оп Column ltems),
гает два варианта создания набора: Создать набор по строкам (Сгеаtе
оп
Row ltems)
и Создать набор по столбцам
выбор между которыми зависит от того, каким образом вы собираетесь скрывать
вычисления сводной таблицы
скольку в этом
примере вам
-
с помощью значений строк или столбцов. По-
нужно
ограничить значения,
показанные за
опреде
ленные учебные годы (столбцы сводной таблицы), здесь следует выбрать вариант
Создать набор по столбцам (Сгеаtе
Введите в поле Имя набора
набора
набора
Set Based
оп
Column ltems).
(Set name) открывшегося диалогового окна Создание
16.20) имя для создаваемого в этом примере именованного
(New Set) (рис.
- Набор баллов учебного
года.
502
Глава
16
В диалоговом окне Создание набора
(New Set)
также отображается список, содер
жащий либо строки, либо столбцы сводной таблицы
в зависимости от варианта,
-
выбранного вами ранее в раскрывающемся списке Полн, элементы и наборы
(Fields, Items, & Sets). Поскольку в этом примере был
бор по столбцам (Create Set Based on Column Items),
выбран вариант Создать на
диалоговое окно отображает
список столбцов Учебный год и значения средних величин баллов по столбцам Про
гноз и Фактич ески за указанные годы. Как показано на рис.
включает значения 2022; 23 и 2023/24 строки: для
2022/23 -
Фактически, ДЛЯ
Сред н ее
по
столбцу
Пр огн оз, для
столбец Учебньм год
Сре днее
2022/23 -
Среднее по столб цу Про гноз И ДЛЯ
2023/24 -
16.20,
соответственно список значений содержит
по
столбцу
202 3/24 -
Среднее п о с т олб
цу Фактиче ски, а также строки для общих итогов Все: Среднее по
столбцу Прогноз и
Сре днее по стол б цу Фактич ески.
(03Д•ние набор•
l набор баллов учебного года
Qanкa отображения (необязательно}:
1
r
ДО.бавить строку
-
Х )'Аалить строку
--
Уч•.6н ый год
Crn Копировать строку
2022/23
,v
111112022/23
Jv
1
1 " ] vj
Значения
Среднее по стопбцу
Прогноз
V'
I Среднее по стопбцу Фактичеш,
1
н
(v
V
Среднее по стопбцу Проrно,
2023/24
V
Среднее по столбцу Фактически
V
Все
V
Среднее по столбцу Прогноз
V
Все
V
Среднее по столОцу Фактически
V
2023/24
1
х
?
(ThisWorkbookDataModel)
,!1мя набора:
1
0
0
Qтобра:ж.ать ,лементы ра3ных уровней в разных nо11ях
!1.Jменить
1
Рис.
MDX ...
~аменить поля в области столбцов НОЕJЫЫ набором
16.20. Диалоговое
ок
1
Отмена
окно Создание набора, в котором показаны все столбцы
Для удаления из сводной таблицы какого-либо элемента, выделите его, щелкнув
слева от него , и нажмите кнопку
Delete Row
зить ТОЛЬКО Среднее по столбцу Фактически ДЛЯ
(Удалить строку). Так, чтобы отобра
2022/23
И Среднее по столб цу Прогноз ДЛЯ
2023/2 4, выберите и удалите из таблицы все элементы, кроме этих (рис.
16.21 ).
И наконец, убедившись, что в диалоговом окне Создание набора
(New Set)
новлены
разных
флажки
Отображать
элементы
разных
уровней
в
уста
полях
(Display items from different leve\s in separate fields) и Заменить полн в области
столбцов новым набором (Replace the fields currently in the column area with the
new set), нажмите кнопку ОК, чтобы создать именованный набор, добавьте его
в список полей панели Полн сводной таблицы (PivotТaЬ\e Fields) и посмотрите на
изменения , произведенные в сводной таблице (рис. 16.22).
Если вам понадобится отредактировать или удалить именованный набор, выполни
те
команду
Анализ
сводной
таблицы
(PivotTaЬ\e
Analyze)
1
Вычисления
Power Pivot
и модель данных
503
х
Со,дан"• набора (Тhi,WorkbookDataModel)
1Набор баллов учебного года
Имя набора :
Папка отображения (нео6я~те11ьно) :
-t
~бавить строку
~~оnировать строку
Х Удалить строку
Учебный год
[~022123
V
[2023/Z4
0
0
Iл
Значени.я
@р..:_днее п.о_:_тоnfiцу ФаКТИЧtСКИ
!СреАнее по столбцу Проrно,
Q.тобра.жать з.nементы ра1ных уровней в ра1ных полях
И,зменить МОХ .. ,
~аме нить поля а об.пасти аопбцов ноеым наборо._t
ОК
Рис.
16.21. Диалоговое
окно Создание набора, из которого удалены некоторые столбцы
в
А
.
с
Названия сrолбцов
2
2022/23
Среднее по сrопбцу
Поля сводной таблицы
,.;:20;;:;23=/2"'4'----~
Актианые
Вес
~"~ро_r_н_оз_ _ _ __
Вь1берите
no1U1 д1н:I
Среднее по сrопбцу
3 1Названия сrрок " l Фактмчески
4 Гимназия №1
5 Лицей №1
---~
200
271
225
268
б
425
539
Общий итоr
Отмена
7
> uj Наборы
8
> ~ ДбалиЗак,на
9
10
Т Фильтры
::в
~
1
) ~Зака.s
11
12
13
14
15
16
17
1
> tl'IJ
х
область:
добаме:ния е отчет:
j Поиск
V
Перетащите nоля I нужную
Км,нд,рь
> ~Миенты
-
СтроtС.и
Школа
1:.,
Столбцы
Набор баллов учебного года
"
> ~ Д6али3аtС..uа
> l3За1С.а3
L
Значения
> m! Клиенты
18 1
19
>
7(1
табтща данных
Рис.
16.22.
m
Ре:sу.пьтаты
_.,__fr"'!u,n---- - - -• -
···®
О Отложить обно ...
·-
Сводная таблица после определения именованного набора
(Calculations) 1 Поля, элементы и наборы (Fields, ltems, & Sets) 1 Управление
борами (Manage Sets) и воспользуйтесь доступными параметрами.
на
Пояснение
Именованные наборы пригодятся, если вам потребуется создать асимметричную
сводную таблицу, исключив из нее вычисления для конкретных строк и/или столб
цов.
В этом разделе показан способ создания именованного набора, основанный на воз
(New Set). За
помощью MDX
можностях, предоставляемых диалоговым окном Создание набора
дать строки или столбцы для именованного набора можно также с
(Multidimensional Expressions, языка многомерных выражений) - языка запросов,
используемого Excel для взаимодействия с моделью данных. Просмотреть или от-
504
1
Глава
16
редактировать МОХ-код набора вы сможете, нажав в диалоговом окне Создание
набора
(New Set)
кнопку Изменить
16.15. Преобразуем
MDX (Edit МОХ).
сводную таблицу в формулы
Задача
У вас есть сводная таблица, основанная на модели данных, и вы хотите преобра
зовать ее ячейки в формулы с тем, чтобы иметь возможность перемещать или уда
лять их.
Решение
Предположим, вам надо получить возможность преобразовывать ячейки сводной
таблицы, основанной на модели данных, способами, которые невозможно реализо
вать на основе решений из разд.
11.7
и
16.14.
Например, использовать только
выбранные ячейки, вручную вставлять строки или столбцы или объединять или
интерполировать строки из двух отдельных сводных таблиц, чтобы сравнивать их
значения.
Решить такую задачу можно, преобразовав ячейки сводной таблицы в формулы,
получающие значения напрямую из модели данных. Это означает, что вы сможете
перемещать или удалять ячейки и все равно получать актуальные значения данных
из модели данных при их обновлении.
'
Преобразование сводной таблицы в формулы исключает возможность использо
вать такие интерактивные функции сводной таблицы, как сортировка данных и
развертывание и свертывание уровней. Кроме того, преобразовать формулы об
ратно в сводную таблицу также невозможно. Убедитесь, что копия вашей работы
надежно сохранена на случай, если вам потребуется к ней вернуться.
Перед преобразованием сводной таблицы в формулы сначала следует убедиться,
что она максимально похожа на нужный вам результат. Например, сводная таблица
должна включать все значения, для которых будут генерироваться результаты, а
также все необходимые фильтры. Убедившись, что всё так и есть, выполните ко
манду Анализ сводной таблицы (PivotTaЬle Analyze) 1 Вычисления (Calculations) 1
Средства
Обычно
OLAP (OLAP Tools)
Excel
1
Преобразовать в формулы
(Convert to Formulas).
преобразовывает сводную таблицу сразу же, как только будет вы
(Filters) панели Поля сводной
Excel сначала откроет диалоговое окно
Преобразовать в формулы (Convert to Formulas), которое позволит указать, пре
образовывать ли всю сводную таблицу или сохранить фильтры, - если вы выбере
полнена эта команда, однако, если раздел Фильтры
таблицы (PivotTaЬle
Fields)
содержит поля,
те вариант сохранения фильтров, то сможете продолжить использовать их для
фильтрации данных.
Для фильтрации данных, возвращенных формулами, также можно использовать
срезы и временнь1е шкалы. Более подробно о том, как это сделать, рассказано
в разд.
16.17.
Power Pivot
После преобразования сводной таблицы в формулы (рис.
и модель данных
16.23 ),
505
ее ячейки можно
будет обрабатывать так же, как и любые другие ячейки, содержащие формулы,
в том числе перемещать или удалять их в случае необходимости.
А
1
2
3
4
В
/ названия стоок
С
Сумма по столбцу Сумма
О
Е
=l<УБЭЛЕМЕНТ( "Тhis"'!,оrkЬооkDаtаМоdеl";"[t<лиенты].[Название].&[Галактика]")
t<отокафе
2750
1200,5
998,75
Манrустин
5
Новая Москва
б
Старрубль
7
Общий итог
933,5
7996,75
8
Рис.
16.23.
Преобразование сводной таблицы в формулы
Пояснение
Сводные таблицы предлагают удобный способ анализа данных модели данных, но
привести их к желаемому виду может оказаться сложным из-за ограничений маке
та. В этом разделе показано, как преодолеть эти ограничения, преобразовав свод
ную таблицу в формулы.
«Под капотом» Ехсе\ преобразует ячейки сводной таблицы в формулы кубов, полу
чающие данные напрямую из модели данных. Этот подход более гибкий, чем
использование функции ПОЛУЧИТЬ.ДАННЫЕ.сводной.ТАБЛИЦЫ (см. раз().
ll.32),
который
полагается на наличие сводной таблицы. Более подробно о формулах кубов расска
зано в разд.
16. 16.
16.16. Используем
формулы кубов
Задача
У вас в модели данных есть таблицы и меры, и вы хотите получать доступ к их
данным, используя формулы вместо сводных таблиц.
Решение
Предположим, ваша модель данных включает одну или несколько таблиц, и вам
надо получить доступ к их значениям, не создавая сводную таблицу. Сделать это
можно с помощью функций кубов Ехсе\
-
функций, дающих возможность полу
чать данные из модели данных напрямую.
Самая важная функция кубов
-
КУБЗНАЧЕНИЕ, возвращающая значение из модели
данных, например агрегированное значение из мер модели данных. Обычно ее
используют
элемента2;
...
в
1,
формуле
где подключение
=КУБЗНАЧЕНИЕ (подключение; выражение_ элементаl; выражение_
-
это текстовая строка, задающая имя подключения
к модели данных, а выражение_элементаl;выражение_элемента2 и т. д.
-
это необяза
тельные текстовые строки, указывающие значения, которые требуется извлечь,
506
Глава
16
и все фильтры, которые нужно применить. Так, чтобы подключиться к модели
данных
и
например,
получить,
значение меры
сумма,
Общая
следует
использовать
формулу =КУБЗНАЧЕНИЕ 1"ThisWorkЬookDataModel";" [Measures] . [Общая сумма]"). Аналогич
но для получения значения меры Общая сумма, где значение столбца Номер клиента
в таблице Клиенты равно
1,
введите формулу
=КУБЗНАЧЕНИЕ ( "ThisWorkЬookDataModel";"
[Номер клиента]
[Measures] .
[Общая сумма];" [Клиенты]
.
. [ 1] ").
Когда пользователь начинает вводить формулы кубов, имеющийся в Ехсе\ инстру
мент
lntelliSense
например,
предоставляет ему справку с аргументами каждой функции
-
модели дан
имя строки подключения модели данных и все элементы
ных: меры, таблицы, поля, единицы и т. д. Эти элементы указываются с помощью
языка запросов
MDX,
в котором
для приведенной формулы, например,
-
жение [Клиенты] ссылается на таблицу Клиенты, выражение
-
[Клиенты]. [Номер
выра
клиен
на ее столбец Номер клиента, а выражение [Клиенты]. [Номер клиента]. [1] -
та] -
клиента, чей номер равен
на
1.
Функция КУБЭЛЕМЕНТ получает ссылку на элемент модели данных
-
например, на
элемент собственно данных, и ее можно применять для проверки наличия этого
элемента.
используют
ее
Обычно
элемента; подпись),
где
подключение
-
в
формуле
=КУБЭЛЕМЕНТ (подключение; выражение_
подключение
это
к
модели
данных,
выраже
ние_ элемента ссылается на элемент, который вы хотите вернуть, а подпись (необяза
тельный аргумент)
это альтернативный текст, который надо отобразить вместо
-
метки элемента. Чтобы получить клиента из таблицы Клиенты, где Номер клиента ра
вен
1,
нужно ввести формулу =КУБЭЛЕМЕНТ ( "ThisWorkЬookDataModel";" [Клиенты] . [Номер
клиента]. [1] "1. Это действие вернет
значение Номер клиента, если клиент суще
1-
ствует, или #Н/д', если его нет.
Функцию КУБЭЛЕМЕНТ можно задействовать, чтобы упростить формулу КУБЗНАЧЕНИЕ.
Так, если ячейка А 1 содержит формулу =КУБЭЛЕМЕНТ ( "ThisWorkЬookDataModel";" [Measures J .
[Общая
сумма]" 1,
"[Клиенты]. [Номер
а
ячейка
( "ThisWorkЬookDataModel"
"[Measures].
[Общая
А2
клиента]. [1]
"1,
Al;A2)
-
формулу
допускается
вместо
=КУБЗНАЧЕНИЕ 1"ThisWorkbookDataModel";
использовать
формулу
=КУБЗНАЧЕНИЕ
=KYБЗНAЧEHИE("ThisWorkbookDataModel";
сумма];" [Клиенты]. [Номер клиента].
[1] ").
Функция кУвмнож получает ссылку из модели данных на множество элементов
-
например, на элементы в столбце таблицы. Функция не отображает эти элементы,
когда они применяются в качестве формулы ячейки, но ее можно задействовать
для упрощения других формул кубов
КУБПОРЭЛЕМЕНТ.
Обычно
ее
-
используют в
например, КУБЗНАЧЕНИЕ, КУБчислоэлмнож и
формуле
=КУБМНОЖ (подключение; выражение_
множества;подпись;порядок_сортировки;сортироватъ_по), где:
♦
аргумент подключение.
Это текстовая строка, задающая имя подключения к модели данных;
♦
аргумент выражение_множества.
Это текстовая строка, указывающая элементы, которые требуется вернуть. На
пример, выражение "[Клиенты]. [Название] .Дети" указывает на каждый уникальный
Power Pivot
и модель данных
507
элемент в столбце Название таблицы Клиенты, а выражение "[Клиенты] . [Название] .
элементы" указывает на все элементы;
♦
аргумент подпись (необязательный).
Позволяет отображать текст в ячейке, когда в ней присутствует формула. Если
опустить этот аргумент, формула не будет отображать текст;
♦
аргументы порядок_сортировки и сортировать_по (необязательные).
Они
позволяют
док_ сортировки
-
сортировать
элементы
во
множестве,
при
этом
поря
это целое число, определяющее способ сортировки, а сортиро
вать_ по задает значение, по которому нужно сортировать. Если установить поря
док_ сортировки в значение О, то множество останется в существующем порядке,
значение
1 отсортирует его в порядке возрастания по аргументу сортировать_по,
значение 2 в порядке убывания по аргументу сортировать_ по, значение 3 по
возрастанию альфа, значение 4 по убыванию альфа, значение 5 в порядке натурального возрастания, значение
в порядке натурального убы
6-
вания.
Таким образом, чтобы вернуть множество элементов в столбце название таблицы
Клиенты,
следует
ввести
формулу
=КУБМНОЖ 1"ThisWorkbookDataModel";" [Клиенты].
[Название] .Дети"). Аналогично для упорядочения этих названий по мере Общая сумма,
чтобы сначала появлялись наибольшие суммы, надо ввести формулу
=КУБМНОЖ
( "Th1 sWorkЬookDataModel";"
"[Меаsurеs].[Общаясумма]
[Клиенты]
.
[Название]
. Дети";
"Клиенты";
2;
").
Функция КУБчислоэлмнож возвращает число элементов во множестве. Обычно ее ис
пользуют в формуле =КУБЧИСЛОЭЛМНОЖ (множество), где множество
-
это множество, эле
менты которого, как правило, возращенные функцией КУБмнож, нужно подсчитать.
Поэтому
если
ячейка
83
содержит
формулу
=KYБMHOЖ("ThisWorkbookDataModel";
"[Клиенты] . [Название] .Дети"), то формула =КУБЧИСЛОЭЛМНОЖ (В3) подсчитывает, сколько
элементов она возвращает.
Функция КУБПОРЭЛЕМЕНТ возвращает элемент, занимающий конкретную позицию во
множестве. Обычно ее используют в формуле =КУБПОРЭЛЕМЕНТ (подключение; выражение_
множества;ранг;подпись), где подключение
-
это ИМЯ подключения, яыражение_множества
ссылается на множество (обычно возвращаемое функцией КУБмнож), ранг
элемента, который требуется вернуть ( 1 -
-
для первого значения, 2 -
рого и т. д.), а подпись (необязательный аргумент) -
это ранг
для вто
это альтернативный текст,
который нужно отобразить вместо метки элемента. Так, если в ячейке АЗ содер
жится
формула
=KYБMHOЖ("ThisWorkbookDataModel";"[Клиeнты]. [Название] .Дети"),
ТО
формула =КУБПОРЭЛЕМЕНТ (АЗ; 1) возвращает первый элемент.
Функция КУБЭЛЕМЕнткип получает ссылку на значение, цель или статус КПЭ, которые
можно
применить
в
формуле
КУБЗНАЧЕНИЕ.
Обычно
=КУБЭЛЕМЕНТКИП (подключение; имя_ КПЭ; свойство_ КПЭ; подпись),
подключения, имя_ кпэ
возвращать
-
это имя КПЭ, свойство_ кпэ
-
ее
где
используют
подключение
в
-
формуле
ЭТО
ИМЯ
указывает, какое свойство
( 1 возвращает текущее или фактическое значение, 2 -
целевое значе-
Глава
508
1
ние,
3-
16
текущий статус), а подпись (необязательный аргумент)
это альтернатив
-
ный текст, который нужно отобразить вместо метки свойства КПЭ. Таким образом,
возвращает статус
формула =КУБЭЛЕМЕНТКИП 1"ThisWorkЬookDataModel"; "Общая сумма"; З)
КПЭ
и
сумма,
Общая
поместить
если
эту
формулу
=КУБЗНАЧЕНИЕ ("ThisWorkЬookDataModel" ;А4;" [Клиенты]. [Номер
в ячейку
клиента].
КПЭ для клиента из таблицы Клиенты, где Номер клиента равен
[1] ")
формула
то
А4,
вернет статус
1.
Пояснение
В этом разделе показано, как использовать функции кубов
Excel
для получения
данных напрямую из модели данных. Поскольку Ехсе\ заменяет ячейки сводной
таблицы формулами кубов, самый простой способ разобраться с этими функция
ми
-
обратиться к решению из разд.
16.17. Фильтруем
16.15
и изучить полученные результаты.
формулы кубов с помощью срезов
и временных шкал
Задача
У вас есть формула КУБЗНАЧЕНИЕ, и вы хотите отфильтровать ее результаты с по
мощью среза или временной шкалы.
Решение
Предположим, некая ячейка, содержит формулу КУБЗНАЧЕНИЕ, получающую данные
из модели данных, и вам надо получить возможность динамически фильтровать ее
результаты. Сделать это можно, вставив в таблицу срез или временную шкалу
(см. разд.
11.14),
подключенные к модели данных, а затем обновить формулу
КУБЗНАЧЕНИЕ, чтобы сослаться на нее:
1.
Выделите пустую ячейку и выполните команду Вставка
(Filters)
(Filters)
2.
В
1
1
Срез
(Slicer)
для
Временная шкала
(Timeline)
диалоговом
открывшемся
Connections)
вставки среза или Вставка
окне
(Insert)
(lnsert)
1
Фильтры
1
Фильтры
для вставки временной шкалы.
Существующие
перейдите на вкладку Модель данных
подключения
(Data Model)
(Existing
и нажмите
кнопку Открыть (Орел).
3.
Выберите столбец таблицы, в который решили вставить срез или временную
шкалу, и нажмите кнопку ОК, чтобы их создать.
Вставив срез или временную шкалу, добавьте их в формулу КУБЗНАЧЕНИЕ в качестве
дополнительного аргумента. Так, если для возврата значения меры Общая
ячейка использует формулу =КУБЗНАЧЕНИЕ
сумма
( "ThisWorkЬookDa taModel";" [Measures] . [ Общая
сумма]"), и требуется отфильтровать ее с помощью временной шкалы дата заказа,
следует
ДОПОЛНИТЬ
"[Measures] .
Заказа -
[Общая
эту
формулу
до
=КУБЗНАЧЕНИЕ
сумма]" ;Временная_ шкала _Дата _Заказа),
это имя временной шкалы.
( "ThisWorkЬookDataModel";
где
Временная_ шкала _Дата
Power Pivot
и модель данных
Когда в рабочую книгу добавляется срез или временная шкала,
Excel
509
автоматиче
ски присваивает им имена, которые допускается использовать в формулах. Эти
имена начинаются со слов Срез или временная шкала, поэтому для выбора верного
имени можно задействовать имеющийся в
Excel
инструмент
lntelliSense.
(Slicer)
просмотреть имя среза, выделите его и выполните команду Срез
(Slicer) 1 Настройка
среза
(Slicer Settings).
менных шкал эквивалентного параметра в
Чтобы
1 Срез
К сожалению, для просмотра имен вре
Excel
нет.
Пояснение
В этом разделе показано, как использовать срезы и временные шкалы, чтобы от
фильтровать формулы кубов. Это может оказаться полезным, если для преобразо
вания ячеек сводной таблицы в формулы кубов вы воспользовались решением из
разд.
16.15,
и вам нужно отфильтровать их результаты.
ГЛАВА
17
LET, LAMBDA
и вспомогательные лямбда-функции
Пользовательские функции упрощают работу со сложными формулами, поскольку
позволяют вызывать каждую формулу по удобному для пользователя имени. Одна
ко до недавнего времени применять эти функции можно было только с помощью
макросов или языка
VBA.
Функция LAМBDA, появившаяся в
Excel 365,
является одним из самых значимых до
полнений, поскольку позволяет применять пользовательские функции с помощью
формул. Так, если вы часто задействуете формулы
Excel,
такие как, например, вы
числение даты финансового года, то можете использовать функцию LAМBDA, сохра
нить ее как пользовательскую функцию и вызывать затем по выбранному вами
имени.
В разделах этой главы рассматриваются следующие области:
♦
повышение эффективности и читаемости формул Ехсе\ с помощью функции LЕт;
♦
создание пользовательских функций с помощью функции LAМBDA;
♦
применение вспомогательных лямбда-функций
щих аргумент LAМBDA, -
Excel -
функций, принимаю
чтобы выполнять сложные операции, используя одну
формулу.
17.1. Повышаем
эффективность формулы
Задача
У вас есть формула, которая повторяет ссылки или вычисления, и вы хотите повы
сить ее эффективность и читаемость.
Решение
Предположим,
СУММ(А:А)>ЗО;
некая ячейка содержит формулу =ЕСЛИМН (СУММ (А:А) >50;
"Среднее";
СУММ(А:А)<=ЗО;
"Большое";
"Маленькое"), возвращающую значения Большое,
Среднее или Маленькое в зависимости от числа
-
суммы столбца А. Эта формула
ссылается на СУММIА:А) (и должна ее вычислять) три раза, что делает ее неэффектив
ной.
Если вы работаете в
Excel 2021
или
Excel 365,
то можете повысить эффективность
формул с повторяющимися вычислениями, воспользовавшись функцией LET. Эта
функция позволяет присваивать значениям или вычислениям имена, на которые
512
Глава
1
17
можно ссылаться внутри формулы, вследствие чего рассчитывает повторяющиеся
вычисления только один раз, а не несколько.
Обычно ее используют в формуле =LЕТ(имяl;значениеl;имя2;значение2;
где имяl
формула
это имя значение 1, имя2
-
-
это формула, которая использует имена вместо значений. Например, при
-
вводе =LET(x;4;x+l) значение х устанавливается равным
сумма x+l, что возвращает значение
ЕСЛИМН
... ;формула),
это имя значение2 и т. д., а последний аргумент
"Бопьшое";
(x>SO;
х>ЗО;
5.
"Среднее";
4,
после чего вычисляется
Аналогично при вводе =LET(x;
х<=ЗО;
''Маленькое"))
СУЖ(А:А);
значение х устанавли
вается равным СУММ (А:А), и оно затем используется, чтобы решить, какой текст воз
вращать. Поскольку формула ссылается на СУММ(А:А) только один раз, ей не нужно
пересчитывать сумму несколько раз, что повышает ее эффективность.
Пояснение
Этот решение представляет удобный способ повышения эффективности формул
с повторяющимися вычислениями, поскольку позволяет сократить количество вы
числений,
выполняемых формулой.
Оно также улучшает читаемость сложных
функций, т. к. использует понятные имена вместо ссылок или вычислений.
17 .2.
Пишем и тестируем лямбда-функции
Задача
Вы хотите написать и протестировать формулу, использующую лямбда-функцию
Excel,
чтобы можно было задействовать ее вместе с другими решениями
мер, изразд.
-
напри
17.4.
Решение
-
на
пример, вычисление календарного или финансового квартала даты (см. разд.
Предположим, в вашей рабочей книге имеется часто используемая формула
6.4).
Если вы работаете в
Excel 365,
то можете упростить применение этой формулы,
превратив ее в пользовательскую функцию с помощью лямбда-функции
Excel.
Функция LAМBDA позволяет создавать специальные функции на основе формул
Excel,
не прибегая к использованию макросов или языка УВА. Сначала в ячейке рабочего
листа пишется и тестируется лямбда-формула, и как только становится понятно,
что она работает должным образом, остается лишь воспользоваться рекомендация
ми разд.
17.4,
чтобы преобразовать ее в именованную функцию или передать ее во
вспомогательную лямбда-функцию (см.разд.
17. 7 и
далее).
Лямбда-формула имеет вид LАМВDА(имяl;имя2; ... ;формула), где имяl, имя2 и т. д.
(необязательные) имена переменных, а последний аргумент формула
-
-
это
это формула,
которая их использует. Далее приведено насколько примеров использования лям
бда-формул:
и вспомогательные лямбда-функции
LET, LAMBDA
♦
Эта формула вычисляет сумму х+ 1 для значения х. Если х равно
5,
то формула
6;
LAМBDA(x;y;x-y)
Эта формула вычисляет разность х-у для значений х и у. Если х равно
но
♦
513
LAМBDA (х; х+ 1)
возвращает
♦
1
2,
то формула возвращает
I О,
а у рав
8;
LAМBDA(date;OKPYГЛBBEPX(MECЯЦ(date)/3;0))
Эта формула возвращает календарный квартал даты. Если date -
это сегодняш
няя дата, то формула возвращает сегодняшний календарный квартал;
♦
LАМВDА(СЛУЧМЕЖДУ(1;10))
Эта формула возвращает случайное целое число от
I
до
I О.
Обратите внимание,
что приведенный пример включает только аргумент +формула+, потому что пере
менные +имя+ не нужны.
В отличие от других формул, лямбда-формулу можно выполнить, введя ее в ячейку
и добавив набор круглых скобок, содержащий все значения, которые требуется ей
передать. Эти значения соответствуют аргументам формулы имя, поэтому, чтобы
выполнить вычисление по формуле =LAМBDA(x;x+l), где х равно
5,
нужно ввести
=LAМВDA(x;x+l) (5). Далее приведены некоторые примеры выполнения лямбда-фор
мул:
♦
=LAМBDA(x;x+l) (6)
Эта формула присваивает
♦
6 аргументу
6+ 1и
возвращает
7;
=LAМBDA(x;y;x-y) (6;4)
Эта формула присваивает
и возвращает
♦
х, вычисляет
6
аргументу х и
4
аргументу у, вычисляет их разницу
2;
=LAМBDA(date;OKPYГЛBBEPX(MECЯЦ(date)/3;0)) (СЕГОДНЯ())
Эта формула присваивает сегодняшнюю дату аргументу date, возвращая теку
щий календарный квартал:
♦
=LАМВDА(СЛУЧМЕЖДУ(1;10)) ()
В дополнительных скобках ничего нет, потому что у формулы LAМBDA нет аргу
ментов +имя+. Формула возвращает случайное целое число от
Примеры вычисления лямбда-формул показаны на рис.
I до I О.
17 .1.
Формула
Результат
=LAMBDA(x; x+l)(S)
б
=LAMBDA(x;y;
х-у)(б;
4)
2
=LAMBDA(date; ОКРУГЛВВЕРХ(МЕСЯЦ(dаtе)/3; О})(СЕГОДНЯ()) 4
=LАМВDА(СЛУЧМЕЖДУ(l;
Рис.
10))(}
17.1.
Вычисление лямбда-формул
З
514
1
Глава
17
При попытке ввести лямбда-формулу в ячейку и опустить дополнительные круглые
скобки,
Excel
отобразит ошибку в значении #вычисл 1 . Столкнувшись с этой ошиб
кой, убедитесь, что включили дополнительные круглые скобки.
Протестировав лямбда-формулу, выполнив ее с различными параметрами и убе
дившись, что она дает правильные результаты, можно будет использовать ее с дру
гими
решениями
(см. разд.
-
например,
чтобы
определить
пользовательскую функцию
17.4).
Пояснение
Функция LАМВDА работает аналогично функции LET (см. разд.
17.1),
потому что ее
используют, чтобы указать формулу, которая (необязательно) задействует имена
переменных вместо жестко зафиксированных значений. Однако функция LET вклю
чает аргументы, присваивающие значения этим именам, а в функции LАМВDА их нет.
Вместо этого в лямбда-функцию передаются значения для любых имен перемен
ных извне.
Хотя этот подход может показаться изначально неудобным, он, тем не менее, пре
доставляет
возможность
использовать
лямбда-формулы
для
различных
целей,
включая определение пользовательских функций. В остальных разделах этой главы
вы найдете достаточно информации и примеров, подтверждающих эту точку зре
ния.
Дополнение
Если при вызове формулы LAМBDA будут опущены ее аргументы,
ку в значении #ЗНАЧ 1 • В разд.
17.3. Делаем
17. 3 показано,
Excel
вернет ошиб
как избежать таких ошибок.
лямбда-аргументы необязательными
Задача
У вас есть лямбда-формула, вы хотите, чтобы один или несколько ее аргументов
были необязательными.
Решение
Если требуется указать, что аргумент в лямбда-формуле необязательный, сделать
это можно, поместив его имя в квадратные скобки
[J.
Например, если в формуле
=LAМBDA(x;y;x+y) нужно сделать аргумент у необязательным, перепишите эту форму
лу так: =LAМBDA(x; [у] ;х+у).
При
выполннении лямбда-формулы
Excel
воспринимает все опущенные
необязательные параметры как пустые. Поэтому при вводе =LАМВDА(х;
аргументу х присваивается значение
значение
6.
6,
вами
[yJ ;х+у)
(61
аргумент у остается пустым, и возвращается
Аналогично при вводе =LАМВDА(текстl; [текст2] ;текстl&текст2) ("Привет")
LET, LAMBDA и вспомогательные лямбда-функции
аргументу текстl присваивается
1
515
"Привет", аргумент текст2 остается пустым, и
воз
вращается текст Привет.
Проверить,
был
ли
опущен
аргумент,
можно
с
помощью
функции
rsoмrттED (аргумент), которая возвращает значение ИСТИНА, если аргумент был опущен,
и значение лоJКЬ, если это не так. Например, если в формуле =LAМBDA (х;
но присвоить опущенному аргументу у значение
1,
[yJ; х*у)
нуж
перепишите эту формулу так:
=LAМBDA (х; [у); x*IF ( ISOMITTED (у); 1; у)). Здесь фрагмент формулы ЕСЛИ (ISOMITTED (у); 1 ;у)
проверяет, был ли опущен аргумент у, и возвращает
1,
если это так, или значение
аргумента у, если он опущен не был. Таким образом, при вводе =LАМВDА(х; [у];
х*ЕСЛИ (Isa-aTТED (у) ; 1 ;у) ) ( б) аргументу х присваивается значение
значение
1,
и возвращается значение
аргументу у -
6,
6.
Пояснение
Если при вызове формулы LАМВDА будут опущены ее аргументы,
Excel
вернет ошиб
ку в значении #ЗНАЧ!. В этом разделе показано, как избежать такой проблемы, сде
лав аргумент необязательным и проверяя, был ли он опущен.
17.4. Определяем
пользовательскую лямбда-функцию
Задача
Вы хотите определить пользовательскую функцию, которую затем сможете ис
пользовать во всей рабочей книге, не применяя макросы или язык
VBA.
Решение
Предположим, в вашей рабочей книге имеется часто используемая формула
пример, вычисление календарного или финансового квартала даты
Если вы работаете в
Excel 365,
(см.разд.
на
разд.
6. 4).
то можете превратить эту формулу в пользователь
скую функцию, добавив лямбда-формулу в инструмент
(Name Manager)
(см.
-
Excel
Диспетчер имен
2.6).
Дпя создания пользовательской функции:
1.
Обратитесь к рекомендациям разд.
17.2,
чтобы написать и
протестировать
в ячейке рабочего листа лямбда-формулу для требуемой функции. Так, для вы
числения календарного квартала даты в этом примере следует написать формулу
=LАМВDА(dаtе;ОКРУГЛВВЕРХ(МЕСЯЦ(dаtе)
2.
Выполните команду Формулы
Names)
3.
1
Задать имя
(Formulas) 1 Определенные
(Define Name) 1 Задать имя (Define Name).
В поле Имя
Name)
4.
/3;0)).
(рис.
имена
(Name) открывшегося диалогового окна Создание
17.2) введите имя функции - например, Квартал.
В списке поля Область
(Scope)
выберите пункт Книга
пользовать функцию во всей рабочей книге.
(Defined
имени
(Workbook),
(New
чтобы ис
516
Глава
17
о
Создание имени
rк;артал
имя:
Q6ласть:
Книга
[»••~...., L•~п
Диапа1он:
~·-,.·· -.... ~щ
~··· ...... ,
х
J
!..:iмвод(dаtе;ОКРУГЛВВЕРХ(МЕСЯЦ{dаtе)/3;0))
1 ок
Рис.
5.
17.2.
В поле Примечание
Определяем пользовательскую функцию КВАРТАЛ
(Comment)
введите описание формулы
вращает календарный квартал даты, целое число от
6.
В поле Диапазон
ге
1, -
(Refers to)
1 до 4.
например, Воз
введите лямбда-формулу, которую написали на ша
в этом примере =LАМВDА(dа.tе;ОКРУГЛВВЕРХ(МЕСЯЦ(dа.tе) /З;О)), и нажмите
кнопку ок.
По нажатию кнопки ОК
Excel
сохранит лямбда-формулу в рабочей книге как поль
зовательскую функцию, чтобы ее можно было вызвать, используя данное ей имя.
Так, в этом примере, при вводе в ячейку формулы =КВАРТАП(СЕrодняо) возвращается
текущий календарный квартал.
Пояснение
Это действенное решение показывает, как создать и использовать лямбда-формулу
для определения пользовательской функции, которую можно будет задействовать
во всей рабочей книге, не применяя макросы или язык
VBA.
Создание пользова
тельских функций может помочь улучшить читаемость ваших формул и избавит от
необходимости копировать сложные формулы в разные ячейки, а если формуле по
требуется обновление, надо будет изменить ее только в одном месте.
Дополнение
Чтобы научиться создавать пользовательские функции, используя язык
титесь к разд.
VBA,
обра
18.9.
17.5. Пишем
рекурсивные лямбда-формулы
Задача
Вы хотите создать пользовательскую лямбда-функцию, которая вызывает саму себя.
Решение
Предположим, вам нужно создать пользовательскую лямбда-функцию (см. разд.
которая возвращает п-е число последовательности Фибоначчи
-
ряда чисел
17.4),
1, 1, 2,
LET, LAMBDA
и вспомогательные лямбда-функции
517
и т. д., в котором первое и второе числа равны
1, а каждое последующее
17.3). То есть третье число
в последовательности равно 2, потому что это второе ( 1) плюс первое ( 1), четвертое
число равно 3, потому что это третье (2) плюс второе ( 1), а пятое равно 5, потому
что это четвертое (3) плюс третье (2).
3, 5, 8, 13
число
равно
сумме
двух
предыдущих
11 2
n:
Число Фибоначчи 11 1
Рис.
17.3.
Первые
12
(рис.
З 4 5 б 7 8 9 10 11 12
2 З 5 8 13 21 34 55 89 144
чисел в последовательности Фибоначчи
Поскольку каждое число Фибоначчи с номером более третьего, зависит от значения
предыдущих
двух,
генерировать
каждое
число
можно,
определив
рекурсивную
пользовательскую лямбда-функцию, которая вызывает саму себя. Так, для этого
примера следует создать пользовательскую функцию с именем ФИБОНАччи, в которой
ФИБОНАЧЧИ(n) -
это ФИБОНАЧЧИ(n-1) + ФИБОНАЧЧИ(n-2), где n -
поскольку если n равно
1 или 2,
это целое число больше
то ФИБОНАЧЧИ (n) возвращает
2,
1.
Для создания функции:
1.
Выполните команду Формулы
Names)
2.
Задать имя
Определенные
(Formu\as)
(Define Name) 1 Задать имя (Define Name).
имена
1
(Defined
В поле Имя
Name)
3.
1
(рис.
(Name) открывшегося диалогового окна Создание имени (New
17.4) введите имя функции - например, ФИБОНАЧЧИ.
В списке поля Область
(Scope)
выберите пункт Книга
(Workbook),
чтобы ис
пользовать функцию во всей рабочей книге.
4.
В поле Примечание
вращает
n-oe
(Comment)
введите описание формулы
например, Воз
-
число в последовательности Фибоначчи, где
n-
это положи
тельное целое число.
5.
В поле Диапазон
ге
1, -
(Refers to)
введите лямбда-формулу, которую написали на ша
В ЭТОМ примере =LАМВDА(n;ЕСЛИ(n>2;ФИБОНАЧЧИ(n-1)+ФИБОНАЧЧИ(n-2) ;1)),
и нажмите кнопку ОК.
□
Со3дание имени
!1 •tя:
[ФИ БОНА Ч Ч И
Qбласть:
[книга
х
- - - . . -"-,
!}римечание: rв;;;sращает ;;;;-число в последовательности Фибоначчи, где n 1ло положительное целое число
Диаnа}он:
[ = LAMBDA(n; ECЛИ(n > 2;ФИБОНАЧЧИ(n-1 ) -ФИБОНАЧЧИ (n -2); 1 ))1
ОК
Рис.
17.4.
Отмена
Определяем пользовательскую функцию ФИБОНАЧЧИ
1
518
1
Глава
Созданную
17
функцию
можно сразу же
использовать для
генерирования
в последовательности Фибоначчи. Так, при вводе =ФИБОНАЧЧИ(12) вернется
чисел
144 -
12-й номер в последовательности.
Обычно
рекурсивные
пользовательские
=LАМВDА(аргументы;ЕСЛИ(условие;формула;значение)
гументы функции, условие продолжать итерацию,
лямбда-функции
),
где аргументы
-
принимают
вид
это ссылка на ар
это условие, определяющее, когда функция должна
формула -
это код, который должна оценивать лямбда
функция, когда условие принимает значение ИСТИНА, а значение -
это значение, кото
рое нужно вернуть, когда условие принимает значение ложь.
Рекурсивные пользовательские лямбда-функции всегда должны включать условие,
определяющее, когда функция должна продолжать итерацию, а когда она должна
остановиться. Если такое условие не включить, функция будет продолжать вызы
,·
вать саму себя, не завершая работу.
Пояснение
В этом разделе показано, как создать пользовательскую лямбда-функцию, которая
вызывает саму себя. Из этого следует, что формулы
создания
циклических
функций,
применяемых
Excel
для
можно использовать для
выполнения
итеративных
вычислений, или функций, которые, например, циклически перебирают каждый
символ в текстовой строке.
17.6. Копируем
пользовательскую лямбда-функцию
в другую рабочую книгу
Задача
У вас есть рабочая книга, содержащая пользовательские лямбда-функции, и вы
хотите скопировать одну или несколько из них в другую рабочую книгу.
Решение
Допустим, вы, воспользовавшись рекомендациями разд.
17.4,
создали пользова
тельскую лямбда-функцию КВАРТАЛ, а затем решили скопировать ее в другую рабо
чую книгу.
Чтобы это сделать:
l.
2.
3.
4.
Откройте рабочую книгу, содержащую пользовательскую функцию.
Выделите ячейку, содержащую пользовательскую функцию, и скопируйте ее,
нажав
комбинацию
(Home)
1
клавиш
Буфер обмена
<Ctrl>+<C> или выполнив
(Clipboard) 1 Копировать (Сору).
команду
Главная
Перейдите в рабочую книгу, в которую нужно скопировать функцию.
Выделите пустую ячейку и нажмите комбинацию клавиш
полните команду Главная
(Home)
1
Буфер обмена
<Ctrl>+<V> или вы
(Clipboard) 1 Вставить
LЕТ,
(Paste),
LAMBDA
и вспомогательные лямбда-функции
1
519
чтобы вставить формулу. Ехсе\ при этом добавит пользовательскую
функцию в Диспетчер имен
(Name Manager) рабочей
книги.
Чтобы скопировать из одной рабочей книги в другую все пользовательские функ
ции, включая все определенные имена:
1.
Откройте рабочую книгу, содержащую пользовательские функции, и книгу,
в которую собираетесь их скопировать.
2.
В рабочей книге, из которой нужно скопировать пользовательские функции,
щелкните правой кнопкой мыши на пустом рабочем листе и выберите из кон
текстного меню команду Переместить или копировать
3.
(Move or Сору).
В открывшемся диалоговом окне Переместить или копировать
(Move or Сору)
выберите рабочую книгу, в которую требуется скопировать пользовательские
функции, установите флажок Создать копию
(Create
а Сору) и нажмите кнопку
ОК. Ехсе\ при этом скопирует рабочий лист в целевую рабочую книгу вместе со
всеми определенными именами, включая пользовательские функции.
Пояснение
В этом разделе представлены два способа копирования в другую рабочую книгу
всех определенных в текущей рабочей книге пользовательских лямбда-функций,
что избавляет от необходимости вновь их создавать вручную.
Поскольку пользовательская лямбда-функция создается с присвоением ей опре
деленного имени, для вызова функции в другой рабочей книге можно задейство
вать ссылку на рабочую книгу, в которой она создана, вместо того, что копировать
саму формулу. Более подробно вопросы использования имен для создания ссылок
освещены в разд.
2. б.
17.7. Применяем лямбда-формулу в
каждом столбце
Задача
У вас есть массив или диапазон, и вы хотите применить лямбда-формулу в каждом
его столбце и вернуть динамический массив результатов.
Решение
Предположим, диапазон В 1:G4 содержит числа, и вам надо вычислить сумму каж
дого столбца, умноженную на
сделать это
-
0,5.
Если вы работаете в Ехсе\
365,
один из способов
использовать функцию BYCOL.
Функция BYCOL принимает массив или диапазон, применяет лямбда-формулу в каж
дом его столбце и возвращает динамический массив, содержащий результат для
каждого столбца. Обычно ее используют в формуле =BYCOL (массив;лямбда) со сле
дующими аргументами:
520
♦
Глава
17
массив
Это массив или диапазон, принимаемый в формуле,
-
тот, для столбцов кото
рого нужно применить лямбда-формулу;
♦
лямбда
Это лямбда-формула, принимающая вид LАМВDА(столбец;формула), где столбец
это имя переменной, используемой для столбца в массиве, а формула -
это фор
мула, к нему применяемая.
Чтобы создать динамический массив, который помещает сумму каждого столбца из
диапазона В 1:G4, умноженную на
в ячейки диапазона В5 :G5, введите в ячей
0,5,
ку В5 формулу =BYCOL(Bl:G4;LAМВDA(c;CYЖ(c) *0,5)
fx
В5
А
1 1
-
в
с
1
•BYCOL( B1:G4;LAMBDA(c; СУММ(с)•О,5))
D
2
1 (рис. 17.5).
-
Е
F
3
4
н
G
б
5
2
7
8
9
10
11
и
3
13
14
15
lб
17
18
4 1
19
20
21
22
20
22
24
2б
23
28
24
30
s lвvcoL: 1
Рис.
17.5.
Использование функции
BYCOL
«Под капотом» формула BYCOL работает следующим образом:
1.
Принимает первый столбец в массив и передает его в лямбда-формулу.
2.
Лямбда-формула суммирует значения столбца и умножает результат на
0,5.
Ре
зультат для этого столбца является первым элементом в динамическом массиве,
возвращенном формулой.
3.
Повторяет шаги
1 и 2 для
каждого столбца массива, помещая результат каждого
столбца в динамический массив.
Поскольку функция BYCOL возвращает динамический массив, его можно использо
вать для того, чтобы такие функции,
как СУММ,
заполняли ячейки данными,
-
в противном случае они не стали бы этого делать. Подход, основанный на функции
BYCOL,
может избавить вас от необходимости копировать формулы в смежные
ячейки.
Пояснение
BYCOL является вспомогательной функцией функции LAМBDA и применяет лямбда
формулу в каждом столбце массива, возвращая динамический массив результатов.
В примере этого раздела задействован массив чисел, но вы можете использовать
с этой функцией также и другие типы значений. Предположим, к примеру, что диа
пазон В 1:G4 содержит текстовые значения, и вам надо соединить значения каждого
столбца с помощью разделителя «пробел». Введите тогда в ячейку В5 формулу
=BYCOL(Bl:G4;LAМВDA(c; ОБЪЕДИНИТЬ(" "; ИСТИНА; с))) -
здесь лямбда-формула для со
единения текста применяет функцию ОБЪЕДИНИТЬ (рис.
17.6).
LЕТ,
В5
/х
V
и вспомогательные лямбда-функции
Е
D
н
G
F
щ
й
в
х
п
к
ч
о
д
ы
р
у
ь
Е
м
ф
3
я
т
ю
и
Б
ЩКУЯ
ЙЧЫ
ВОЕЮ
хдми
ЩЫФБ
1
А
2
з
4
5 BYCOL: IA ПР 3
Рис.
17.6.
1 521
•BYCOЦB1 : G4; LAMBDA(c; ОБЪЕДИНИТЬ(""; ИСТИНА; с) ))
с
в
А
r--
LAMBDA
Использование функции
BYCOL
17.8. Применяем лямбда-формулу
щ
с текстовыми значениями
в каждой строке
Задача
У вас есть массив или диапазон, и вы хотите применить лямбда-формулу в каждой
его строке и вернуть динамический массив результатов.
Решение
Предположим, диапазон
A2:F5 содержит числа, и вам надо вычислить сумму каж
0,5. Если вы работаете в Excel 365, сделать это можно,
дой строки, умноженную на
применив функцию BYROW.
Функция BYROW работает аналогично функции BYCOL ( см. разд.
17. 7),
но применяет
лямбда-формулу в каждой строке массива и возвращает динамический массив,
содержащий результат для каждой его строки. Обычно ее используют в формуле
=BYROW (массив;лямбда)
♦
со следующими аргументами:
массив
Это массив или диапазон, принимаемый в формуле,
-
тот, для строк которого
нужно применить лямбда-формулу;
♦
лямбда
Это лямбда-формула, принимающая вид LАМВDА(с-rрока;формула), где с-rрока -
имя переменной, используемой для строки в массиве, а формула -
это
это формула,
к ней применяемая.
Чтобы создать динамический массив, который помещает сумму каждой строки из
диапазона
G2
A2:F5,
умноженную на
0,5,
в ячейки диапазона
формулу =BYRDW(A2:FS;LAМВDA(r;OЖ(r) *0,5)) (рис.
G2:G5,
введите в ячейку
17.7).
«Под капотом» формула BYROW работает следующим образом:
1.
Принимает первую строку в массив и передает ее в лямбда-формулу.
2.
Лямбда-формула суммирует значения строки и умножает результат на
0,5.
Ре
зультат для этой строки является первым элементом в динамическом массиве,
возвращенном формулой.
3.
Повторяет шаги
1
и
2
для каждой строки массива, помещая результат каждой
строки в динамический массив .
522
Глава
17
G2
fx
V
в
А
···-·
с
=BYROW(A2:F5; LAMBDA(r; СУММ (r)'О,5))
D
1
7
4
13
2
8
14
5
19
20
2
з
Е
-----·
---·--
з
4
9
10
5
11
17
23
·---
1
15
lб
21
22
F
н
G
BYROW:
б
10,5
12
28,5
18
46,5
64,5
24
6
Рис.
17.7.
Использование функции
BYROW
Пояснение
BYROW является вспомогательной функцией функции LAМBDA и применяет лямбда-фор
мулу в каждой строке массива, возвращая динамический массив результатов.
Как и функцию BYCOL, функцию BYROW также можно использовать с другими значе
ниями. Например, если диапазон
A2:F5
содержит текстовые значения, и вам надо
соединить значения в каждой строке с помощью разделителя «пробел», введите
в ячейку
формулу =ВУRОW(А2:F5;LАМВDА(r;ОБЬF.,t\ИНИТЬ{" ";ИСТИНА;r))) (рис.
G2
/х
G2
А
1
2
3
4
5
в
17.8).
• BYROW(A2:F5;LAMBDA(r; ОБЪ ЕДИНИТЬ(""; ИСТИНА; r)))
с
Е
D
F
r
G
н
BYROW:
IA
lп
р
13
Рис.
17.9. Создаем
щ
й
в
х
щ
к
ч
о
д
ы
пкчоды
у
ь
Е
м
ф
Р УЬЕМФ
я
т
ю
и
Б
ЗЯТЮИБ
17.8.
Использование функции
BYROW
АЩ Й ВХЩ
с текстовыми значениями
массив вычисляемых значений
Задача
Вы хотите создать массив, который использует лямбда-формулу для вычисления
каждого его значения.
Решение
Предположим, вам нужно вставить в диапазон А 1:G 7 таблицу умножения
Если вы работаете в
Excel 365,
7
х
7.
сделать это можно, применив функцию МАКЕАRRАУ.
Функция МАКЕАRRАУ создает динамический массив с указанным числом строк и
столбцов, где каждое значение вычисляется с помощью лямбда-формулы. Обычно
функцию МАКЕАRRАУ используют в формуле =МАКЕАRRАУ (строки;столбцы;лямбда) со сле
дующими аргументами:
LЕТ,
♦
LAMBDA
и вспомогательные лямбда-функции
1
523
строки и столбцы
Эти аргументы указывают число строк и столбцов, которые должны быть в ди
намическом массиве;
♦
лямбда
Это лямбда-формула, принимающая вид LАМВDА (строка;столбец;формула), где строка
это индекс строки и столбца каждого значения, а формула -
и столбец -
это фор
мула, применяемая для вычисления каждого значения.
Чтобы создать динамический массив, который помещает таблицу умножения
в диапазон
(рис.
введите в ячейку
Al :G7,
AI
7
х
7
формулу =НAКEARRAY(7;7;LAМВDA(r;c;r*c))
17.9).
А1
fx
V
D
с
в
А
3
2
4
2l r
3
4
5
23
4
5
8
10
б
б
и
7
7
14
б
9
12
б
=MAKEARRAY(7; 7; LAMBDA(r;c; r•c))
15
18
21
Е
5
10
и
15
16
20
24
28
20
25
30
35
н
G
F
4
8
б
7
12
18
24
30
36
42
14
21
28
35
42
49
8 J
Рис.
17.9.
Использование функции МАКЕАRRАУ
«Под капотом» формула МАКЕАRRАУ работает следующим образом :
1.
2.
Создает динамический массив с семью строками и семью столбцами .
Переходит к первой позиции динамического массива и передает его индексы
значения строки и столбца
3.
( 1 и 1)
в лямбда-формулу .
Лямбда-формула перемножает индексы значения строки и столбца, после чего
функция МАКЕАRRАУ использует результат
( 1) для
первого значения динамического
массива.
4.
Повторяет шаги
2
и
3 для
каждой позиции в динамическом массиве.
Пояснение
МАКЕАRRАУ является вспомогательной функцией функции LAМBDA и применяет лямбда
формулу для создания динамического массива заданного размера .
В примере этого раздела показано, как вычислить каждое значение, перемножая
индексы его строки и столбца. И хотя эти индексы всегда должны передаваться
в лямбда-формулу, использовать их в этой формуле совершенно не обязательно.
Например, формула =МАКЕАRRАУ (5 ; S;LAМBDA(r;c; слчис 1))) создает массив случайных
чисел
5
=СЛМАССИВ
х
5,
(5 ; 5 ) .
приводя к тому же результату, что и при использовании формулы
524
Глава
17
17.10. Преобразуем
значения в массивах
Задача
У вас есть один или несколько массивов или диапазонов, и вы хотите использовать
лямбда-формулу, чтобы преобразовать их значения и вернуть динамический массив
результатов.
Решение
Предположим, диапазоны А2:А6 и
82:86
содержат наборы чисел, и вам надо опре
делить наибольшее значение для каждой строки каждого из них. Если вы работаете
в
сделать это можно, применив функцию МАР.
Excel 365,
Функция
МАР
принимает
один
или
несколько
массивов,
задействует
лямбда
формулу для преобразования их значений, а затем возвращает динамический мас
сив результатов. Обычно ее используют в формуле =МАР (массивl ;массив2; ... ;лямбда)
со следующими аргументами:
♦
массив] ;массив2; . ..
Это массивы, значения которых должна преобразовать лямбда-формула (в на
шем примере два столбца);
♦
лямбда
Это
лямбда-формула,
массива2;
...
массива2 -
;формула),
принимающая
где
вид
значение_ массива]
LАМВDА(значение_массиваl;значение_
ЭТО
значение
массив 1,
это значение в той же позиции в массив2, а формула -
значение_
это формула,
применяемая для их преобразования.
Чтобы создать динамический массив, который сравнивает диапазоны А2:А6 и
82:86
и возвращает наибольшее значение в каждой строке, введите в ячейку С2
формулу =МАР(А2 :Аб;В2 :Вб;LАМВDА(а;Ь;МАКС (а;Ь))) (рис.
/х
С2
А
1
В
Столбец А
=МАР(А2:Аб; 82: Вб ; LAMBDA(a;b; МАКС(а ; Ь)))
с
СтолбецБ
17.1 О).
D
Е
F
G
н
Макс.
2
1
5
5
3
4
1
4
4
з
7
7
5
5
2
5
б
8
5
8
7
Рис.
17.1 О.
Использование функции МАР
«Под капотом» формула МАР работает следующим образом:
1.
Принимает значения первой позиции каждого массива и передает их в лямбда
формулу.
LET, LAMBDA
и вспомогательные лямбда-функции
2.
Лямбда-формула вычисляет наивысшее из этих двух значений.
3.
Помещает результат из шага
2
525
в первую позицию динамического массива, воз
вращенного формулой.
4.
Повторяет шаги с
по 3-й для каждой позиции, заполняя динамический мас-
1-ro
сив полученными результатами.
Функцию МАР также можно использовать вместе с функциями и и или, чтобы провес
ти логические тесты. Предположим, к примеру, что диапазон А2:А 7 содержит спи
сок имен компаний, а диапазон В2:В7
-
список соответствующих сумм . Тогда для
создания динамического массива,
показывающего,
нию «Старрубль» и сумму больше
5000
какие
строки
содержат
В2:В7; LАМВDА(хомпания;сумма; И(хомпания = "Старруб.пь"; сумма> 5000))) (рис.
с
в
А
1
Компании
~lеrаЕ!f:!~бль > 5000?
компа
Р, введите в ячейку С2 формулу =МАР (А2 : А7;
о
Е
F
2
Котокафе
1768,ООР =МАР( А2:А7; В2:В7; LАМВDА ( компания; сумма ; И(компании
3
Манrустин
7 398,ООР
G
= " Сrаррубль" ;
17.11).
н
сумма >
1
5000}))
ложь
4
Котокафе
2875,ООР
лож ь
5
Сrаррубль
5187,ООР
ИСТИНА
б
Котокафе
6209,ООР
ложь
7
Сrаррубль
4820,ООР
ложь
8
Рис.
17.11.
Использование функции МАР вместе с функцией И
Функцию МАР можно использовать и для преобразования значений одного массива .
Так, если диапазон А2 : С5 содержит числа, для создания динамического массива,
показывающего, например, каждое значение, умноженное на 0,5, введите формулу
=МАР (А2: cs; LАМВDА (х; х*О, 5) ) . Однако в большинстве случаев получить те же са-
мые результаты можно, применив более простую формулу динамического масси
ва, - просто введите для этого примера формулу =А2:С5*0,5 (см. разд. 3.4) .
Пояснение
В этом разделе показаны способы применения вспомогательной лямбда-функции
МАР для преобразования значений в одном или нескольких массивах и возвращения
динамического массива результатов. Это удобно, если вам надо вернуть динамиче
ский массив, задействующий формулы, которые в другом случае не работали
бы,
-
например, при агрегировании данных или использовании логических функ
ций.
17.11. Вычисляем
кумулятивные значения
Задача
У вас есть массив, и вы хотите использовать лямбда-формулу для вычисления
кумулятивных значений, таких как промежуточные суммы или последовательные
текстовые соединения.
Глава
526
17
Решение
Предположим, диапазон А2:А6 содержит список сумм, и вам надо сгенерировать
промежуточный итог этих сумм. Если вы работаете в
Excel 365,
сделать это можно,
применив функцию scAN.
Функция scAN принимает начальное значение и массив, использует лямбда-формулу
для вычисления последовательных значений, таких как промежуточный итог, после
чего возвращает динамический массив результатов. Обычно ее используют в фор
муле
♦
=SCAN (начальное_ значение;массив;лямбда) со следующими аргументами:
начальное значение
Это начальное значение вычисления. Обычно его устанавливают в значение О,
если нужно сложить числа, в значение
и в значение
♦
1111
чтобы перемножить значения,
1-
чтобы соединить текстовые значения;
-
массив
Это массив, значения которого будут использоваться в лямбда-формуле;
♦
лямбда
Это лямбда-формула, принимающая вид LАМВDА(аккумулятор;значение;формула), где
аккумулятор- это кумулятивное значение (например,
значение -
это следующее значение в массив, а формула -
промежуточный итог),
это формула, приме
няемая для вычисления следующего промежуточного итога.
Чтобы создать динамический массив, который возвращает промежуточный итог
сумм ячеек диапазона А2:А6, введите в ячейку В2 формулу =SCAN(O; А2:Аб; LАМВDА
(итог;х; итог+ х)) (рис.
В2
17.12).
/х
V
в
А
1
2
с
1243,001?
5 342,001?
1243,001?
6 5&5,00 1?
4
5
-3 756,001?
123,001?
-5 674,001?
2829,001?
2952,001?
-2 722,001?
17.12.
IАМВDА( итог,х; итог+ х))
о
Е
F
Поомежvточный итог
з
6
Рис.
Сумма
=SCAN(O; Ю.:/\Е, ;
Использование функции SCAN для возврата промежуточного итога
«Под капотом» формула scAN работает следующим образом (здесь имеется в виду,
что первые две суммы равны
1.
2.
1243
и
5342):
Устанавливает начальное значение промежуточной суммы равным О.
Передает первое значение массива
(1243)
в лямбда-формулу, которая прибавля
ет его к промежуточному итогу. Теперь промежуточный итог становится рав
ным
1243,
что является первым значением динамического массива, возвращен
ного формулой.
LЕТ,
LAMBDA
и вспомогательные лямбда-функции
Переходит ко второму значению массива
3.
(5342)
527
и передает его в лямбда
формулу, которая добавляет это значение к промежуточному итогу, в результате
чего он становится равным
6585,
что является вторым значением динамического
массива.
Продолжает выполнять эти же дейстnия для каждого значения в массиве, выводя
4.
для них новые промежуточные итоги.
Функцию scAN можно использовать и с текстовыми значениями. Например, если
диапазон А2:А6 содержит список подарков, создать динамический массив, показы
вающий накопленный на каждом этапе список подарков можно, введя в ячейку В2
формулу=SСАN("";А2:Аб;LАМВDА(итоr;подарок; подарок & " " & итоr)) (рис.
/х
В2
• SСАN( "":А2: Аб:LАМВОА(итоr,подарок; подарок & • • & итог))
в
А
1
Пода
17.13).
Пол
ки:
енные пода
км:
2
куропатка на rрушевомдерев ,•~у~ро_па_тка_на_rр~у~w_ев_ом_д~•~Р•_•_•_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
3
две горлицы
две горлицы куропатка на грушевом дереве
4
три французские курицы
три французские курицы две горлицы куропатка на грушевом дереве
5
четыре певчие птицы
четыре певчие птицы три французские курицы две горлицы куропатка на грушевом дереве
б
пять золотых колец
7
Рис.
17.13.
Использование функции
SCAN
..
с текстовыми значениями
Пояснение
В этом разделе показано, как использовать вспомогательную лямбда-функцию scAN
для возвращения динамического массива кумулятивных значений, таких как про
межуточные итоги.
Функция scAN пригодится, если вам нужно видеть каждое промежуточное вычис
ление. Если же вам надо увидеть только конечный результат, можете вместо SCAN
воспользоваться функцией REDUCE (см.разд.
17 .12.
17.12).
Возвращаем конечное значение
кумулятивного вычисления
Задача
У вас есть массив, и вы хотите использовать лямбда-формулу, чтобы вернуть
конечный результат кумулятивного вычисления.
Решение
Предположим, диапазон
Al :Е5
содержит числа, и вам надо подсчитать, сколько из
них являются нечетными. Если вы работаете в Ехсе\
менив функцию REDUCE.
365,
сделать это можно, при
Глава
528
17
Функция REDUCE работает аналогично функции SCAN ( см. разд.
17.11) -
она прини
мает начальное значение и массив и использует лямбда-формулу для вычисления
последовательных значений, однако возвращает только конечный результат. Обыч
но ее используют в формуле =REDUCE (начальное_значение;массив;лямбда) со следующи
ми аргументами:
♦
начальное значение
Это начальное значение вычисления. Обычно его устанавливают в значение О,
если нужно сложить числа, в значение
ние
♦
чтобы перемножить их, и в значе
1-
чтобы соединить текстовые значения;
"" -
массив
Это массив, значения которого будут использоваться в лямбда-формуле;
♦
лямбда
Это лямбда-формула, принимающая вид LAМBDA (аккумулятор;значение;формула),
где аккумулятор- это кумулятивное значение (например, промежуточное число),
значение -
это следующее значение в массив, а формула -
это формула, приме
няемая для вычисления следующего промежуточного числа.
Чтобы подсчитать нечетные значения в диапазоне А 1:Е5, введите в ячейку Н 1
формулу =REDUCE(O;
(рис.
Al:E5;
LАМВDА(число;х;
ЕСJIИ(ЕНЕЧЁТ(х);
число
+ 1;
число)))
17.14).
Н1
А
1
2
/х
V
в
1
з
=REDUCE(O; А1:Е5;
с
LАМВDА(число;х; ЕСЛИ(ЕНЕЧЕТ(х); число t
Е
D
F
4
з
9
з
10
5
7
б
9
з
11
2
б
7
1
4
б
з
7
1
5
5
4
7
9
2
4
G
Нечетны~
н
1; число)))
lбl
к
б
Рис.
17.14.
Использование функции
REDUCE
для возврата конечного итога
«Под капотом» формула REDUCE работает следующим образом (здесь имеется в виду,
что первые два значения равны
1.
2.
3
и
4):
Устанавливает начальное значение промежуточного вычисления равным О.
Передает первое значение массива
число нечетное, формула добавляет
равно
3.
(3) в лямбда-формулу. Поскольку
I к промежуточному числу, которое
первое
теперь
1.
Переходит ко второму значению массива
(4)
и передает его в лямбда-формулу.
Поскольку это число четное, формула не обновляет промежуточное число, кото
рое все еще остается равным
4.
1.
Продолжает выполнять эти же действия для каждого значения в массиве, добав
ляя
1
чение.
к промежуточному числу каждый раз, когда встречается нечетное зна
LET, LAMBDA
5.
и вспомогательные лямбда-функции
529
Когда больше не осталось значений, выводит конечное значение промежуточно
го числа.
Пояснение
В этом разделе показано, как использовать вспомогательную лямбда-функцию
REDUCE, которая сводит массив к одному результату, возвращая итоговый результат
кумулятивного
вычисления.
Структура
функции
REDUCE
аналогична
структуре
функции scAN, за исключением того, что функция SCAN возвращает динамический
массив, показывающий каждое промежуточное вычисление.
ГЛАВА
18
Инструменты разработчика: макросы,
VBA, элементы управления и XML
Вкладка Разработчик
(Developer)
программы
Excel
содержит расширенные функ
ции, которые служат для настройки и автоматизации задач
Excel.
С их помощью
можно автоматизировать стандартные или повторяющиеся задачи, создавать поль
зовательские функции и использовать элементы управления для разработки осно
ванных на
Excel
приложениях.
В разделах этой главы демонстрируется работа этих функций, и мы рассмотрим
здесь следующие темы:
♦
запись и запуск макросов с использованием абсолютных и относительных ссы
лок;
♦
создание кода на
VBA -
встроенном в
Excel
языке программирования
-
для
определения макросов и пользовательских функций и для работы с событиями;
♦
использование личных книг макросов и надстроек
Excel
для совместного при
менения пользовательских функций и процессов;
♦
работа с элементами управления формами,
ActiveX
и пользовательскими фор
мами для создания динамических пользовательских интерфейсов;
♦
импорт и экспорт
XML
столбцами таблицы Excel.
18.1. Отображаем
путем сопоставления ХМL-элементов с ячейками и
вкладку Разработчик
Задача
Вы хотите использовать инструменты разработчика, такие как элементы управле
ния формы и макросы, но не знаете, где их найти.
Решение
Вкладка Разработчик
(Developer) содержит инструменты для работы с элементами
VBA. По умолчанию Excel скрывает эту вкладку.
управления, макросами и языком
Чтобы отобразить вкладку Разработчик
из разд.
1. 19
(Developer),
воспользуйтесь решением
по настройке ленты и установите флажок Разработчик
в разделе Основные вкладки
(Customize Ribbon).
(Main Tabs)
(Developer)
диалогового окна Настройка ленты
532
Глава
1
18
Пояснение
В этом разделе показано, как активировать вкладку ленты Разработчик
loper).
(Deve-
Эта вкладка потребуется для вызова каждой функции, описанной в этой гла
ве, включая использование макросов, языка
ActiveX
VBA,
элементов управления формы и
и пользовательских форм.
18.2. Записываем
макросы
Задача
У вас есть набор действий, которые необходимо часто повторять, и вы хотите их
автоматизировать.
Решение
Предположим, вам нужно часто повторять в
Excel
одни и те же действия
-
напри
мер, объединять ячейки и поворачивать и центрировать их текст. Автоматизировать
это можно, записав макрос
-
набор действий, сохраняемый в виде VВА-кода, ко
торый можно будет многократно перезапускать.
Чтобы записать макрос для объединения и форматирования ячеек:
1.
Выделите диапазон ячеек, которые нужно объединить и отформатировать,
-
например, А 1:А5.
2.
Выполните команду Разработчик
(Developer)
1
Код
(Code)
1
Запись макроса
(Record Macro ).
3.
В поле Имя макроса
открывшегося диалогового окна Запись
макроса
создаваемого макроса
(Macro name)
(Record Macro) введите имя
единитьИПовернуть (рис. 18.1 ).
-
например, Объ
Имя макроса должно начинаться с буквы или нижнего подчеркивания
(_),
не со
держать пробелов и не использоваться в рабочей книге.
4.
В поле Сочетание клавиш
(Shortcut key)
введите заглавную букву, которую со
бираетесь использовать в качестве «горячей» клавиши для запуска макроса (это,
впрочем, необязательно). Так, ввод буквы М означает, что запустить макрос
можно будет с помощью комбинации клавиш
<Ctrl>+<Shift>+<M>.
Как правило, комбинация клавиш, используемая для запуска макроса, имеет вид
<Ctrl>+<Shift>+<бyквa>, где буква должна быть заглавной.
5.
В раскрывающемся списке поля Сохранить в
(Store macro in)
выберите вариант,
указывающий, куда сохранять макрос:
•
Эта книга
•
Новая книга
•
Личная книга макросов
(This Workbook) -
сохраняет макрос в текущую рабочую книгу;
(New Workbook) -
сохраняет его в новую рабочую книгу;
(Personal Macro Workbook) -
тупным для всех открытых рабочих книг (см.разд.
18. 3).
делает макрос дос
Инструменты разработчика: макросы,
VBA,
элементы управления и
Для этого примера выберите вариант Эта книга
(This Workbook),
XML
533
чтобы сохра
нить макрос в текущей рабочей книге.
6.
В поле Описание
(Description)
введите описание макроса (это тоже необяза
тельно) . Так, в этом примере, можно ввести строку Объединяет ячейки и по
ворачивает и центрирует текст.
7.
Нажмите кнопку ОК, чтобы начать запись макроса.
8.
Выполните все действия, которые решили для этого примера записать, для чего
(Home) 1 Выравнивание (Alignment) 1 Объеди
нить и поместить в центре (Merge & Center), затем команду Главная (Home) 1
Выравнивание (Alignment I Ориентация (Orientation) 1 Повернуть текст вверх
(Rotate Text Up), а затем команду Главная (Home) 1 Выравнивание
(Alignment) 1 Выровнять по центру (Middle Align).
выполните команду Главная
9.
Выполните команду Разработчик
(Stop Recording),
(Developer)
1
Код
(Code)
1
Остановить запись
чтобы остановить запись макроса.
х
Запись макроса
J1мя ••акроса:
[объединитьИПовернуrь
~очетание !\}1авиw:
Ctrl-Shift•
Сохранить
81
J!:
! эта книга
Qписание:
Объединяет ячейки и поворачивает и центрирует текст
ОК
Рис.
'
18.1. Диалоговое
От•1ена
окно Запись макроса
• В качестве «горячей» клавиши, запускающей макрос, допускается использовать и
строчную букву- в комбинации <Сtrl>+<буква> . Однако это действие может заме-
•
нить встроенную в Excel эквивалентную комбинацию клавиш. Например, ввод
z в поле Сочетание клавиш (Shortcut key) перезаписывает комби-
строчной буквы
нацию клавиш
Excel <Ctrl>+<Z>,
служащую для отмены действия .
Пояснение
В этом разделе показано, как создать базовый макрос, записав последовательность
нажатия клавиш и действий. Созданый макрос можно запускать так часто, как тре
буется, используя решение из разд.
18.5.
«Под капотом» Ехсе\ записывает макрос как VВА-код. Просмотреть и отредакти
ровать этот код можно, воспользовавшись решением из разд.
18. 6.
534
1
Глава
18
'.~iJ·· · ······ Файл рабочей книги, в которую добавлены макросы или VВА-код, следует сохра
нять в виде поддерживающей макросы рабочей книги Excel - с расширением xlsm.
.
Если сохранить такой файл в виде обычной рабочей книги (с расширением xlsx),
'
• • •• ••••
Excel удалит все макросы и VВА-код.
18.3. Используем
личную книгу макросов
Задача
Вы хотите записать макрос, к которому у вас будет доступ из всех файлов Ехсе\,
открытых на компьютере.
Решение
Предположим, вам надо записать макрос, который может быть использован во всех
открытых рабочих книгах. Сделать это можно, сохранив его в личной книге мак
росов.
Личная кнu?а макросов
-
это файл Personal.xlsb, сохраненный в скрытой папке
XLSTARТ. Когда в этот файл добавляются макросы или пользовательские функции
(см. разд.
они автоматически становятся доступными в любых открытых
18.9),
файлах Ехсе\
-
без необходимости копировать код из книги в книгу, что делает
личную книгу макросов удобным местом для хранения общеприменимых макросов
и VВА-кода.
Для добавления макроса в личную книгу макросов следует, выполняя шаги из
разд.
18.2,
на шаге
Workbook) -
5
выбрать вариант Личная книга макросов
(Personal Macro
в результате будет создан файл Personal.xlsb (если он еще не сущест
вует), и в него записан создаваемый макрос.
Добавив макрос в личную книгу макросов, сохраните ее
-
закройте Ехсе\, а при
появлении запроса, выберите вариант сохранения внесенных изменений. Сохранить
изменения, произведенные в личной книге макросов, также можно, выделив ее
проект в редакторе
Сохранить
Visual Basic
(см. разд.
18.6)
и выполнив команду Файл
(File)
1
(Save).
Пояснение
Личная книга макросов
-
это скрытый файл, автоматически создаваемый Ехсе\,
когда в него добавляется макрос. Сохранение макросов в личной книге макросов
предоставляет к ним доступ каждой открываемой на компьютере рабочей книге,
избавляя вас от необходимости копировать их в разные рабочие книги. «Под капо
том» Ехсе\ ищет этот файл при запуске и открывает его, если он существует.
В Ехсе\ все макросы, добавленные в личную книгу макросов, отображаются как
файлы PERSONAL.XLSB! имя_макроса (см. разд.
вать
из
личной
имя_функции
(см.
книги
разд.
макросов
18.9).
и
Чтобы
все
18.4).
По той же схеме следует вызы
функции
избавиться
от
выбрав
PERSONAL.XLSB!
использования
PERSONAL.XLSB!, обратитесь к рекомендациям из разд. 18.20.
префикса
Инструменты разработчика: макросы,
18.4. Редактируем
VBA,
элементы управления и
XML
535
настройки макроса
Задача
У вас есть макрос, и вы хотите отредактировать комбинацию клавиш для его запус
ка или описания.
Решение
При записи макроса
сание (см. разд.
Excel
18.2).
предлагает ввести для него комбинацию клавиш и опи
Если вам надо отредактировать эти параметры или добавить
комбинацию клавиш или описание для макроса, созданого с помощью УВА-кода
(см. разд.
18.8):
1.
Выполните команду Разработчик
2.
В открывшемся диалоговом окне Макрос
(Developer)
1
Код
(Macro)
(Code)
(рис.
Макросы
1
18.2)
(Macros).
выберите макрос,
который надо отредактировать, и нажмите кнопку Параметры (Optioпs).
3.
В открывшемся диалоговом окне Параметры макроса
(Macro Options)
тируйте нужные параметры, нажмите кнопку ОК, а затем
(Cancel),
отредак
кнопку Отмена
чтобы закрыть оба диалоговых окна.
?
Макрос
х
И~•.!! макроса:
_еь~полнить
ОбъединитьИПоsернуть
PERSONAL.xLSB!ПepeйтиКA1
"
Showform
Войти
Абсо111отныеСсылки
БизнесЛанч
]1зменить
ВыводФормы
КлавишаРаgеUр
Создан,
Кнопка23_Щелчок
Напоминания
Объе ин11тьИПове
•
Удалить
ь
ОтносительныеСсылки
ОтобразитЬЛисты
V
Проверка3начения
Параметры ...
ь
НаJ!одится в: j Все открыты~ книги
Описание
Отмена
Рис.
18.2. Диалоговое
окно Макрос,
отображающее макросы в текущей и личной книгах макросов
Пояснение
В этом разделе показано, как обновить для макроса комбинацию клавиш и/или
описание. Как было сказано в разд.
18.2,
в качестве «горячих» клавиш общеприня-
536
1
Глава
18
то использовать заглавные буквы
в
Excel
-
во избежание замены каких-либо встроенных
комбинаций клавиш.
18.5. Запускаем
макрос
Задача
Вы создали макрос и хотите узнать, как его запустить.
Решение
Запустить записанный макрос можно с помощью одного из следующих способов:
♦ использовать комбинацию клавиш макроса, которая была ему присвоена соглас
но рекомендациям разд.
18.2
или
18.4.
Так, если макросу присвоена «горячая»
клавиша М, запустить его можно, нажав комбинацию клавиш
<Ctrl>+<Shift>+
+<М>;
♦
выполнить команду Разработчик
(Developer) 1 Код (Code) 1 Макросы (Macros),
(Macro) выбрать макрос и нажать
в открывшемся диалоговом окне Макрос
кнопку Выполнить
(Run);
♦ добавить макрос на панель быстрого доступа, чтобы он запускался оттуда. Дпя
добавления макроса воспользуйтесь рекомендациями разд.
этой панели,
1.20
по настройке
выберите из раскрывающегося списка Выбрать команды
из
(Choose commands from) вариант Макросы (Macros), выберите макрос и нажми
те кнопку Добавить (Add). Затем, если необходимо, можно нажать кнопку Из
менить (Modify) и изменить значок макроса, установленный по умол
чанию;
♦ добавить в ленту пользовательскую вкладку, содержащую макрос, чтобы он
запускался из нее. Дпя этого воспользуйтесь рекомендациями разд.
настройке ленты, нажмите кнопку Создать вкладку
(New
1.19
по
ТаЬ), чтобы создать
новую вкладку и группу, а затем добавьте макрос в группу аналогично тому, как
в предыдущем пункте было предложено добавить его на панель быстрого досту
па;
♦
назначьте макрос кнопке из коллекции Элементы управления формы
controls),
или форму на рабочий лист (см. разд.
18.17
и
13.3),
щелкните на ней правой
кнопкой мыши, выберите в контекстном меню пункт Назначить макрос
Macro ),
(Assign
укажите в открывшемся одноименном диалоговом окне макрос, который
должна запускать кнопка или форма, и нажмите кнопку ОК;
♦
(Form
чтобы он запускался по нажатию на нее. Дпя этого добавьте кнопку
запустите макрос в событии Сliсk(Щелчок) в
♦ запустите макрос из редактора
ActiveX
(см.разд.
Visual Basic (см.разд. 18.6).
18.18);
Инструменты разработчика: макросы,
VBA,
элементы управления и
537
XML
Пояснение
В этом разделе описываются различные способы запуска макроса, и из них можно
выбрать тот, который лучше всего подходит вашему случаю. Например, если вам
надо запустить макрос на конкретном рабочем листе, рассмотрите вариант назна
чения макроса кнопке из коллекции элементов управления формы на этом рабочем
листе. Однако если макрос выполняет более общее действие, и вам предпочтитель
нее запускать его из любой рабочей книги или рабочего листа, рассмотрите вариант
добавления его на панель быстрого доступа или в ленту.
18.6. Просматриваем
и редактируем VВА-код макроса
Задача
У вас есть макрос, и вы хотите просмотреть или отредактировать его VВА-код.
Решение
Предположим, в рабочей книге записан макрос Скрытьлист, который скрывает рабо
чий лист. Для просмотра или редактирования VВА-кода этого макроса выполните
команду Разработчик
(Developer) 1 Код (Code) 1 Макросы (Macros), в открывшем
(Macro) выберите макрос и нажмите кнопку Изменить
откроет в новом окне редактор Visual Basic, с помощью которого
ся диалоговом окне Макрос
Ехсе\
(Edit)можно
(рис.
просматривать
и
редактировать
VВА-код
и
взаимодействовать
с
ним
18.3).
t1 Microsoft Visual Вasic for Applications - Инструменты рмработчика.хlsm - [Module1 (Codt:)}
,4 fil•
l!iJEffi•
fdit
Y:iew
Jnsert
~
Format
~
Qebug
►
Н Selected Module •
ftun
Iool,
[ldd-ln,
Y{lndow
1= ::::
[э ~
~ VВAProject (FIINCRES.XIAМ)
• ~ VВAProject (PfRSOIIALJ(ISВ)
13 ~ VВAProject (Ииструм.,.,.ы ра3ра6отчмка.хlsm)
[!]
Mcrosoft Excel OЬjects
1!!} Sheetl (Лист 1)
~ Sheet2 (ЛистZ)
х
..:il
~
!)
Control
1
СхрытьЛист
Схры:еает
Сочетание
()
макрос
лист
клавиш :
Ctrl+Sh.1.ft:+H
ActiveWindow.SelectedSheet~.Visib1e - False
End Sub
1!!} SheetЗ (ЛистЗ)
1!!} SheeM (ЛИст-4)
~
~
25J г.=lt=
Ge n,=,=
.11========,-,====='~======:"'l
SuЬ Скрьrr ьЛИст
E-J
-
"'..;i1!J'Ь:
lj
Solver (SOt.VВLXlAM)
GJ
х
о
J:jelp
~ ThsWorldюok
Modules
~Мoduel
...
>
Рис.
18.3.
Открыть
Редактор
Visual Basic,
редактор Visual
1 Код (Code) 1
(Developer)
отображающий код для макроса Скрытьлист
Basic также
Visual Basic.
можно, выполнив команду Разработчик
Используйте этот вариант для просмотра
или редактирования кода всех макросов, сохраненных в личной книге макросов,
потому что по нажатию кнопки Изменить (Edit) в диалоговом окне Макрос (Масго)
может появиться сообщение об ошибке.
Глава
538
18
В левой области окна редактора
сок VВА-проектов
-
Visual Basic
показан проводник, содержащий спи
по одному на каждую открытую рабочую книгу, личную кни
гу макросов (помеченную как
PERSONAL.XLSB)
и надстройки (см. разд.
18.20).
Двойной щелчок мыши на элементе разворачивает его, и проводник отображает его
содержимое. В некоторых версиях
Microsoft Excel Objects
и
Excel
оно может быть показано в двух папках:
Modules.
Содержимое элемента включает один или несколько модулей (разверните папку
если в вашей версии программы она есть)
Modules-
-
организационных струк
тур, хранящих VВА-код. При записи макроса Ехсе\ обычно добавляет его к модулю
где п
Modt1len,
-
это число. Чтобы просмотреть VВА-код макроса, выполните на
модуле двойной щелчок мышью, и он откроется в окне кода.
Окно кода модуля (правая область окна редактора) отображает весь сохраненный
в нем VВА-код. Например, код макроса скрытьлист, который скрывает рабочий лист
(в нашем случае с именем лист4), в окне кода модуля может выглядеть примерно
так:
Sub
'
'
'
СкрытьЛист
(1
СкрытьЛист Макрос
Скрывает лист
Сочетание клавиш:
Sl1eets
("Лист4")
Ctrl+Shift+H
.Select
ActiveWindow.SelectedSheets.VisiЫe
False
End Sub
В этом примере строки:
Sub
СкрытьЛист
()
End Sub
задают имя макроса и определяют его начало и конец. Если быть еще точнее, то
строки suь и End suь определяют начало и конец подпроцедуры
или инструкций, написанных на языке
VBA
-
набора действий
(в нашем случае подпроцедуры скрыть
лист (1 ).
Строки:
'
'
'
СкрытьЛист Макрос
Скрывает лист
Сочетание
клавиш:
Ctrl+Shift+H
обозначенные в начале каждой строки символом
рии
-
Excel
При
',
представляют собой коммента
при записи макроса их автоматически добавляет.
редактировании параметров макроса (см. разд.
18.4) Excel
автоматически
комментарии в VВА-коде не обновляет. Однако их можно обновить вручную, отре
дактировав в окне VВА-кода.
Инструменты разработчика: макросы,
VBA,
элементы управления и
539
XML
И наконец, строки:
Sheets
("Лист4")
.Select
ActiveWindow.SelectedSheets.VisiЫe
= False
описывают действия макроса. В этом примере макрос выбирает рабочий лист
с именем лист4 и скрывает его, присвоив ему атрибут False.
Изменить VВА-код можно, отредактировав его в окне кода. Например, для изме
нения этого макроса с тем, чтобы он скрывал текущий активный рабочий лист
(вместо лист4), обновите код следующим образом:
Sub
'
'
'
СкрытьЛист
()
СкрытьЛист Макрос
Скрывает лист
Сочетание
клавиш:
Ctrl+Shift+H
ActiveSheet.VisiЫe
xlSheetHidden
End Sub
Закончив редактирование кода, можно запустить его прямо в редакторе
Basic,
нажав
кнопку
Run
SuЬ/UserForm
(Выполнить
тельскую форму) на панели инструментов редактора либо выбрав в меню
полнить) пункт
Run
Visual
подпроцедуру/Пользова
Run
(Вы
SuЬ/UserForm (Выполнить подпроцедуру/Пользовательскую
форму).
Пояснение
Когда вы записываете макрос,
Excel
сохраняет его действия в виде VВА-кода.
В этом разделе показано, как просматривать и редактировать этот код, используя
редактор
Visual Basic,
который может оказаться полезным, если вам надо подкор
ректировать код, сгенерированный
Excel.
Обычно VВА-код позволяет автоматизировать действия, взаимодействовать с ра
бочими листами, рабочими книгами
настраивать способы
водство по некоторым полезным
♦
Excel и другими
Excel. Далее
синтаксисам VBA:
использования
Office,
а также
представлено краткое
руко
для ссылки на текущий активный рабочий лист используйте запись ActiveSheet,
для ссылки на конкретный рабочий лист -
♦
приложениями
используйте символ
(. ),
запись Sheets ("имя_ листа" 1;
чтобы получить доступ к свойствам, значения которых
можно получить и установить,
-
например, Acti veSheet. VisiЫe. Этот символ
также можно задействовать, чтобы получить доступ к любым методам
-
дей
ствиям, которые можно выполнять с объектом. Например, чтобы выбрать лист4,
достаточно записать
♦
запись Rаngе("ячейка_и.ли_диапазон") можно применить для ссылки на ячейку или
диапазон
♦
Sheets 1"Лист4" 1 . Select;
-
например, Range ("С2") (см. разд.
18. 7);
запись Dim- чтобы объявить переменную (см. пример в разд.
18.8);
540
♦
1
Глава
18
циклически перебирать каждый элемент в коллекции можно, используя струк
туру For-Each (пример этого синтаксиса также приведен разд.
♦
18.8);
для выполнения действий, когда одно или несколько условий принимают значе
ние истиНА или ложь, можно воспользоваться структурой If-Then (соответствую
щий пример приведен в разд.
♦
18.15);
чтобы протестировать значение одного условия, можно вместо If-Then задейст
вовать структуру Select-case (см. пример в разд.
♦
18.16);
используйте «пробел», за которым следует нижнее подчеркивание
(J,
чтобы
разбить одно предложение на несколько строк (пример этого синтаксиса приве
ден в разд.
18.1 О).
18.7. Используем
абсолютные и относительные ссылки
Задача
Вы хотите записать макрос и выбираете, должен ли он ссылаться на другую ячейку
по абсолютной ссылке или по ее позиции относительно другой ячейки.
Решение
Предположим, вам надо записать макрос, который переходит в другую ячейку и
добавляет в нее некий текст. При этом перед вами стоит выбор: следует ли генери
ровать VВА-код, использующий абсолютную ссылку на ячейку (например, ячейку
С2) или ссылающийся на ее позицию относительно другой ячейки (например, одна
строка вниз и два столбца вправо).
По умолчанию запись макроса генерирует код, содержащий абсолютные ссылки
-
те, которые явно ссылаются на позицию ячейки. Например, если выбрать ячейку А 1
и записать макрос, который вводит текст Привет I в ячейку С2, то сгенерированный
VВА-код будет выглядеть следующим образом:
Sub
АбсолютныеСсылки
()
'АбсолютныеСсылки Макрос
'Демонстрация абсолютных ссылок
'
Сочетание клавиш:
Ctrl+Shift+A
Range("C2") .Select
ActiveCell.FormulaRlCl =
End
"Привет!"
SuЬ
В этом примере код Range 1"С2" 1. Select явно направляет действие в ячейку С2, вне
зависимости от того, какая ячейка активна, когда вы запускаете макрос.
Альтернативный подход заключается в использовании относительных ссылок
ссылок относительно другой ячейки, как было показано в разд.
7.14.
-
Чтобы сгене
рировать эквивалентный код, используя относительную ссылку, активируйте эту
Инструменты разработчика: макросы,
опцию, выполнив команду Разработчик
ссылки
(Use Relative References),
VBA,
элементы управления и
(Developer)
выделите ячейку
1
Код
Al
(Code)
1
XML
541
Относительные
и запишите макрос, введя
текст Привет! в ячейку С2. Сгенерированный VВА-код выглядит следующим обра
зом:
Sub
'
ОтносительныеСсыпки
()
ОтносительныеСсыпки Макрос
'Демонстрация относительных
'
Сочетание
клавиш:
ссыпок
Ctrl+Shift+R
Acti veCell. Offset (1, 2) . Range ( "Al") . Select
ActiveCell.FormulaRlCl = "Привет!"
End Sub
В этом примере код ActiveCell.Offset(l;2) .Range("Al") .Select явно направляет дей
ствие в ячейку на одну строку ниже и на два столбца правее от активной ячейки.
При вызове макроса из ячейки А 1 заполняется ячейка С2
(одна
строка ниже и два
столбца правее от ячейки А 1), а при вызове его из ячейки В2 заполняется ячейка
D3
(одна строка ниже и два столбца правее от ячейки В2),
Чтобы вернуться к использованию абсолютных ссылок, отключите опцию относи
тельных ссылок, вновь выполнив команду Разработчик
Относительные ссылки
(Developer)
1
Код
(Code) 1
(Use Relative References).
Пояснение
В этом разделе показано, как записывать макросы, используя абсолютные и от
носительные ссылки, и описано их воздействие на сгенерированный VВА-код.
В целом абсолютные ссьтки используют, когда нужно выполнить действие с кон
кретной ячейкой или диапазоном, а относительные ссылки
-
когда нужно выпол
нить действие относительно текущего выбора.
18.8. Создаем
макрос путем написания VВА-кода
Задача
Вы хотите создать макрос путем написания VВА-процедуры вместо записи нажа
тий клавиш и действий.
Решение
Предположим, вам надо добавить в текущую рабочую книгу макрос Отобразитьлисты,
который показывает все скрытые рабочие листы. Сделать это можно, введя VВА
код макроса напрямую в редактор
1.
Откройте редактор
Код
Visual Basic:
Visual Basic,
(Code) 1 Visual Basic.
выполнив команду Разработчик
(Developer)
1
542
2.
1
Глава
18
В проводнике редактора перейдите в VВА-проект текущей рабочей книги и
выполните двойной щелчок на модуле, в который собираетесь добавить код
макроса. Если рабочая книга не содержит модулей, создайте модуль, щелкнув на
проекте правой кнопкой мыши, и выберите из контекстного меню команду
Insert (Вставка) 1 Module
3.
(Модуль).
В окне кода модуля введите код для нового макроса:
Sub
ОтобразитьЛисты ()
Dim ws As Worksheet
'Перебирает все рабочие листы и отображает их
For Each ws In Worksheets
ws.VisiЫe
=
xlSheetVisiЫe
Next
End Sub
убедившись предварительно, что вы не редактируете код существующего мак
роса. Один из способов это сделать
-
прокрутить файл до конца и ввести новый
код в новую строку.
Код для макроса ОтобразитьЛисты сначала объявляет переменную типа Worksheet
с именем ws, а затем использует ее для циклического перебора каждого рабочего
листа, делая их видимыми.
4.
В случае необходимости воспользуйтесь рекомендациями разд.
18.4,
чтобы до
бавить для нового макроса комбинацию клавиш и описание.
Обсуждение
В этом разделе показано, как создавать макрос, используя VВА-код вместо записи
нажатий клавиш и действий. Этот подход удобен, если вам нужно разработать бо
лее сложный макрос, и вы уже либо знакомы с процессом написания VВА-кода,
либо у вас есть предварительно написанный код.
18.9. Создаем
пользовательскую функцию
VBA
Задача
У вас есть формула
Excel,
и вы хотите перезаписать ее в виде функции
VBA.
Решение
Предположим, вы часто используете в рабочей книге какую-либо формулу
- на
1 до 1О или вычисления кален
дарного или финансового года даты (см. разд. 6.4). Упростить применение такой
формулы можно, перезаписав ее как пользовательскую функцию VBA.
пример, генерирования случайных целых чисел от
Функции
VBA
создают, выполняя шаги, аналогичные шагам из разд.
18.8.
Основ
ное различие состоит в том, что здесь для обозначения начала и конца функции ис-
Инструменты разработчика: макросы,
VBA,
элементы управления и
XML
543
пользуют строки Function и End Function вместо suь и End Sub и обычно задействуют
созданную функцию для возврата значения. Так, чтобы добавить в текущую рабо
чую книгу функцию Ranctтen, которая возвращает случайное целое число от
1.
Откройте редактор
Код
2.
Visual Basic,
(Code) 1 Visual Basic.
выполнив команду Разработчик
1 до I О:
(Developer)
1
В проводнике редактора перейдите в VВА-проект текущей рабочей книги и вы
полните двойной щелчок на модуле, в который собираетесь добавить функцию.
Если рабочая книга не содержит модулей, создайте модуль, щелкнув на проекте
правой
кнопкой
(Вставка)
3.
1
мыши,
и выберите из контекстного меню
команду
Insert
Module (Модуль).
В окне кода модуля введите следующий код для функции RandTen, убедившись
предварительно, что не редактируете существующий код:
Function RandTen() As Integer
'Возвращает случайное
RandTen
=
целое число от
1
до
10
WorksheetFunction.RandBetween(l, 10)
End Function
В этом примере первая строка кода объявляет функцию Ranctтen, возвращающую
случайное целое число. Затем эта функция генерирует случайное целое число от
до
10,
используя функцию рабочего листа
Excel
СПУЧМЕждУ (RANDBETWEEN), -
1
она вы
зывает эту функцию с помощью кода WorksheetFunction.RandBetween(l;l0). Код при
сваивает полученное случайное целое число функции Ranctтen, которая указывает
VBA
вернуть это значение. И наконец, строка End Function означает конец функции.
Команда WorksheetFunction позволяет вызывать функцию рабочего листа
и ее удобно применять для функций, которым нет эквивалента в
использование WorksheetFunction. RandBetween в
VBA
VBA.
Excel,
Например,
вызывает функцию
Excel
СЛУЧМЕЖДУ (RANDBETWEEN).
•
Для указания, что функция
VBA
принимает один или несколько аргументов, нужно
записать их в виде разделенного запятыми списка и заключить его в круглые скоб
ки. Например, чтобы вставить функцию Quarter, которая возвращает календарный
квартала месяца, можно написать следующий код:
Function Quarter(d As Date) As Integer
'
Возвращает
Quarter
календарный квартал
= (Month(d) + 2) \ 3
End Function
В этом примере функция использует код Quarter (d As Date), чтобы определить функ
цию
Quarter
с одним аргументом даты
d.
Аналогичным образом следующий код добавит функцию FiscalQuarter, возвра
щающую финансовый квартал даты:
Function FiscalQuarter(d As Date) As Integer
Dim m, qtr As Integer
544
Глава
1
18
'Принимает месяц
m = Month(d)
'Вычисляет и возвращает финансовый квартал
qtr = Switch(m < 4, 4, m < 7, 1, m < 10, 2, m < 13,
FiscalQuarter = qtr
End Function
З)
Созданную пользовательскую функцию можно вызывать из ячейки рабочего листа,
как и любую другую функцию. Так, если вы добавили в текущую рабочую книгу
функцию RandTen, то можете вызвать ее, введя в ячейку рабочего листа формулу
=RandTenO. Аналогично, если вы добавили в текущую рабочую книгу функцию
Quarter и собираетесь использовать ее для возврата сегодняшнего календарного
квартала, введите в ячейку =Quarter (СЕГОДНЯ О ) .
Как и в случае с макросами, функции, которые добавляются в личную книгу макро
сов, автоматически становятся доступны в любой открытой рабочей книге. Обычно
функцию вызывают из личной книги макросов, используя синтаксис =PERSONAL.
х1sв 1 имя_функции, где имя_функции -
это имя функции
VBA.
Поэтому, если вы доба
вили функцию RandTen в личную книгу макросов, то можете вызвать ее, введя
=PERSONAL. XLSB ! RandTen () .
Чтобы уйти от использования префикса PERSONAL. х1sв I при вызове своих пользо
вательских функций во всех открытых рабочих книгах, можно создать пользова
тельскую надстройку Excel. Более подробно об этом рассказано в разд. 18.20.
Чтобы удалить созданную вами функцию, удалите ее VВА-код, следуя рекоменда
циям разд.
18. 13.
Пояснение
В этом разделе показано, как с помощью VВА-кода определить пользовательскую
функцию. Создание пользовательских функций помогает улучшить читаемость
ваших формул и избавляет вас от копирования сложных формул в различные
ячейки
-
если формуле потребуется обновление, надо будет изменить ее только
в одном месте.
Дополнение
Если вы используете
Excel 365,
ции, применив решение из разд.
то также можете создавать пользовательские функ
17.4.
18.1 О.
Используем события
рабочих листов и рабочих книг
Задача
Вы хотите запустить некий VВА-код во время выполнения действия на текущем
рабочем листе или в текущей рабочей книге.
Инструменты разработчика: макросы,
VBA,
элементы управления и
545
XML
Решение
Предположим, во время работы в
код
Excel
вам бывает нужно запустить некий VВА
выполняемый, например, по двойному щелчку на ячейке рабочего листа.
-
Сделать это можно с помощью события
действия, которое может привести
-
к запуску VВА-кода. То есть, если вам надо, чтобы по двойному щелчку мышью на
ячейке запускался какой-либо код, добавьте его в событие двойного щелчка на ра
бочем листе.
События рабочего листа возникают при выполнении на определенном рабочем
листе каких-либо действий
например, двойного щелчка мышью или изменения
-
значения ячейки. Для добавления кода в событие рабочего листа:
Откройте редактор
1.
Код
Visual Basic,
(Code) 1 Visual Basic.
В проводнике редактора (рис.
2.
выполнив команду Разработчик
18.4)
(Developer)
1
откройте окно кода, выполнив двойной щел
чок на рабочем листе, в событие которого собираетесь добавить код. Например,
если нужно добавить код в событие на листе листl текущей рабочей книги,
перейдите в ее VВА-проект и выполните двойной щелчок мышью на объекте
Лнстl (разверните папку
Microsoft Excel Objects,
если в вашей версии про
граммы она есть).
tJ Microsoft Visual Bastc for Applications - Инструменты ра,ра6отчика .х lsm - [Sheet1 (Code}]
,lf
filo
у..,,,
fdit
[nsort
F.ormat
Qobug
►
..2. 1!
S.loctedModulo •
]!un
Jools
[ldd-lns
~indow
8
J
!::
~ ~
:=
~
о
!:!•lp
х
-
д
х
Ln1,Col 1
..:) ~ ~ □
Control
,...,,,lw"'
o"'
,1c.s
"'he
= et= = = = = = = v = - 1"'16"e'1"'
0,"'
e0o
=
uь"'iec
=
li<::!!
k !======,,,,,-i
~ri vate SUЬ Workзheet_BeforeDouЫ~Click{ByVal Tarqet ~л
E!J
8
,rt!
,rt!
,rt!
1:-1
'Иэмемяет uвет
Solv<er (SOI.VER.Xl.A/1)
VВAPl'Oj,ect (f\JIICR&XLAM)
VВAProject(PfRSONALJCl.58)
VВAProject (Инсrру,rекты ра3ра6отчмка-Х!sm)
uел~вой яч~йки
Tar9et . Interior.Color
End
=
255
SuЬ
Мiaosoft Excel OЬjocts
Q:) g,,.,11 (/"ист 1)
Q) g,,.,12 (1\1СТ2)
Q:I Sheetз {1\1СТ3)
Q) Sheet4 (Гисr4)
~ fusWorkЬook
13
Мodules
~-1
Рис.
3.
18.4.
Редактор
В верхней части окна с кодом рабочего листа выберите из левого раскрывающе
гося списка
4.
показан код события BeforeDouЬleClick рабочего листа
Visual Basic:
Object (Объект)
вариант
Worksheet (Рабочий
Из правого раскрывающегося списка
Procedure
лист).
(Процедура) выберите событие,
в которое собираетесь добавить код. Например, чтобы написать код для события
двойного щелчка на рабочем листе, следует выбрать вариант BeforeDouЫeClick.
Когда событие будет выбрано, редактор
пустую
процедуру
в
код
рабочего
Visual Basic
листа.
добавит соответствующую
Так,
при
выборе
события
BeforeDouЫeClick редактор вставит в код процедуру Worksheet_BeforeDouЫeClick.
Глава
546
5.
18
на
Отредактируйте добавленную
шаге
предыдущем
процедуру,
указав,
что
должно происходить при возникновении события. Например, чтобы по двойно
му щелчку мышью на ячейке рабочего листа менялся цвет ее фона, дополните
код процедуры следующим образом:
Private Sub
Worksheet_Bef o reDouЬleClick ( ByVal
Target As Range,
Cancel As Boolean)
'Изменяет цвет целевой ячейки
Target.Interior.Color = 255
End Sub
События рабочей книги возникают при выполнении в ней определенных действий,
таких как ее открытие или вставка в нее нового рабочего листа. Добавление кода
в событие рабочей книги аналогично его добавлению в событие рабочего листа,
при этом
только
шаге
на
ThisWorkbook, а на шаге 3
вариант Workbook (Рабочая
2
следует выполнить двойной
из раскрывающегося списка
щелчок на объекте
Object
(Объект) выбрать
книга). Например, чтобы при открытии рабочей книги
отображалось сообщение Привет!:
Visual Basic, выполнив команду Разработчик (Developer) 1
(Code) 1 Visual Basic.
2. В проводнике редактора (рис. 18.5) перейдите в VВА-проект текущей рабочей
книги и выполните двойной щелчок мышью на объекте ThisWorkbook.
1.
Откройте редактор
Код
t'}
,4
Microsoft Visual Basic for Applications - Инструменты ра,работчика.хlsm - {ThisWorkbook (Со ...
Eile
fd it
',/iew
!nsert
~
Q.
1!
F.ormat
.,,,
Qebug
►
Selected Module •
Bun
Iools
Add-lns
Window
о
х
- ,s,
!::!elp
!:: :::
Project - VBAProject
Control
! workЬook
,.,
private SuЬ Worl<Ьook_Open( )
Solver (SOLVER.XlAM)
i±J
(±j ~ VВAProject (RJNCRfS.XLAM)
ffi ·~ VВAProject (PERSONALJQSВ)
EJ ·~ VВAProject (Инструменты разработчмка.хlsm)
EJ
х
il]
•выводит
МзgВох
End
соабшение
("Привет ! " )
SuЬ
Microsoft Excel OЬjects
~ Sheetl (Лист!)
'
'
:
•·
EJ
•·
~ Sheet2 (Лист2)
· ~ Sheetз (Лист З)
· ~ Sheet4 (Лист4)
·:i:J ThisWorkЬook
Modules
·4 Modulel
>
Рис.
3.
18.5.
Редактор
Visual Basic:
показан код события
Open рабочей
книги
В верхней части окна с кодом выберите из левого раскрывающегося списка
Object (Объект) вариант Workbook (Рабочая книга), а из правого раскрывающе
гося списка Procedure (Процедура) - событие, в которое собираетесь добавить
код (в этом примере Open). Когда событие будет выбрано, редактор Visual
Basic создаст соответствующую процедуру.
Инструменты разработчика: макросы,
4.
VBA,
элементы управления и
XML
547
Отредактируйте добавленную на предыдущем шаге процедуру. Так, чтобы ото
бражать сообщение Привет! при открытии рабочей книги
(см.
разд.
18.16),
дополните код процедуры следующим образом:
Private Sub Worksheet_Open()
'выводит сообщение
MsgBox
Епd
("Привет!")
Sub
Пояснение
В этом разделе показано, как использовать события рабочего листа и рабочей кни
ги, чтобы запускать VВА-код при выполнении конкретного действия. Просмотреть
список возможных событий можно в раскрывающемся списке
Procedure
(Про
цедура), расположенном в верхней части окна кода рабочего листа и рабочей книги.
Excel
также включает события приложений, которые запускаются при возникнове
нии определенных действий в приложении. Однако они, как правило, менее полез
ны, чем события рабочего листа и рабочей книги, поскольку применяются ко всему
приложению
Excel.
18.11. Переопределяем
комбинацию клавиш
с помощью ОпКеу
Задача
У вас есть макрос или процедура, и вы хотите запускать их по нажатию определен
ной комбинации клавиш.
Решение
При создании макроса ему можно назначить букву «горячей» клавиши, чтобы он
запускался при нажатии комбинации <Сtrl>+<буква>
<Ctrl>+<Shift>+<бyквa>
для заглавных (см.разд.
-
18.2).
для строчных букв или
Если вам надо запустить макрос, используя другую комбинацию клавиш, добавьте
в функцию ИЛИ процедуру
VBA
КОД Application.OnKey клавиша;макрос, где клавиша -
это клавиша или комбинация клавиш, которую надо задействовать в качестве «го
рячей» клавиши, а макрос
-
это макрос или процедура, которую нужно запускать
по нажатию клавиша. Например, следующий код создает макрос СочетанияКлавиш, при
запуске переопределяющий действие клавиши
<Page Up> так,
вызывался макрос КлавишаРаgеUр и выбиралась ячейка А 1 (рис.
Sub
СочетанияКлавиш()
'Вызывает КлавишаРаgеUр
()
при нажатии клавиши
Application. OnKey " { PgUp 1",
End Sub
"КлавишаРаgеUр"
Page Up
чтобы по ее нажатию
18.6):
Глава
548
18
()
Error Resume Next
SuЬ КлавишаРаgеUр
Оп
'Переходит
к ячейке
Al
Range("Al") .Select
End Sub
В этом примере аргумент клавюпа в макросе СочетанияКлавиш который соответствует клавише
это фрагмент
<Page Up> (полный список символов
VBA поиск по запросу OnKey).
" {PgUp 1",
клавиш мож
но получить, выполнив в справке
Строка:
Оп
Error Resume Next
указывает, что если произойдет ошибка (например, при попытке нажать клавишу
на листе диаграммы без ячеек), код должен будет продолжить выпол
<Page Up>
няться со следующей строки.
~ Microsoft Visual Basic for Applications - Инструм~нты раэработчмка.х lsm - [Modult:1· (Cod~)]
~ file
fdit
',(i,w
!nsert
~
ProJ<d •
с':1
J/,
Qebug
,
!!lвi - 1n1
, il',
F2rmat
►
-2. ~1 S.lected Module
.!!un
1]
Add· lns
~
l!!3
c:::J il',
tx <tJ
Paste ~ Сору
1(General)
v
•
Control
11 Кnaв•waPageUp
Su.Ь Со четанияклавиm( )
'Вызыи~ет
Кпа~,ишаРа9еUр
Applicat:ion.OnКey
[i) ~ VВAProjed (FUIICRE.SJO.AМ)
End
1±1· ~ VВAProjed (PERSONALXI.SII)
в ~ VВAProject (ИНСТрумеttJ"Ы 1)41Зра6отч•ка.хlsm)
Мcrosoft Excel OЬjects
SuЬ
Кла~ишаРаqеUр
()
Resuп-.e
'Переходит к
i @) Sheet2 (Г,,ст2)
() при нажатии клавиши Page Up
., { PQUp} ", •Кn: авиша Р аqеUр "
SuЬ
On Error
···@J Sheetl (Jucт 1)
Nex t:
я.чей.ке
Al
Ra.nqe ( "Al") . Select.
·@J Sheet3 (Л,,стЗ}
End
@) Sheet4 (f'ист~
~
х
- fJ х
г.============;-;========!!!!======:'"1
• ProJect
~ iГSolv--;=
, (=
sot.
=
YI
=R.Xl.AМ
===)================'
8
□
]:!elp
е
с:;)~~
[Q]
rn
~indow
~~,-в
!::: :::
•
Jools
SuЬ
,i) llisWoncЬook
Мodues
~IШШ!
Рис.
18.6.
Редактор
Visual Basic:
показан код для макросов СочетанияКлавиш и КлавишаРаgеUр
Чтобы прекратить переопределение «горячей» клавиши и вернуться к поведению
по умолчанию, используйте следующий код:
Application.OnKey "key"
Например, далее приведен код макроса
щего настройку клавиши
<Page Up>
CancelShortcutKeys, при запуске возвращаю
по умолчанию:
Sub CancelShortcutKeys()
Application.OnKey "{PgUp)"
End Sub
Отключить действие комбинации клавиш также можно, используя следующий код:
Application.OnKey "key", '"'
Инструменты разработчика : макросы,
VBA,
элементы управления и
549
XML
Пояснение
В этом разделе показано, как использовать метод Application.OnКey для определения
«горячих» клавиш. «Под капотом» этот метод задействует событие приложения
опкеу, которое отслеживает нажатие клавиш и реагирует на него.
выполнение кода с помощью
18.12. Планируем
OnTime
Задача
У вас есть макрос или процедура, и вы хотите запустить их в определенное время
или после определенного интервала.
Реwение
Предположим, вам надо запустить макрос или процедуру в определенное время
например, отобразить диалоговое окно с каким-либо сообщением в
лать это можно, добавив в функцию или процедуру
время;макрос, где макрос
VBA
2
код Application.OnTime
это макрос, который нужно запустить, а время
-
-
часа дня. Сде
-
указыва
ет, когда его запустить. Например, следующий код определяет макрос Напоминания,
при запуске выполняющий в
Sub
14:00 макрос
()
в
14: 00.
Application.OnTime TimeSerial(l4,
О,
О),
"Бизнес.Jlанч"
SuЬ
()
SuЬ Бизнес.Jlанч
("Время перекусить!")
MsgBox
End
18. 7):
Напоминания()
'Вызывает Бизнес.Jlанч
End
БизнесЛанч (рис .
SuЬ
t:J Microsoft V"isual Виiс fo, Applications • ИнС1J1УМеtm,1 po.,paбo"Nмu.xlsm - [Module1 (Code)]
4 fole fd~ 'fl#!W jnsert F11rmal Q.Ьug J!un Jools Add-lns Window l:!elp
►
Q
~
ф- ~
13 ~
1;1
-
n
11 Selected Мodule • 1:: :::
Control
SuЬ
lii,
Solver (SOI.YEIUO.AН)
YIIAProjed: (f\Jll(]l[S.J(1H)
YIIAProjed: {PERSOМUQ.SII)
YIIAProjed: (м..ст_ .. ~т-.xkm)
-osoftf"'21aiie,cts
!1!} SheetL(lkтl)
~--
НапОЮ(Иани.я
1
()
Вы.3ыеает БмэнесJLанч
()
е
11.: 00 .
Appli.cation.OnTime TimeSeriAl (14,
О,
О ),
•БJСиесЛаич•
En<1 SU/:>
SuЬ
БИ3J:1.есЛаич:
КsqВОх
End
il!J Sheet2 (1\,ст2)
()
( •время
перекусить !
•)
SuЬ
~ SheetЗ (/kТЗ)
!1!} Sheet1 (1\,ст1)
13
-.
.ч
Рис.
.
18.7.
Редактор
х
□
Visual Basic,
отображающий код макросов Напоминания и Би з н е с.Jl а нч
д
х
550
Глава
1
18
В этом примере задействована функция TimeSerial, указывающая время в часах, ми
нутах и секундах,
-
так, запись
TimeSerial (14,
о, О) соответствует двум часам дня.
Использовать метод Application.onтime можно также и для запуска макроса или про
цедуры
после
определенного
БизнесЛанч через
15
интервала.
Application.OnTime Now + TimeSerial(0, 15, 0),
где Now -
функция
Например,
чтобы
запустить
макрос
минут, следует записать в него строку:
VBA,
"БизнесЛанч"
возвращающая текущее время.
Чтобы код запускался в определенное время, нужно выполнить макрос, содержащий вызов
.
Excel.
Application.OnTime,
и оставить компьютер включенным с запущенным
Если не выполнить макрос или закрыть
Excel,
код запущен не будет.
Пояснение
В этом разделе показано, как использовать метод Application.OnTime для запуска
макроса или процедуры в определенное время. «Под капотом» этот метод задейст
вует событие приложения onтime.
18.13. Удаляем
макрос или функцию
Задача
Ваш VВА-проект содержит макрос или функцию, и вы хотите удалить их.
Решение
Самый простой способ удалить макрос из рабочей книги заключается в следую
щем:
1.
Откройте рабочую книгу, содержащую макрос.
2.
Выполните команду Разработчик
3.
В открывшемся диалоговом окне Макрос
(Developer)
нужно удалить, и нажмите кнопку Удалить
1
Код
(Code)
(Macro)
(Delete).
1
Макросы
(Macros).
выберите макрос, который
Если требуется удалить функцию или макрос из личной книги макросов системы,
можно просто удалить их VВА-код:
1.
Откройте редактор
Код
2.
Visual Basic,
(Code) 1 Visual Basic.
Разверните проект
VBA,
выполнив команду Разработчик
(Developer)
1
содержащий код, выполнив на нем двойной щелчок
мышью.
3.
Выполните двойной щелчок мышью на модуле (разверните папку
Modules,
если
в вашей версии программы она есть), чтобы открыть его в окне кода.
4.
В окне кода перейдите к VВА-коду, выбрав его имя в раскрывающемся списке
Procedure (Процедура),
находящемся в верхнем правом углу окна.
Инструменты разработчика: макросы,
5.
Выделите код, который надо удалить
-
VBA,
элементы управления и
551
XML
начиная с открывающей его строки suь
или Function и заканчивая закрывающей его строкой End Sub или End Function, -
и нажмите клавишу
<Del>.
Вместо удаления макроса или функции можно закомментировать строки их кода,
добавив перед каждой из них префикс
'.
Такой код вы больше выполнить не смо
жете, но при необходимости его позднее можно будет раскомментировать.
Чтобы удалить весь модуль, включая код, щелкните на нем правой кнопкой мыши
и в контекстном меню выберите пункт
Delete (Удалить).
Обсуждение
В этом разделе описан процесс удаления макроса или функции из проекта
VBA.
Удалить макрос из рабочей книги обычно проще, потому что при этом вы можете
использовать диалоговое окно Макрос
(Macro)
вместо того, чтобы удалять исход
ный VВА-код.
18.14. Копируем
код в другой VВА-проект
Задача
У вас есть код в одном VВА-проекте, и вы хотите скопировать его в другой проект.
Решение
Предположим, вам нужно скопировать код из одного VВА-проекта в другой. В за
висимости от вашего случая здесь можно воспользоваться несколькими методами.
Если требуется скопировать из одного VВА-проекта в другой отдельный макрос
или функцию:
1.
Откройте оба проекта, а затем откройте редактор
ду Разработчик
2.
(Developer)
1
Код
Visual Basic,
(Code) 1 Visual Basic.
выполнив коман
В проводнике редактора выполните двойной щелчок мышью на модуле, содер
жащем код, который нужно скопировать, выделите в окне кода этот код и на
жмите комбинацию клавиш
3.
<Ctrl>+<C>,
чтобы его скопировать.
Откройте окно кода для модуля, в который нужно скопировать код,
-
в случае
необходимости вставьте новый модуль, щелкнув правой кнопкой мыши на про
екте и выполнив в контекстном меню команду
дуль),
после
чего
вставьте
код
в
окно
Insert
кода,
(Вставка)
нажав
1
Module
комбинацию
(Мо
клавиш
<Ctrl>+<V>.
Если требуется скопировать из одного VВА-проекта в другой весь модуль:
1.
2.
Откройте оба проекта, а затем откройте редактор
Visual Basic.
В проводнике редактора выберите модуль, который нужно скопировать, и пере
тащите его в целевой проект.
552
1
Глава
18
Если требуется скопировать модуль в рабочую книгу на другом компьютере или
с кем-либо им поделиться, следует экспортировать модуль в виде файла с расшире
нием
1.
bas,
который затем можно будет импортировать в целевую рабочую книгу:
Огкройте рабочую книгу, содержащую модуль, который нужно экспортировать,
а затем отройте редактор
2.
Visual Basic.
В проводнике редактора щелкните на модуле правой кнопкой мыши и в контек
стном меню выберите пункт
Export File (Экспорт файла).
При появлении запро
са перейдите в то место, куда требуется сохранить файл, дайте ему соответст
вующее имя и нажмите кнопку Сохранить
3.
(Save ).
Чтобы импортировать файл с расширением
bas,
откройте рабочую книгу, в ко
торую нужно вставить код, а затем откройте редактор
4.
Visual Basic.
В проводнике редактора щелкните правой кнопкой мыши на рабочей книге и
в контекстном меню выберите пункт
нии запроса перейдите к файлу с
Import File (Импорт файла). При появле
расширением bas и нажмите кнопку Открыть
(Open).
Пояснение
В этом разделе рассмотрено несколько методов копирования кода из одного проек
та
VBA
в другой. Как правило, обычно выбирают подход, который максимально
прост и лучше всего подходит для вашего случая.
18.15. Исправляем
ошибки VВА-кода
Задача
У вас есть некий VВА-код, вам надо его отладить.
Решение
Предположим, вы добавили в модуль следующую процедуру, чтобы протестиро
вать, является ли значение в активной ячейке числовым, и вам нужно отладить этот
код, чтобы обеспечить его должную работу:
SuЬ ПроверкаЗначения()
Dim val
val = ActiveCell.Value
If IsNumeric(val) Then
MsgBox ("число")
Else
MsgBox ( "не число")
End If
End Sub
Редактор
Visual Basic
предлагает несколько инструментов и функций для отладки
кода. Вы можете, например, приостанавливать его исполнение в определенных
Инструменты разработчика: макросы,
VBA,
элементы управления и
553
XML
точках, пошаrово просматривать выполняющийся код строка за строкой и изучать
значения любых переменных.
Чтобы приостановить исполнение кода на определенной строке, в нее можно доба
вить точку останова: щелкните на поле окна кода слева от строки или в любой
точке строки и выполните команду меню
(Переключить точку останова),
появится значок 8 (рис.
Debug
(Отладка)
1
Toggle Breakpoint
строка будет выделена, а на поле рядом с ней
-
18.8).
t] Microsoft V"rsual Вasic for Applications - Инструменты разработчика.хlsm - [Modulel (Code))
AJ-
f,le
fdit
Y,ew
!мert
F.ormat
Qebug
,,,
►
Run
Iools
[!dd-lns
W,ndow
о
х
- д х
):!elp
j
SuЬ ПроверкаSначения()
13
D1.D1 val
val = ActiveCell.Valu
If IзNumeric(val) ТЬеn
VВAP,oj«t (RJIКRfSJO.AH}
lt)
~ VВAP,oj«t (PERSOIIALXL5В}
-~ VIIAProj,,ct (ltнструменты paзpaбoт'IIIКil.Xlsm}
е
•
Мicrosoft Exa,I OЬjects
'- 11!1 Sheetl (Лист 1)
с
11!) Sheet2 (lkт2)
в-
("число")
МзgВох
("не
чиспо")
End If
~-l!!J SheetЗ(lkтЗ)
~
~
МзgВох
Еlзе
End
-1® Sheet'I (Лист1)
SuЬ
,i') ThsWorlcЬook
МоаАе5
·4
МociJel
>
Рис.
18.8.
Редактор
Visual Basic,
отображающий точку останова
Теперь при достижении точки останова выполнение кода будет приостанавливать
ся, и вы сможете выбрать один из следующих пунктов меню
Debug
(Отладка) для
пошаговой отладки кода:
♦
Step Into
(Выполнить пошаrово)
( <F8> ).
Этот вариант отслеживает каждую строку кода и пошаrово выполняет все вызы
ваемые ими процедуры;
♦
Step Over (Шаг с
обходом)
(<Shift>+<F8>).
Этот вариант ведет себя аналогично
Step Into
(Выполнить пошаrово), только
обходит все вызываемые кодом процедуры, а не выполняет их пошаrово;
♦
Step Out (Шаг с
выходом)
(<Ctrl>+<Shift>+<F8>).
Этот вариант выполняет оставшийся в процедуре код, и его можно использовать
для выхода из процедуры, которая была пошаrово выполнена;
♦
Run
То
Cursor (Запуск до
курсора)
(<Ctrl>+<F8>).
Этот вариант позволяет выполнять код вплоть до того места, куда помещен кур
сор, давая вам возможность обходить разделы кода.
Вы также можете выполнить команду меню
Run
(Выполнить)
1
Continue
(Продол
жить)- чтобы продолжить выполнение кода, пока он не встретит другую точку
Глава
554
18
останова, или команду
Run
(Выполнить)
1
(Сбросить)
Reset
чтобы прекратить
-
выполнение и начать всё заново.
При отладке кода часто возникает необходимость поэкспериментировать с уста
новкой нескольких точек останова. Если вам больше не нужна та или иная точка
останова, ее можно удалить, щелкнув на ее значке на поле или на строке, куда она
была вставлена, и выполнив команду меню
Debug
(Переключить точку останова). Чтобы удалить
команду
Debug
(Отладка)
1
(Отладка)
1
Toggle Breakpoint
все точки останова,
выполните
(Удалить все точки останова).
Clear AII Breakpoints
Приостановив исполнение, вы можете отслеживать значение любых переменных,
используя панель
меню
View
Locals (Локальные переменные). Откройте ее, выполнив команду
1 Locals (Локальные переменные), в этой панели содержатся
переменной, их текущие значения и тип данных (рис. 18.9). В верх
(Вид)
имена каждой
ней части панели показан также список стеков вызовов, отображающий очеред
ность выполняемых процедур.
~ Microsoft Visual Basic for Applicatioщ - Инструменты разработчика.х lsn1 [break] - [Module1 (Code)]
~ file
tdit
]nшt
]{iew
~ЁЗ•Q
F.ormat
Qebug
Bun
Jools
i?,dd-lns
Selected Module •
!::
Е
Project - VBAProject
d'iJ ~ .:;! ~
~ 1(Generзt)
SuЬ
[Н ·
Solver (SOLVl'R.XIAM)
[i] ~ VВAProject (FUIICRESJ<IAM)
~ VВAProject (PfRSONALXL.58)
Е1 -~
х
- 15' х
•
!:]
~
i3: <t]
~ Pa,te
~
Control
v 1 1Проеерка3начения
,.
ПроверкаЗначения()
vaJ. = ActiveCell -Valu
I~ IзNumer1c(val) Тhen
~
VВAProject (Инструменты разработч;,ка.хlsm)
Microsoft Excel Objects
' . 11[) Sheetl (Лист 1)
11[) Sheet2 {Лист 2)
11[) Sheetз (Лист 3)
·IIIO Sheet4 (Лист4)
:[! ThisWorkЬook
Modules
4 Module1
~
Diro val
МзgВох
{"числоn)
МзgВох
{"не
Else
~
Р
о
]::!elp
~
i.l'!, ~ 1-d 2. H
itJ
yYindow
число")
End If
End
SuЬ
>
locals
х
,...
Value
•я
vзl
Рис.
Панель
Locals
18.9.
Редактор
Visual Basic с
"
т
- строка ,
панелью
а не число"
•
Variant/String
,.
.,
Locals
(Локальные переменные) отображает все переменные. Если же вам
надо сосредоточиться на конкретных переменных или определенных выражениях,
вместо нее лучше использовать панель
Watches
(Окно контрольного значения), ко
торую можно открыть, выполнив команду меню
трольного значения).
ключением того, что
Watch (Окно кон
Панель Watches (рис. 18.1 О) похожа на панель Locals, за ис
она содержит дополнительный столбец Context (Контекст),
View
(Вид)
1
отображающий переменную, модуль или процедуру выражения, и не содержит
список стеков вызовов.
Инструменты разработчика: макросы,
t)
элементы управления и
VBA,
Microsoft Visu1I Basic ror Applic.ations - Инс.трумt:кты pa1p16oтчnu.xlsm (brt:ak] - [Modult:1 (Codt:)J
4
file
fdit
~~ ·
~"'
Y:iew
Insert
-
F.2rmi!lt
..,
Qebug
fiun
Iools
~dd-lns
Sub
Solvor (SOlVER.XLAН)
~ VIIAProj<!Ct (FIJIICRfS.Xl.AМ)
555
о
х
-
tfelp
ПроверхаЗн.а'!t:иия
о>
х
()
Dim val
val = Act.iv~ell . Valu
•
~
~ VВAProjoct (PERSOIIALJCLSВ)
VВAProject (Инструменты рnработчмка.хlsm)
8
-osoltExcdOЬj,ct,s
Sheel! (/кr 1)
Sheetl (/кr7)
Window
XML
I.!
13- ~
IsNuшez-ic
(val) Then
1val::;: мЯ - строка. а не чис:ло"
Else
ri
{"не
M.sqBox
число")
End If
End
-
1) ShееtЗ(l'истЗ)
1) Sheet◄ (/кr-4)
SuЬ
~ ThosWor'<Ьool<
~-1
х
-
"Я
Рис.
18.10.
Редактор
строка , а не чмсnо"
Visual Basic с
панелью
Чтобы добавить переменную или выражение на панель
VanвnVStmg
Moduie1 . ПроееР'(аЗначенмя
Watches
Watches
(Окно контрольно
го значения):
1.
Выполните команду меню
Debug
(Отладка)
1
Add Watch
(Добавить контрольное
значение).
2.
В поле
Expression
(Выражение) открывшегося диалогового окна
Add Watch
-
(Добавить контрольное значение) введите имя переменной или выражения
например,
ActiveCell.Address (рис. 18.11 ).
х
AddWatch
Expression:
ок
1 ActiveCell. Addressl
cancel
Context
Procedure:
ilро6еркаЗначения
Module:
~1
Project:
Help
VВAProject
WatchType
@watch Expression
О Вreak When Value Is True
О Вreak When Value Changes
Рис.
3.
18.11. Диалоговое
окно
Add Watch
В разделе Context (Контекст) используйте раскрывающиеся списки процедуры
(Procedure) и модуля (Module), чтобы указать, когда нужно оценивать выраже
ние, - обычно это текущие процедура и модуль.
Глава
556
4.
18
Установите переключатель
Watch
Туре (Тип контрольного значения) в одно из
положений:
вариант
•
Watch Expression (Контрольное выражение) выбирают
Watch (Окно контрольного значения);
для добавле
ния выражения на панели
варианты
•
Break When Value 1s True (Прервать, когда значение равно Исти
Break When Value Changes (Прервать при изменении значения)
на) и
чтобы дополнительно приостановить выполнение, когда переменная или вы
ражение принимают значение истиНА или изменяется значение.
В этом примере установите переключатель в положение
Watch Expression
(Контрольное выражение) и нажмите кнопку ОК, чтобы добавить контрольное
значение.
Чтобы отредактировать добавленное контрольное значение, щелкните на нем пра
вой кнопкой мыши, выберите в контекстном меню пункт
Edit Watch
(Изменить
контрольное значение) и внесите в него в открывшемся диалоговом окне
Watch
Edit
(Изменение контрольного значения) необходимые исправления. Чтобы уда
лить контрольное значение, выберите его и нажмите клавишу
<Del>
на нем правой кнопкой мыши и выберите в контекстном меню пункт
или щелкните
Delete Watch
(Удалить контрольное значение).
Отлаживать VВА-код можно также путем вывода специальных сообщений отлад
ки. Для этого добавьте в код строку Debug. Print текст, где текст
-
это сообщение,
которое вам надо вывести.
~ Microsoft Visual Вasic for ApplKations - Инструменты ра3ра6отчмо.хlsm (break:] - [Мodulel (Cod~)]
(4' file
fdit
Y,ew
!n...t
[ ~в!· Q
~ ~
F2rmat
~
i:if
Q
~
!
-
Qebug
►
~lected Module •
Bun
Iools
~dd-lns
j:: ::: :§i
х
-
(j
х
§З
: ControJ
~ г;=
j (Gе
=nе==,,.==,,========
,,,;1 -;,
l n==р===
оверuЗна че==н~
•м~======.-1
о]
•
о
tleJp
8
, IJ~~~i;:
SuЬ
Solver (SOI.VER.XlAН)
~- ~ VВAProjecl: (FUNCRES..Ja..AМ)
~-~ VIIAProjecl: (PERSOfW..XI.SII)
в-~ VIIAProjecl: (llнсrрументы рмрабо1'Ч11Ка.Х!sm)
Ei
W,ndow
ПроаеркаSнач~()
Di.m val
•
val
=
Act.1.veCell.Valu
Debug.Pri.nt:
•в :,той RЧе.йке
" & Acti.v~e1.l..Addxe:i:s
Н IsNumeric (va1) Тh=
<,
-osoft Exrei OЬjects
'·-Q) Sheetl (Лмстl)
,.. Q) Sheet2 (/kт2)
~овах
("число")
~qВОх
("не
1Actrv.CellAddress = "SFB"
1
число" )
End If
' Q) Sheetз (/kтЗ)
:--1!!) Sheet'l(/kт4)
End
SuЬ
'-~ ThsW<>n<Ьook
в~ -
.4
Мoduel
>
х
В sт-ой ячейке
$F$З
? val
Я
-
строка.,
а
н~
число
val = 7
? val
7
1
Рис.
18.12.
Редактор
Visual Basic с
панелью
lmmediate
Инструменты разработчика: макросы,
VBA,
элементы управления и
XML
557
Например, строка:
Debug.Print
"В этой ячейке
" & ActiveCell.Address
выводит адрес активной ячейки.
Все добавляемые вами сообщения отладки отображаются на панели
Immediate
(Окно немедленного выполнения), которую можно открыть, выполнив команду ме
ню
View
(Вид)
1
Immediate
(Окно немедленного выполнения). Эту панель также
можно использовать, чтобы извлекать или устанавливать значения переменных во
время приостановки кода. Например, при вводе на панели
Immediate
(Окно немед
ленного выполнения) строки? val мы извлечем текущее значение переменной val, а
при вводе val
= 7 переменной будет присвоено значение 7 (рис. 18.12).
Пояснение
В этом разделе представлены функции и инструменты отладки редактора
Basic.
Visual
Они вам пригодятся, если макрос или функция при выполнении отображают
ошибку или ведут себя вразрез ожиданиям.
18.16. Используем
встроенные диалоговые окна
Задача
Вы хотите использовать диалоговые окна
Excel
для отображения •1нформации или
получения ответа.
Решение
Excel
содержит несколько функций
VBA,
которые могут быть использованы для
отображения сообщения или получения информации от пользователя.
Самой простой из них является функция MsgBox, отображающая обычное сообще
ние. Например, следующая строка использует эту функцию, чтобы отобразить
в диалоговом окне сообщение Привет! и кнопку ОК:
MsgBox
("Привет 1 ")
Обычно функция принимает вид MsgBox (сообщение;кнопки;заголовок), где сообщение
это текст. который нужно отобразить, кнопки (необязательный аргумент)
вает н,;
, ·юпки, которые надо показать, и их значки, а заголовок
аргумент) - определяет заголовок диалогового окна. Так, код:
MsgBox
("Сахарку?",
vbYesNo,
-
указы
(необязательный
"Сахарок")
отображает диалоговое окно Сахарок с кнопками Да
(Yes)
и Нет
(No).
Далее вы
можете отреагировать на кнопку, нажимаемую пользователем во время работы
этого кода, следующим образом:
response = MsgBox("Caxapкy?", vbYesNo,
Select Case response
"Сахарок")
Глава
558
18
Case vbYes
'Code to run if Yes button
Case vbNo
'Code to run if No button
End Select
Если при запуске этого кода возникает ошибка, попробуйте выполнить функцию
MsgBox без скобок, например, так:
MsgBox
"Сахарку?",
vbYesNo,
"Сахарок"
Если вам нужно при запуске макроса принимать текстовый ввод, можно использо
вать функцию InputBox. Обычно она принимает вид Inрutвох(сообщение;заголовок;
значение), где сообщение мент)
мент) -
это отображаемый текст, заголовок (необязательный аргу
определяет заголовок диалогового окна, а значение (необязательный аргу
указывает значение по умолчанию. Например, следующий код просит
пользователя ввести его имя:
InputBox ("What is your name?")
Можно также использовать функцию Application.GetOpenFilename зить
диалоговое
окно
GetsaveAsFilename -
Открыть
файл
(Open File),
и
чтобы отобра
функцию
Application.
чтобы показать диалоговое окно Сохранить как файл
(Save As
File).
Обсуждение
В этом разделе показано, как использовать встроенные функции диалогового окна
для отображения простых сообщений и/или для получения ответа. Если вам нужно
создавать более сложные диалоговые окна, обратитесь к разд.
18.17. Используем
18.19.
элементы управления формы
Задача
Вам нужно поработать с данными в ячейках рабочего листа, и вы хотите использо
вать простые элементы управления, чтобы упростить задачу.
Решение
Предположим, вам
надо упростить процесс ввода или редактирования данных
в ячейках рабочего листа. Вместо того чтобы вводить значения в ячейки напрямую,
можно задействовать элементы управления формы, добавляемые на рабочий лист
для взаимодействия с ячейками. Например, элемент управления «флажок», позво
ляющий вводить в ячейку значения истиНА или ложь вместо того, чтобы вводить их
напрямую.
Инструменты разработчика: макросы,
Программа
Excel
♦
(Button).
Кнопка
VBA,
элементы управления и
559
XML
предлагает следующие элементы управления формы (рис.
18.13 ):
Используйте кнопку для запуска макроса по нажатию на нее;
♦
Раскрывающийся список
(Combo
Ьох).
Этот элемент позволяет выбрать одно значение из списка;
♦
Флажок
(Check Ьох).
Этот элемент управления позволяет включать или выключать значение (уста
навливать значения истиНА или ложь);
♦
Счетчик
(Spin button).
Используйте этот элемент для увеличения или уменьшения значения
-
напри
мер, числа или даты;
♦
Список
(List Ьох).
Этот элемент работает аналогично раскрывающемуся списку, только из него
можно выбрать несколько смежных или несмежных элементов;
♦
Переключатель
(Option button).
Переключатели позволяют выбрать один параметр из взаимоисключающего на
бора параметров. Обычно несколько переключателей объединяют в группу, что
позволяет выбрать из них какой-нибудь один параметр;
♦
Группа элементов
(Group
Ьох).
Это рамка с надписью, в которую можно добавлять другие элементы управления
формы. Обычно группу используют вместе с кнопками параметров, потому что
это позволяет определять, какие элементы являются частью группы;
♦
Подпись
(Label).
Это текст, используемый для обозначения другого элемента управления или
отображения какого-либо описания;
♦
Полоса прокрутки
(Scroll bar).
Этот элемент позволяет найти значение, прокручивая диапазон значений.
Счетчик
Подпись ----;э. Что вы хотите?
Раскрывающийся список➔ Ко<Ье
~1
~~
:::i:J
"
.,
~ ~ Сахар?
Флажок
~-
Группа элементов
в.арианr.
-
О В кафе
_...,,...-fr @ Cco6oй
~•14Ш14
е
v
Заказать
~Прокрутка
1 <Е----список
l <Е---кнопка
Переключатель
Рис.
18.13.
Элементы управления формы
Excel
Глава
560
'
,
18
• • Программа Excel для Windows предлагает два типа элементов управления: элементы управления формы и элементы управления ActiveX, В этом разделе описы
ваются элементы управления формы, которые проще, а также встроены в Excel,
У элементов управления ActiveX набор свойств гораздо обширнее, и их поведение
можно в дальнейшем определять путем написания VВА-кода, Более подробно об
этих элементах управления рассказано в разд,
Обычно
элементы
управления
команду Разработчик
(lnsert), выбрав из
controls) требуемый
формы
(Developer)
1
18, 18,
добавляют
на рабочий
Элементы управления
лист,
(Controls)
выполнив
1
Вставить
открывшейся группы Элементы управления формы
(Form
элемент управления и перетащив его мышью в нужное место
на рабочем листе. Так, чтобы добавить, например, на рабочий лист флажок, выбе
рите элемент управления Флажок из группы Элементы управления формы
controls)
(Form
и перетащите его в нужное место на рабочем листе.
Добавив элемент управления, вы можете настроить его внешний вид и управлять
его поведением:
♦
чтобы переместить элемент управления, выделите его, щелкнув на нем правой
кнопкой мыши, а затем нажмите на него и перетащите в нужное место;
♦
чтобы изменить размер элемента, выделите его, щелкнув на нем правой кнопкой
мыши, и перетащите его края до нужного размера.
Изменить размер элемента также можно, выделив его и
Формат фигуры
(Shape Format)
1
Размер
(Size)
выполнив команду
либо щелкнув правой кнопкой
мыши на элементе, выбрав из контекстного меню команду Формат элемента
управления
(Format Control)
и задав нужный размер на вкладке Размер
открывшегося диалогового окна Форматирование объекта
♦
(Size)
(Format Control);
чтобы изменить текст, отображаемый в элементе управления (например, в ярлы
ке), выберите элемент управления и выполните на его тексте двойной щелчок
мышью;
♦
чтобы указать, к какой ячейке привязать элемент управления, щелкните на нем
правой кнопкой мыши, выберите из контекстного меню команду Формат эле
мента управления
(Format Control), перейдите в открывшемся диалоговом окне
(Format Control) на вкладку Элемент управления
вставьте ссылку на ячейку в поле Связь с ячейкой (Cell Link)
Форматирование объекта
(Control) и
(рис. 18.14 );
♦
чтобы указать, какие значения нужно использовать в списке или в поле со спи
ском, добавьте их описание в диапазон ячеек, после чего щелкните правой кноп
кой мыши на элементе управления, выберите из контекстного меню команду
Формат "Элемента управления
(Format Control), перейдите в открывшемся диа
(Format Control) на вкладку Элемент
логовом окне Форматирование объекта
управления
сок
(Control) и вставьте ссылку на диапазон в поле
по диапазону (lnput Range ), как показано на рис. 18.14.
Формировать спи
Когда вы выбираете элемент из списка, Ехсе\ помещает его индекс в связанную
ячейку, и вы можете воспользоваться функцией индЕкс (см. разд.
извлечь его описание из входного диапазона;
7.11),
чтобы
Инструменты разработчика: макросы,
VBA,
элементы управления и
?
Форматирование объекта
Раз"rр
3ащнта
Свойства
За•trщающий тrкст
!!!<>Р•tировать список по диапазону:
XML
561
х
Эпrмrнт уnрамrни.я
SJS1:SJS2j
Се!'}ь с ячейко~
8
.Копичrстео строк списка:
О Qбън,ное затенение
ОК
Рис.
От.tена
Редактирование параметров элемента управления «раскрывающийся список»
18.14.
в диалоговом окне Формат элемента управления
♦
для группировки переключателей с тем, чтобы можно было выбрать только один
из них, добавьте на рабочий лист группу, а затем поместите в нее нужные пере
ключатели (см. рис.
♦
18.13);
чтобы назначить элементу управления формы макрос, который запускается по
его нажатию (обычно это делается для кнопки), щелкните на этом элементе пра
вой кнопкой мыши, выполните из контекстного меню команду Назначить мак
рос
(Assign Macro)
и в открывшемся одноименном диалоговом окне выберите
для запуска существующий макрос, либо нажмите кнопку Записать
(Record)
и выполните необходимые действия для его записи, либо нажмите кнопку Соз
дать
♦
(New)
и напишите соответствующий VВА-код;
чтобы выбрать для элемента управления какие-либо другие варианты поведения,
используйте параметры диалогового окна Форматирование объекта
Control),
которое открывается
управления
управления
и
выбором
из
щелчком
контекстного
(Format Control).
правой
меню
(Forrnat
кнопкой мыши на элементе
команды
Формат элемента
Доступные для элемента управления параметры
зависят от его типа.
Пояснение
В этом разделе показаны варианты использования элементов управления формы
Excel,
которые встроены в
Excel
и обеспечивают относительно простые способы
взаимодействия со значением ячейки без написания VВА-кода. В отличие от боль
шинства сложных элементов управления
доступны как в
Excel
для
macOS,
так и в
ActiveX, элементы
Excel для Windows.
управления формы
562
Глава
18
По возможности используйте элементы управления формы, а не элементы управ
ления ActiveX, поскольку они проще и обеспечивают межплатформенную совмес
тимость. Попробуйте поэкспериментировать с элементами управления формы,
чтобы увидеть, как их можно применять в ваших задачах.
18.18. Используем
элементы управления
ActiveX
Задача
Вы хотите использовать такие элементы управления, которые можно настраивать
более детально, чем элементы управления формы, программировать с помощью
языка
VBA и добавлять
в пользовательские формы.
Не все элементы
ActiveX допускается использовать непосредственно на рабочих
- некоторые из них можно добавлять только в пользовательские формы
Visual Basic для приложений (VBA). При попытке добавить такие элементы управ
ления на рабочий лист в приложении Excel отображается сообщение «Вставка
листах
объекта неосуществима».
Решение
Предположим, вам надо задействовать элементы управления, но функциональности
элементов управления формы, представленных в разд.
Если вы работаете в
управления
Excel
для
Windows,
18.17,
вам недостаточно.
то можете воспользоваться элементами
ActiveX.
Они похожи на элементы управления формы, но дают больше гибкости, имеют бо
лее обширный набор свойств, их можно добавлять в пользовательские формы и
управлять их поведением с помощью
VBA.
доступны только в
и несовместимы с другими платформами.
Excel
Excel для Windows
Однако элементы управления
предлагает следующие элементы управления
♦ Командная кнопка
ActiveX
(рис.
ActiveX
18. 15):
(Command button).
Используйте командную кнопку для запуска макроса по нажатию на нее;
♦
Раскрывающийся список
(Combo
Ьох).
Этот элемент позволяет выбрать одно значение из списка;
♦
Флажок
(Check Ьох).
Этот элемент управления позволяет включать или выключать значение (уста
навливать значения истиНА или ложь);
♦
Список
(List
Ьох).
Этот элемент работает аналогично раскрывающемуся списку, только из него
можно выбрать несколько смежных или несмежных элементов;
♦
Текстовое поле
(Text Ьох).
Этот элемент позволяет вводить или редактировать текст в прямоугольном поле
или отображать статичный текст;
Инструменты разработчика : макросы,
с
в
А
D
563
XML
н
G
х
j
j группа элементов ---1--;;,, Группа ----------~
Форма :,ака3а
6
7
~-+-+--
Счетчик
Метка
в
9
F
UserForm1
3 Вкладки -----~т.ь1 l т.ь2
:
Е
элементы управления и
---------
1
2
VBA,
Раскрывающийся список
10
Прокрутка
Печенье
Переключатель ---гт-т " с собой
11
и
2.1
..&.J
1
Пирожное
r ~=
Список
Флажок
13
Р' сахар?
14
15
16
Кнопка-п ереключатель
Молочка?
17
18
19
\текстовое поле - - - - r - P ' 1 КОМ11ентарий типа 'Добавьте горяченько~·
20
.
-·,r Q
21
22
ф.
23 Изображение
----+-t-~
'
.
Оформить :~ака, 1
~-+---
Командная кнопка
....,.
-------
24
25
261
27
Рис.
♦
Полоса прокрутки
18.15.
Элементы управления
ActiveX Excel
(Scroll bar).
Этот элемент позволяет найти значение, прокручивая диапазон значений;
♦
Счетчик
(Spin button).
Используйте этот элемент для увеличения или уменьшения значения
-
напри
мер, числа или даты;
♦
Переключатель
(Option button).
Переключатели позволяют выбрать один параметр из взаимоисключающего на
бора параметров. Обычно несколько переключателей объединяют в группу, что
позволяет выбрать из них какой-нибудь один параметр;
♦
Подпись
(Label).
Это текст, используемый для обозначения другого элемента управления или
отображения какого-либо описания;
♦
Изображение
(Image ).
Этот элемент позволяет вставить изображение;
♦
Кнопка-переключатель
(Toggle button).
Используйте этот элемент для обозначения двоичного состояния, такого как
Да/Нет или Вкл/Выкл;
564
Глава
1
18
♦ Группа элементов
(Group
Ьох).
Это рамка с надписью, в которую можно добавлять другие элементы управления
формы. Обычно группу используют вместе с кнопками параметров, потому что
это позволяет определять, какие элементы являются частью группы;
♦ Набор вкладок (ТаЬ
strip)
и Набор страниц
(Multi page).
Эти элементы управления позволяют создавать на форме несколько вкладок или
страниц, между которыми
можно переключаться.
Принципиальное различие
между этими элементами управления заключается в том, что на вкладках всегда
располагаются одинаковые элементы управления, а на страницах
Обычно элемент управления
Разработчик
(Developer)
1
ActiveX
-
разные.
добавляют в документ, выполнив команду
Элементы управления
(Controls) 1 Вставить (lnsert),
ActiveX (ActiveX controls) требуемый
-выбрав из группы Элементы управления
элемент управления и перетащив его мышью в нужное место. Так, чтобы добавить,
например, флажок, выберите элемент управления Флажок из группы Элементы
управления формы
(Fonn controls)
и перетащите его туда, где он должен нахо
диться.
Добавив элемент управления, прежде чем приступить к изменению его внешнего
вида и поведения, убедитесь, что в
Excel
включен режим конструктора. Обычно
Excel
при добавлении элемента управления
ActiveX
режим конструктора активиру
ет автоматически. Вручную включать и выключать режим конструктора можно вы
полнением команды Разработчик
Режим конструктора
(Developer)
(Design Mode ).
Чтобы переместить элемент управления
1
Элементы управления
ActiveX,
(Controls)
1
перейдите в режим конструктора,
выделите элемент, щелкнув на нем правой кнопкой мыши, а затем нажмите на не
го и перетащите в нужное место. При этом можно и изменить размер элемента,
перетащив его края до нужного размера. В качестве альтернативы щелкните пра
вой кнопкой мыши на элементе управления, выберите из контекстного меню ко-
манду Формат элемента управления
мер на вкладке Размер
объекта
(Size)
(Format Control)
и задайте ему нужный раз
открывшегося диалогового окна Форматирование
(Format Control).
Чтобы настроить внешний вид и поведение элемента управления
ActiveX,
щелкни
те, находясь режиме конструктора, на элементе правой кнопкой мыши и выберите
из контекстного меню команду Свойства
(Properties).
мент
Разработчик
управления,
управления
выполнить
(Controls)
1
команду
Можно также выделить эле
(Developer) 1 Элементы
(Properties) и выбрать требуемое для настройки
Properties (Свойства) (рис. 18.16). На этой панели
Свойства
свойство в открывшейся панели
отображаются доступные свойства элемента управления в алфавитном порядке или
по категориям (что, как правило, оказывается более полезным).
Элементы управления
ActiveX
содержат обширный набор свойств, которые можно
использовать для их настройки, в том числе:
♦
Appearance (Внешний
вид).
Это свойство включает параметры, определяющие заголовок, выравнивание,
цвет или любые специальные эффекты элемента управления;
Инструменты разработчика: макросы,
VBA,
элементы управления и
Propertres - СоmЬоВохЗ
------
Е1
565
х
-
-
СоmЬо8ох3 СоmЬоВох
AlphaЬetic
XML
V
Categorized
Appearance
(Name)
СоmЬоВохЗ
Вackeolor
0
ВackStyle
1 - fmВackStyleOpaque
ВorderColor
■ &Н800000063.
О • fmВorderStyleNone
ВorderStyle
&t-1800000053.
"
..::J
Contro/ТipText
1 - fmOropВuttonStyleArrow
■ &t-1800000083.
ShowDropВuttonWhen 2 - fmShowDropВuttonWhenAlways
2 - fmSpecialEffedSunken
SpecialE№ct
О - fmStyleDropDownComЬo
Style
Value
Чай
VisiЫe
True
DropВuttonStyle
ForeColor
Е1 Вehavior
False
False
True
True
True
False
1 - fmМatchEntryComplete
False
AutoSlze
AutoTab
AutoWordSelect
ЕлаЫеd
HideSelection
Locked
МatchEntry
МatchRequired
Е1
Рис.
♦
Мaxlength
о
SelectionMargin
TextAlrgn
True
1 - fmTextAlignLeft
Data
18.16.
Панель Properties (Свойства) для элемента управления
ComboBox (Раскрывающийся список) ActiveX
Behavior (Поведение) .
Параметры этой группы позволяют управлять выравниванием текста, способом
сопоставления записей в списке и возможностью выбора нескольких элементов
из поля со списком;
♦
Data (Данные).
Это свойство включает параметры, определяющие оформление поля со списком
в виде счетчика, количество строк, отображаемых списком , количество столбцов
и связанный столбец, используемый для указания значения элемента управ
ления;
♦
Font (Шрифт) .
Это свойство задает шрифт элемента управления;
♦
Misc
(Разное).
Это свойство управляет общими параметрами , такими как активация элемента
управления, его имя (на которое можно будет сослаться в VВА-коде) и связан
ная с ним ячейка . Оно также включает различные параметры, специфичные для
каждого элемента управления ,
-
например, источник данных списка;
566
♦
1
Глава
18
Picture (Изображение).
Используйте параметры этого свойства, чтобы добавить изображение к элементу
управления
♦
Position
-
например, к кнопке управления или к кнопке-переключателю;
(Расположение).
Используйте
параметры
из этой
категории для
позиционирования
элемента
управления.
Далее представлены некоторые общепринятые способы применения параметров
элемента управления для определения его поведения:
♦
используйте параметр
Caption
(Заголовок) свойства
Appearance (Внешний
вид),
чтоб~~ изменить текст, отображаемый в таких элементах управления, как кнопка,
переключатель или флажок;
♦
чтобы указать, к какой ячейке нужно привязать элемент управления, задайте ее
в параметре
♦
LinkedCell (Связанная
ячейка) свойства
Misc (Разное);
чтобы указать, какие значения нужно использовать в списке или поле со спи
ском, добавьте их описание в диапазон ячеек, затем задайте этот диапазон в па
раметре
ListFillRange
(Диапазон листа для заполнения списка) свойства
Misc
(Разное);
♦
используйте параметры
ловки столбца) свойства
ColumnCount (Подсчет столбца) и ColumnHeads (Заго
Data (Данные), чтобы указать, сколько столбцов нужно
отобразить и надо ли отображать их заголовки;
♦
чтобы указать, в каком столбце записать значения элемента управления, вос
пользуйтесь
параметром
BoundColumn
(Связанный
столбец) свойства
Data
(Данные);
[•,·~·.
•
Когда вы связываете поле со списком ActiveX с ячейкой, элемент управления помещает в эту ячейку выбранное значение из связанного столбца. Это поведение
'
отличается от поведения поля со списком элемента управления формы, который
1
с.
♦
-
помещает в связанную ячейку свой индекс.
для группировки переключателей с тем, чтобы можно было выбрать только один
из них, присвойте каждому переключателю одинаковый параметр
(Имя группы) свойства
Misc
вания элемента управления Список
(Стиль списка) свойства
Data
GroupName
(Разное). Или рассмотрите возможность использо
(List
Ьох), значение параметра
(Данные) которого равно
ListStyle
fmListStyleOption»,
«1 -
поскольку оно делает список похожим на переключатели;
♦
используйте параметр
Accelerator
назначить элементу управления
(Ускорение) свойства
«горячую»
клавишу.
Misc
(Разное), чтобы
Например, указание
С
в качестве значения параметра
(Ускорение) для кнопки означает,
что нажатие комбинации
приведет к тому же результату, что
Accelerator
клавиш <Alt>+<C>
и нажатие самой кнопки.
Более подробно определять поведение элементов управления
давая VВА-код для событий
-
ActiveX
можно, соз
действий, которые приводят к запуску VВА-кода.
Например, кнопку включает событие
Click
(Щелчок), с помощью которого можно
Инструменты разработчика: макросы,
VBA,
элементы управления и
567
XML
указать, что должно произойти при нажатии на кнопку. Аналогичным образом эле
менты управления Флажок и Список включают события
Change
(Изменить), ко
торые запускаются при изменении их значений. В целом, чтобы создать код
для событий элемента управления
1.
С помощью параметра
VBA
ActiveX:
(Name) (Имя) свойства Misc (Разное) измените имя,
Excel всем элементам управления ActiveX, для
сваиваемое по умолчанию
при
того
элемента, который собираетесь применить или на который ссылаетесь в VВА
коде. Хотя этот шаг необязателен, он помогает сделать ваш код более читабель
ным и понятным.
2.
Щелкните правой кнопкой мыши на элементе управления и выберите из контек
стного меню команду
View Code (Просмотр
V isual Basic.
кода), открывающую окно кода ра
бочего листа в редакторе
3.
Из левого раскрывающегося списка
Object
(Объект) окна кода выберите эле
мент управления, для события которого собираетесь написать VВА-код. Напри
мер, выберите кнопку, чтобы написать код, который запускается по ее нажатию.
4.
В правом раскрывающемся списке
Procedure
(Процедура) окна кода выберите
событие, для которого собираетесь написать код. Например, событие
(Щелчок)
-
управления. Когда событие будет выбрано, редактор
Visual Basic
добавит для
него в код рабочего листа пустую процедуру. Например, если на шаге
выбрана кнопка с именем
Visual Basic создаст
5.
Click
чтобы написать код, который запускается по щелчку на элементе
3
была
cmdShowValue, то для события Click (Щелчок) редактор
cmdShowValue _Click.
процедуру
Отредактируйте процедуру, чтобы она выполняла при запуске события все
необходимые вам действия. Так, для отображения на рабочем листе листзаказа
значения флажка флагсахар дополните код процедуры следующим образом:
Private Sub cmdShowValue_Click()
'Обработка значения флагСахар
МsgВох(ЛистЗаказа.флагСахар.Vаluе)
End Sub
Вместо того чтобы выполнять шаги со 2-го по 4-й, просто сделайте на кнопке двой
ной щелчок мышью. Это действие автоматически вставит пустую процедуру для
;
события
Click
(Щелчок).
Взаимодействовать с элементом управления после внесения в него всех необходи
мых изменений вы сможете, отключив режим конструктора
команду Разработчик
(Developer)
конструктора (Design Mode)).
1
-
Элементы управления
выполните для этого
(Controls)
1
Режим
Если взаимодействовать с элементом управления не получается, убедитесь, что
значение параметра EnaЫed (Включен) свойства
значение этого параметра будет равно
False,
Misc
(Разное) равно
True.
Если
вы не сможете использовать этот
элемент управления, даже если он отображается.
568
Глава
1
18
Пояснение
В этом разделе показано, как использовать элементы управления
ные в
Excel
для
Windows.
ActiveX,
доступ
У этих элементов управления более обширный набор
свойств, чем у элементов формы, и чтобы точно настроить их поведение, для раз
личных событий элементов управления
элементы управления
в
ActiveX
можно писать VВА-код. Однако
ActiveX
сложнее элементов управления формы и недоступны
Excel для macOS.
Добавлять элементы управления
можете
также
использовать
их
ActiveX
для
можно не только в свои документы, вы
создания
(более подробно об этом рассказано в разд.
пользовательских
диалоговых
окон
18. 19).
Если вы не знаете, принадлежит элемент управления группе форм или группе
ActiveX,
активируйте режим конструктора, щелкните правой кнопкой мыши на эле
менте управления и рассмотрите его параметры. Если в элементе управления есть
параметр Назначить макрос (Assign Масго), то это элемент управления формы.
Если в элементе управления есть параметр Свойства (Properties) или Просмотр
кода
(View Code),
18.19. Создаем
то это элемент управления
ActiveX.
пользовательскую форму
Задача
Вы хотите создать пользовательское диалоговое окно, содержащее один или не
сколько элементов управления
ActiveX.
Решение
Предположим, вам надо, чтобы рабочая книга содержала таблицу таблМысли со
столбцами Мысль и дата и свободно плавающее диалоговое окно, позволяющее быст
ро добавлять в таблицу новые мысли и указывать время их ввода. Достичь этого
можно, создав пользовательскую форму
-
настраиваемое диалоговое окно, содер
жащее один или несколько элементов управления
ной формы ввода данных
Excel
(см.разд.
2.12),
ActiveX.
В отличие от стандарт
над элементами управления поль
зовательской формы вы получите полный контроль, поскольку будете задавать их
поведение с помощью событий
VBA.
Для решения поставленной задачи создайте пользовательскую форму с текстовым
полем, позволяющим вводить новые мысли, а также включите в нее кнопку, добав
ляющую их в таблицу, и кнопку, закрывающую пользовательскую форму без ввода
данных:
1.
Прежде всего нужно вставить на рабочий лист таблицу, в которую будут добав
ляться мысли,
-
создайте таблицу, содержащую столбцы Мысль и дата, назовите
ее таблМысли, а рабочему листу дайте имя Мысли.
2.
Затем создайте в редакторе
•
откройте редактор
Код
Visual Basic
Visual Basic,
(Code) Visual Basic;
1
пользовательскую форму (рис.
выполнив команду Разработчик
18.17):
(Developer)
1
Инструменты разработчика: макросы,
•
VBA,
элементы управления и
569
XML
в проводнике редактора выполните двойной щелчок мышью на VВА-проекте
рабочей книги и выберите команду
Insert (Вставка) UserForm (Пользова
- редактор Visual Basic добавит в проект пустую пользова
форму UserForml.
1
тельская форма),
тельскую
3.
Измените имя и заголовок созданной пользовательской формы, для чего выпол
ните команду
панели
View (Вид) Properties window (Окно свойств), в
Properties (Свойства) (если она еще не открыта) выделите
открывшейся
1
свою пользо
вательскую форму и:
•
в свойстве
Misc
(Разное) этой панели измените параметр
Name
(Имя) на имя,
на которое будете ссылаться в VВА-коде (в этом примере на формамысли);
•
в свойстве
Appearance
(Внешний вид) измените параметр
Caption
(Заголо
вок) на заголовок, который будет отображаться в верхней части диалогового
окна (в этом примере на Запись мысли).
4.
Чтобы добавить элементы управления в пользовательскую форму, выделите
пользовательскую форму, убедитесь, что открыта панель
рументов)
Toolbox
Toolbox
(Панель инст
в противном случае откройте ее, выполнив команду
-
(Панель инструментов),
-
View
(Вид)
1
затем выберите каждый тип элемента управ
ления, который собираетесь добавить, и перетащите их мышью в нужное место
в пользовательской форме. Так, в этом примере нужно добавить текстовое поле
и две кнопки.
5.
Обновите свойства каждого элемента управления, начиная с текстового поля,
для чего выделите это поле в пользовательской форме и измените в панели
Properties
(Свойства) его параметр
Name
(Имя) свойства
Appearance
(Внешний
вид) на полеМысли. Задание имени свойства содержательного значения делает
VВА-код более читабельным и понятным.
6.
Чтобы обновить свойства первой кнопки, выберите ее и измените параметр
Name
7.
(Имя) на кнопкадобавления, а параметр
(Заголовок)- на Записать.
Чтобы обновить свойство второй кнопки, выберите ее и измените параметр
Name (Имя)
8.
Caption
на кнопкаотмены, а параметр
Caption (Заголовок)- на
Отменить.
Чтобы кнопка кнопкаДобавления по нажатию на нее добавляла в таблицу таблМысли
новую строку, напишите VВА-код для ее события
Click (Щелчок) -
выполните
на кнопке двойной щелчок мышью и введите в созданную пустую процедуру
для этого события следующий код:
Private Sub кнопкаДобавления_Сliсk()
Dim ws As Worksheet
Dim tЫ As ListObject
Dim row As ListRow
'Получение рабочего листа
Set ws = Worksheets
("Мысли")
'Получение таблицы
Set
tЫ
= ws.ListObjects
("таблМысли")
Глава
570
18
'Добавление новой строки
Set row =
tЫ.ListRows.Add
'Заполнение первого и второго
row.Raпge(l)
столбцов
полеМысли.Vаluе
= Now
row.Raпge(2)
'Очистка текстового поля формы
полеМысли
=
1111
'Фокусировка на текстовом поле
полеМысли.SеtFосus
Sub
Епd
Чтобы кнопка кнопкаОтмены по нажатию на нее закрывала форму, выполните на
9.
кнопке двойной щелчок мышью и введите в созданную пустую процедуру для
этого события следующий код:
Pri vate SuЬ кнопкаОтмены_Click ()
Unload Ме
End Sub
~ Microsoft Visual 8.Jsic. for Applications - Инструменты р13ра6отчик1.хlsm - (Инструменты p111p16oNиu.xlsm - форм1Мысли (Use:rform))
4
file:
,E.dft
~i~
!nse:rt
F2rm11t
.Qe:bug
1!1 ЕЮ •
►
11
.Вun
Iools
Add-lns
Window
□
tl.e:lp
х
-
f;
х
il
:~~Jil:':ifQ_
Proj«t • V ВAP roje<t
~ sti..t◄ (/k"т4)
1) sti..tS (l'ктS)
1) sti..16 (1'кт6)
'!) sti..t7 (t,\,,c,>,)
Ю 11-osWorl<Ьook
1) llиcrl (l'кт7)
gi~
Propecties - формаМыс.пм
фopN,i1MWCIIМ
~tic
Userform
Coteoo,ized
Е1 Appeilril~
Вod<Coiof
Вorde-Coiof
ВorderStyle
F1
о~а
■ 8Н80000012&
О • frr&>rde-StyieNone
C~tion
з.r..а,_,..
Fo<.Coiof
•
SpodoEffect
ФО,,моМь,сли
Controts
1
l,lдB \iHB0 0CI
rJ@-~
8Н80000012&
= ff!lo;j
Rrм vinr
Рис.
18.17.
показаны панель
iJ
Готовая пользовательская форма в редакторе
Properties
(Свойства) и панель
Toolbox
Visual Basic:
(Панель инструментов)
Выровнять и скомпоновать добавленные в пользовательскую форму элементы
управления можно с помощью команд меню
Format
(Формат) редактора
Visual
а изменить порядок следования вкладок элементов управления - щелкнув
в редакторе Visual Basic правой кнопкой мыши на пользовательской форме и вы
брав из контекстного меню пункт ТаЬ Order (Последовательность перехода).
Basic,
Чтобы пользовательская форма отображалась на рабочем листе, нужно создать со
ответствующий макрос, для чего в проводнике редактора выполните двойной щел-
Инструменты разработчика : макросы,
VBA,
элементы управления и
571
XML
чок мышью на модуле рабочей книги (если такого модуля в проводнике нет, щелк
ните правой кнопкой мыши на рабочей книге и выполните команду
ка)
1
Module
Insert
(Встав
(Модуль), которая его вставит) и добавьте в него код для макроса
ShowForm:
Sub ShowForm ()
' Отображае т форму ф орма Мысли
ф ормаМысли. S h оw
End Sub
Добавив макрос, запустите его, и на рабочем листе отобразится пользовательская
форма (рис .
18.18).
А
3
4
5
с
в
а Дата
1 Мысль
2 Взять кошку
.
1Купить новый домик для ежа
1
Держать кошку подальше от домика ежа
а
22.12.2023 8:35
22.12.2023 9:01
22.12.2023 9:02
F
Е
D
G
х
Запись мысли
Купить кошке побольше еды
22.12.2023 9:0~
Взять ежа
б
7
8
9
10
11
Отменить
записать
12
13
Рис .
18.18. Заполненная
пользовательская форма и таблица, в которую она добавляет данные
Пояснение
В этом разделе показано, как с помощью элементов управления
ActiveX
создать
настраиваемую пользовательскую форму , вместо того , чтобы добавлять их на рабо
чий лист. В целом пользовательские формы могут использовать те же основные
элементы управления
ActiveX,
что и рабочие листы, а также дополнительные эле
менты управления: рамку, отображающую прямоугольную рамку , полосу вкладок,
отображающую те же элементы управления, но на нескольких вкладках, и много
страничный элемент управления, позволяющий отображать несколько элементов
управления на разных станицах.
18.20. Создаем
пользовательскую надстройку
Excel
Задача
Вы создали ряд пользовательских функций , и хотите иметь возможность применять
их во всех открытых рабочих книгах, не используя личную книгу макросов .
572
1
Глава
18
Решение
При добавлении функций в личную книгу макросов (см. разд.
18.3)
они автомати
чески становятся доступны во всех открытых рабочих книгах. Однако при их вызо
ве приходится включать в команды префикс PERSONAL. х1sв ! . Так, чтобы вызвать из
личной книги макросов функцию RandTen, надо ввести =PERSONAL.XLSB!RANDТEN().
Чтобы опустить этот префикс, можно сохранять функции в пользовательской над
стройке
в
Excel.
файле, содержащем
Excel -
дополнительные функции, добавляемые
При наличии пользовательской надстройки доступ к содержащемуся в ней
УВА-коду предоставляется всем открытым рабочим книгам, что упрощает совме
стное их использование.
Дпя создания пользовательской надстройки
1.
Создайте новую рабочую книгу, а затем откройте редактор
нив команду Разработчик
2.
Excel:
(Developer) 1 Код
Yisual Basic,
(Code) 1 Visual Basic.
выпол
В проводнике редактора щелкните правой кнопкой мыши на УВА-проекте рабо
чей книги и выберите из контекстного меню команду
Insert
(Вставка)
1
Module
(Модуль).
3.
Выполните на модуле двойной щелчок мышью и введите в открывшееся окно
кода все функции, которые должна включать надстройка.
4.
В проводнике редактора щелкните правой кнопкой мыши на УВА-проекте,
выберите из контекстного меню пункт
диалоговом окне
Properties
VBAProject Properties
(Свойства), в открывшемся
(Свойства проекта
VBA)
введите имя
и описание проекта и нажмите кнопку ОК.
5.
Закройте редактор
Сохранить как
Visual Basic, выполните команду меню Excel Файл (File) 1
(Save As), измените тип файла на надстройку Excel (*.xlam),
введите имя файла, выберите, куда его сохранить, и сохраните файл в выбранное
место.
Создав надстройку, активировать ее в
1.
Excel
Откройте рабочую книгу
Excel
работчик
Надстройки
(Developer)
1
можно следующим образом:
(или создайте новую) и выполните команду Раз
(Add-ins)
1
Надстройки
Excel (Excel
add-ins).
2.
В открывшемся диалоговом окне Надстройки
кнопку Обзор
(Browse ),
Excel (Excel add-ins)
нажмите
перейдите к созданной вами надстройке и нажмите
кнопку ок.
Активировав надстройку, вы сможете вызвать любую ее функцию, не добавляя
никакого префикса. Так, если надстройка включает функцию RandTen, вызвать ее
в ячейке рабочего листа можно, введя =RANDТEN().
В пользовательские надстройки
Excel
также допускается включать макросы и поль
зовательские формы. Сделав это, вы сможете запускать макросы, добавив их на па
нель быстрого доступа или в ленту (см. разд.
Макрос
(Macro)
они отображаться не будут.
18.5).
Однако в диалоговом окне
Инструменты разработчика: макросы,
•
VBA,
элементы управления и
При редактировании кода в пользовательской надстройке
Excel
573
XML
не предлагает со
хранить изменения, так что вам придется сделать это в редакторе
Visual Basic
вручную, выделив проект и выполнив команду Файл (File) 1 Сохранить (Save).
•
Пояснение
В этом разделе описан способ организации совместного использования кода откры
тыми рабочими книгами путем создания пользовательской надстройки Ехсе\. Соз
дав ее, вы сможете делиться файлом надстройки с другими пользователями и
добавлять его в другие установки
Excel.
Искать надстройки от других поставщиков решений и управлять ими можно, вы
(Developer) 1 Надстройки (Add-ins) 1 Надстройки
полнив команду Разработчик
Например, если вы решите протестировать экспериментальные функции
(Add-ins).
от команды
Microsoft Excel,
18.21. Настраиваем
попробуйте поискать надстройку E:xcel Labs.
параметры безопасности
и конфиденциальности
Задача
Вы хотите управлять запуском макросов или элементов управления
ActiveX
и ука
зывать, стоит ли доверять документам, хранящимся в определенных местах.
Решение
При открытии рабочих книг, содержащих макросы, компоненты
ActiveX
или под
ключения к внешним источникам данных, Ехсе\ может предложить вам включить
содержимое рабочей книги. Если вы работаете в Ехсе\ для
Windows,
то управлять
этим поведением можно с помощью инструмента Центр управления безопасно
(Trust Center) - набора настроек безопасности и конфиденциальности для
Office, включая Ехсе\. Здесь вы сможете обновить настройки макросов
элементов управления ActiveX, указав надежные расположения и документы,
стью
приложений
или
а также многое другое.
Чтобы открыть Центр управления безопасностью, выполните команду Разработ
чик
(Developer)
1
Код
(Code)
1
(Macro Security). Можно
(Options), в открывшемся диа
Безопасность макросов
также выполнить команду Файл
(File)
1
Параметры
Excel (Ехсе\ Options) выбрать раздел Центр управления
и нажать кнопку Параметры центра управления
Center)
(Trust
(Trust Center Settings).
логовом окне Параметры
безопасностью
безопасностью
macOS не содержит инструмент Центр управления безопас
(Trust Center). Однако получить в ней доступ к ограниченному набору
параметров безопасности можно, выполнив команду Excel I Параметры (Preferences) 1 Безопасность (Security).
Программа Ехсе\ для
ностью
Глава
574
18
Изменение настроек Центра управления безопасностью меняет безопасность ва
шего компьютера, данных, а также компьютеров и данных в ваших сетях. Прежде
чем изменить какие-либо настройки Центра управления безопасностью, внима
•
тельно прочтите все предупреждения и рекомендации, учтите потенциальные рис-
ки и проконсультируйтесь с вашим системным администратором.
Пояснение
В этом разделе показано, как получить доступ к Центру управления безопасностью,
который можно использовать для изменения настроек безопасности и конфиденци
альности. Например, с его помощью вы сможете просмотреть все надежные распо
ложения.
18.22. Импортируем
и экспортируем ХМL-файлы
Задача
Вы хотите импортировать или экспортировать данные в ХМL-формате, сопостав
ляя каждый элемент с ячейкой или столбцом таблицы.
Решение
Предположим, что ХМL-файл ProductData.xml, содержащий данные о продукте, со
стоит из одного элемента
И
<Title> и повторяющихся записей с элементами <Name>
<Desc>:
<?xml version="l.O" encoding="UTF-8" standalone="yes"?>
<data-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Тitlе>Актуальные данные о продукте</Тitlе>
<record>
<Name>Чaй</Name>
<Dеsс>Подается горячим</Dеsс>
</record>
<record>
<Name>Koфe</Name>
<Dеsс>Черный как безлунная ночь</Dеsс>
</record>
</data-set>
Чтобы работать с этими данными, вам надо иметь возможность импортировать их
из файла ProductData.xml в определенные ячейки и столбцы таблицы
Excel
и экспор
тировать данные из этих ячеек и столбцов таблицы в другой файл, используя тот же
ХМL-формат.
Если вы работаете в
Windows, то можете решить эту задачу с помощью
Excel. Эти параметры позволяют сопоставлять каж
дый элемент в ХМL-схеме с ячейкой или столбцом таблицы Excel, а затем исполь
зовать такое сопоставление для импорта ХМL-данных в определенные ячейки Excel
или экспорта значений ячеек Excel в ХМL-файл.
Excel
для
ХМL-параметров разработчика
Инструменты разработчика: макросы,
VBA,
ХМL-данные также можно импортировать в
разд.
15.1),
элементы управления и
Excel
и с помощью
XML
575
Power Query
(см.
однако ХМL-параметры разработчика позволяют точно настроить ре
зультаты импорта, сопоставляя элементы ХМL-файла с ячейками и столбцами
таблицы.
Прежде чем импортировать или экспортировать данные, необходимо указать, с чем
сопоставлять каждый элемент имеющегося ХМL-файла. Например, для сопостав
ления элемента <Ti tle> файла
<Desc> -
1.
ProductData.xml с ячейкой А 1, а его элементов <Name> и
со столбцами таблицы
На рабочем листе
в ячейку
83.
Excel
Excel
Продукт и Описание:
введите слово Продукт в ячейку АЗ и слово Описание
Затем выделите диапазон АЗ:83 и преобразуйте его в таблицу с за
головками, выполнив команду Вставка
(Insert)
1
Таблицы (ТаЬ\еs)
1
Таблица
(ТаЬ\е)
2.
Выполните команду Разработчик
и в открывшейся панели Источник
(Developer) 1 XML
Источник (Source)
XML (XML Source) нажмите кнопку Карты
I
XML (XML Maps).
3.
В открывшемся диалоговом окне Карты
XML (XML Maps) нажмите кнопку
(Add), выберите свой файл ProductData.xml и нажмите кнопку От
крыть (Open), чтобы создать новую ХМL-карту, используя исходную схему
данных. Завершите создание карты нажатием кнопки ОК (рис. 18.19).
Добавить
4.
Убедитесь, что на панели Источник
выбрана новая ХМL
XML (XML Source)
карта, а затем перетащите все ее элементы в ячейки или столбцы таблицы
Excel,
с которыми требуется их сопоставить. Так, в нашем примере следует перета
щить элемент <Ti tle> в ячейку А 1, элемент <Name> в заголовок столбца Продукт
(ячейка АЗ), а элемент <Desc> в заголовок столбца Описание (ячейка
успешного сопоставления каждого элемента
Excel
83).
После
меняет формат его шрифта на
жирный.
Карты
□
XML
х
Карты XML !! этой книге :
Имя
Корень
data-set_Map data-set
Пространство имен
< нет
пространства имен >
>
<
Переиr,еновать...
!:._До§.а вить .. .'J
Удалить J
ок
,
Отмена
,1.
Рис.
18.19. Диалоговое
окно Карты
XML,
содержащее ХМL-карту
Выполнив сопоставление каждого элемента, вы сможете использовать его для им
порта и экспорта данных.
Например, чтобы импортировать данные в сопоставляемые ячейки и столбцы таб
лицы
Excel,
на панели Источник
не выбрана),
XML (XML Source) выберите
(Developer)
выполните команду Разработчик
карту ( если она еще
1
XML
I
Импорт
576
Глава
18
(lmport), выделите ХМL-файл, который
файл ProductData.xml) и нажмите кнопку
нужно импортировать (в нашем примере
Импорт
/х
В3
в
"
1 ~---~
2
1
~ liЩiiMN
4
18.20).
Описание
~----,-----~ - с
А
в результате чего Ехсе\
(lmport),
заполнит сопоставляемые ячейки и столбцы таблицы (рис.
Источник
Карты
• lt•i,ШIФ!ti "l
1
:1
а-
Х
----
data-set
ГJtle
8-
record
,--0
в l
V
XML в этой книгr:
data-s,t_Map
7
XML
Name
-0 1:DD
9
Чтобы сопоставить повторяющиrся
10 1
зntмrнты, nrрrтащитr их И3 дtprea на лнn,
11
•
... 0
Рис.
18.20.
:
Панель Источник
◄XML:
rдt допжны бy/1:ff отображаться яrолое.ки
►
элементы ХМL-карты сопоставлены с ячейкой А1
и столбцами таблицы Продукт и Описание
Если служивший источником данных ХМL-файл обновится, обновить данные Ехсе\
будет можно, выделив сопоставляемую ячейку (например, А 1) и выполнив команду
Разработчик
(Developer)
1
XML
I
Обновить данные
нужно обновить все данные, команду Данные
новить все
(Refresh Data), либо,
(Data) 1 (Queries & Connections)
если
1
Об
(Refresh AII).
По умолчанию при обновлении данных или импорте другого ХМL-файла все вне
сенные в таблицу Excel изменения перезаписываются. Чтобы изменить это пове
дение, выполните команду Разработчик (Developer) 1 XML I Сопоставить свойст
ва (Мар Properties) и в разделе Обновление или импорт данных (When refreshing
importing data) открывшегося диалогового окна
(XML Мар Properties) настройте соответственным
ог
Сопоставить свойства XML
образом необходимые пара
метры.
Чтобы экспортировать данные из сопоставляемых ячеек и столбцов таблицы в ка
кой-либо ХМL-файл, на панели Источник ХМL
(XML Source) выберите карту
(Developer) 1 XML 1
(если она еще не выбрана), выполните команду Разработчик
Экспорт
(Export), выберите ХМL-файл, в который нужно экспортировать данные
ProductData.xml), и нажмите кнопку Экспорт (Export), в результате
Excel экспортирует данные, используя сопоставленные ячейки и столбцы таб
(например, файл
чего
лицы для заполнения их ХМL-элементами.
Пояснение
В этом разделе показано, как использовать ХМL-параметры разработчика Ехсе\ для
сопоставления элементов ХМL-файла с ячейками и столбцами таблицы. Как только
они будут сопоставлены, вы сможете импортировать ХМL-данные в эти ячейки или
экспортировать их данные в структурированный соответствующим образом ХМL
файл.
Дальнейшие шаги
Поздравляю вас с прочтением этой книги!
Я надеюсь, что приведенные в ней решения оказались вам полезны и вы открыли
для себя новые приемы и методы
Excel,
которые сможете использовать на практи
ке. Попробуйте поэкспериментировать с ними и применить их в вашем случае, по
скольку это наилучший способ усвоить новые знания.
Хотя мы с вами достигли конца книги, это вовсе не конец путешествия в мир
Компания
Microsoft
Excel.
постоянно добавляет в эту программу новые свойства и функ
ции, и один из способов оставаться в курсе событий
TheExcelCookbook.com.
приемов работы в Excel,
Там
вы
найдете
-
это посещать веб-сайт
дополнительные
советы
и
описания
а также список предстоящих обучающих курсов. Очень
хотелось бы вас там увидеть!
Предметный указатель
3
375
создание видео с помощью
3 78
А
ActiveX,
редактирование настроек и безопасность
◊
сведение столбцов
источника данных
3D-карты
◊
◊
элементы управления
562
◊
создание пользовательских функций
◊
сортировка и фильтрация данных
◊
ссылка на запрос
◊
структурированные столбцы
◊
типы данных
◊
удаление дубликатов, пустых строк
◊
указание места загрузки данных
◊
управление запросами
◊
управление
◊
управление шагами запроса
р
Power Pivot,
и ошибок
надстройка
◊
управление соединениями данных
◊
установка
Power Query,
476
4 73
инструмент
142,425
◊
возвращение значения или списка
◊
добавление данных из нескольких запросов
453
468
◊
добавление настраиваемого столбца
458
◊
добавление новых столбцов
◊
добавление столбца путем вызова
◊
добавление столбцов, основанных на
пользовательской функции
примерах
451
438
442
428
433
столбцами 438
437
SmartArt,
рисунки
365
VBA
455
◊
дублирование отчета
◊
использование параметров
◊
обновление данных
◊
объединение данных из нескольких
◊
467
V
465
добавление условных столбцов
запросов
463
440
5
453
◊
◊
430
449
457
466
◊
исправление ошибок в коде
◊
копирование кода в другой проект
◊
создание пользовательской функции
Visual Basic, редактор 537
460
запроса 432
х
469
ХМL-файлы
отмена сведения столбцов
450
получение и загрузка данных 425
из файлов в папке 427
◊
импорт
◊
экспорт
574
574
0
◊
преобразование данных в столбцах
◊
разделение и объединение столбцов
◊
редактирование запроса
◊
редактирование М-кода запроса
443
447
435
z
Z-значение
471
211
552
551
542
Предметный указатель
580
А
Автозамена
42
Автозаполнение
36
Автосумма
76
Асимметрия 201
Вероятность
◊
расчет
таблица
202
203
◊
рисунков
◊
связанного рисунка
366
◊
символов
уравнений
◊
фигур
370
361
363
557
199
смена режима
104
106
309
г
◊
111
192, 328
интервалы 348
◊
использование рисунков
◊
нормированная
Генерация чисел
Гистограмма
добавление дней, месяцев и лет к дате
добавление часов, минут и секунд ко
160
◊
обработка рабочих дней
◊
получение дня недели и недели года
◊
получение календарного или финансового
◊
получение последовательности дат
получение части значения
◊
преобразование текстового значения
◊
создание
◊
воронкообразная
◊
вставка
152
157
330
333
сводной
357
◊
вторичная круговая
◊
вторичная линейчатая
◊
Ганта
◊
дерево
327
327
358
329
◊
динамические заголовки и метки
◊
добавление и удаление элементов
342
336
задание типов для комбинированной 350
заполненная карта 332
иерархическая 329
изменение имен рядов данных и элементов
353
330
кольцевая 327
легенды
◊
328
◊
каскадная
◊
комбинированная
◊
круговая
◊
332
327
лепестковая 331
на основе динамического именованного
диапазона
Данные
355
ввод с помощью раскрывающегося списка
◊
на основе независимых данных
67
◊
настройка внешнего вида
проверка
65
◊
72
фильтрация 73
◊
форма для ввода
Дата и время
70
151
◊
включение в текст
◊
возвращение текущих
161
165
◊
◊
сортировка
152
153
получение последнего дня месяца
◊
361
◊
158
164
◊
◊
с накоплением нормированный
◊
159
извлечение из порядкового номера
◊
д
◊
163
303
◊
◊
346
328
◊ ,· группировкой 328
◊ с накоплением 328
◊ форматирование 348
График 192, 328
Графика
◊
◊
0
Вычисляемое поле
◊
группировка по дате и времени
162
154, 156
Диаграмма 327
◊ биржевая 330
363
Вычисление формулы
◊
◊
в порядковый номер
Встроенные диалоговые окна
Выброс
вычисление разницы между значениями
квартала
Вставка
◊
вычисление доли года
◊
времени
в
◊
◊
149
151
352
335
343
◊
настройка текста меток
◊
отображение отрицательных значений
◊
Парето
193
◊
поверхностная
◊
пузырьковая
◊
сводная
◊
солнечные лучи
331
330
332
329
346
Предметный указатель
Лямбда-функция
О
статистическая
О
столбчатая
О
типы
О
точечная
О
управление осями и линиями сетки
О
управление пустыми ячейками
329
О
191
330
344
352
фильтрация
фильтрация вторичной круговой
О
шаблон
ящик с усами
337
359
200
Диапазон
данных
198
О
динамический именованный
О
межквартильный
О
присвоение
О
разлива
О
О
вычисление кумулятивных значений
О
копирование пользовательской в другую
О
34 7
форматирование элементов
О
вспомогательная
334
О
написание
5 11
518
О
необязательный аргумент
определение пользовательской
О
применение в каждой строке
О
применение в каждом
О
рекурсивная
О
тестирование
514
515
521
столбце 519
516
512
63
м
Макрос
91
создание косвенных ссьmок на диапазон
О
запись
183
О
запуск
О
личная книга
О
переопределение сочетания клавиш
Дисперсия
198, 204
212
532
536
с помощью
О
з
Заметка
526
5 12
О
198
имени 60
Доверительный интервал
О
527
О
рабочую книгу
О
О
О
возвращение результата кумулятивного
вычисления
327
и линейчатой
581
534
OnKey 54 7
планирование запуска с помощью OnТime
549
43
добавление в числовые формулы
95
и
О
просмотр и редактирование VВА-кода
О
редактирование настроек
537
535
О
создание путем написания УВА-кода
О
удаление
541
550
Массив
Итеративные вычисления
109
к
Квартиль
197
Комбинации
125
Константа, присвоение имени
60
Корреляция
возврат значения с помощью индекса
О
выбор возвращаемых значений
коэффициент
О
матрица
236
О
вычисляемых значений
исправление ошибок в значениях
О
константа
О
логический критерий Истина/Ложь
О
оценка условий И и ИЛИ в формулах
О
235
О
Коэффициент возврата
318
О
115
522
173
174
поиск индекса сопоставимого значения 180
поиск точных и ближайших значений 178
получение уникальных значений 167
предотвращение поведения динамического
О
преобразование
О
146
значений 524
сортировка 168
О
устаревшие формулы
О
фильтрация
0
171
в текст
0
Лента, настройка
48
Линейный регрессионный анализ
Линия наилучшего соответствия
О
поиск
О
уравнение
215
238
91
170
Математические операции
217
176
89
93
л
181
176
О
О
О
Критерии
О
Математическое ожидание
111
204
582
Предметный указатель
Матрица
127
Ошибки
◊
ко вариаций
◊
корреляционная
23 7
235
Мгновенное заполнение
Медиана
Мода
40
194
Модель данных
◊
добавление данных
◊
474
именованные наборы 500
использование КПЭ 492
меры 489
обновление данных 480
◊
преобразование сводной таблицы
◊
в формулы
◊
поиск источников
◊
проверка в таблице
◊
фоновая
473
добавление вычисляемого столбца
◊
в значениях
◊
194
◊
◊
◊
Пакет анализа, надстройка
◊
работа со столбцами таблицы
◊
создание и изменение взаимосвязей
477
480
482
◊
создание иерархии
◊
создание сводной таблицы или диаграммы
496
487
◊
создание таблицы данных
◊
фильтрация формул кубов с помощью
◊
формулы кубов
498
508
505
н
Накопленный процент
190
Настройка параметров безопасности
и конфиденциальности
573
анализ Фурье
◊
генерация корреляционной матрицы
◊
генерация периодической выборки
◊
генерация порядковых номеров
◊
генерация скользящего среднего
◊
генерация случайной выборки
254
генерация частотного распределения
◊
двухвыборочный F-тест для дисперсии
◊
двухвыборочный t-критерий Стьюдента
241
двухвыборочный z-тест
◊
двухфакторный дисперсионный анализ
◊
извлечение случайных чисел
◊
линейный регрессионный анализ
◊
однофакторный дисперсионный анализ
◊
описательная статистика
из распределения
244
25 1
233
238
◊
парный двухвыборочный z-тест
◊
получение матрицы ковариаций
◊
экспоненциальное сглаживание
245
237
229
50
125
Подбор параметров
закрепление
◊
поиск нескольких решений с помощью
368
◊
поиск решения формулы, описывающей
подбора
группировка
изменение размеров
перемещение
395
функцию, не являющуюся непрерывной
369
Подпроцедура
369
Окно контрольного значения
Округление
129
392
75
◊
96
Поиск
k-ro
значения
108
до десятичных разрядов
120
наибольшего или наименьшего
196
Поиск решения
до значащих цифр
настройка параметров
◊
до
◊
нахождение глобального минимума или
◊
до
◊
нахождение нескольких решений
◊
нелинейных задач методом
◊
оптимизация
◊
отображение отчетов
◊
решение проблемы разрывов
122
кратных значений 122
целого 120
Оператор
◊
арифметический
◊
конкатенации текста
◊
сравнения
◊
ссылок
86
86
85
86
396
538
◊
◊
249
220
Побитовые операции
61
◊
◊
224
247
◊
Объекты
◊
227
231
◊
Перестановки
Область
◊
235
233
223
Панель быстрого доступа
о
219
◊
и процентных рангов
504
срезов и временных шкал
1О 1
100
проверка 99
п
485
просмотр таблиц и управление ими
на основе
102
419
максимума формулы с помощью
417
415
ОПГ 402, 417
398
423
413
Предметный указатель
◊
с помощью только двоичных значений
◊
с помощью только целых чисел
◊
с
406
403
создание изменяемых ячеек с разными
Сводная таблица
значениями
◊
41 О
583
187, 285
включение групп с недостающими
данными
307
◊
сохранение и загрузка параметров
◊
сохранение сгенерированных сценариев
◊
восстановление исходных данных
423
◊
вставка
установка надстройки
◊
вычисление значений
эволюционный
◊
группировка по дате и времени
◊
группировка по текстовым значениям
◊
группировка по числу
◊
добавление строк, столбцов и значений
◊
дополнительные строки
◊
изменение агрегации значений
◊
изменение внешнего вида
◊
изменение источника данных
◊
изменение макета по умолчанию
◊
◊
397
402, 413
Пользовательская надстройка
Пользовательский список
Построитель формул
Представление
Примечание
422
Excel 572
38
94
47
43
Проверка
◊
ошибок (фоновая)
◊
ошибок в таблице
Проверка данных
◊
99
100
◊
65
создание правила пользовательской
Промежуточные итоги
Процентиль
77
197
номинальная
◊
эффективная
р
◊
защита
◊
проверка доступности
◊
события
31
51
◊
◊
31 7
использование вычисляемых полей
использование вычисляемых полей
312
использование вычисляемых элементов
◊
использование кеша
◊
использование фильтра для создания
◊
обновление данных
◊
организация данных для сводных таблиц
◊
перемещение
0
545
отображение
531
зависимый
◊
каскадный
68
69
69
биномиальное
0
285
элементов вручную
300
пользовательские промежуточные итоги
сортировка данных
◊
ссылка на значения
299
325
ссылка на местоположение в формуле
вычисляемого элемента
◊
316
уменьшение размера файла рабочей книги
323
Распределение
◊
303
292
292
◊
◊
531
Раскрывающийся список
◊
313
320
298
Разработчик, вкладка
◊
308
309
◊
защита31
события
3 19
294
◊
◊
Рабочий лист
295
293
изменение формата пустых ячеек
546
288
290
нескольких сводных таблиц
Рабочая книга
306
305
для подсчета элементов
264
264
303
◊
◊
Процентная ставка
◊
296
изменение порядка расчета вычисляемого
элемента
67
324
286
205
206
гипергеометрическое
◊
нормальное
◊
209
Пуассона 208
◊
экспоненциальное
фильтрация данных
◊
фильтрация нескольких таблиц,
300
использующих один кеш
отрицательное
◊
◊
207
◊
322
формирование списка пользовательских
формул
319
Система счисления, преобразование
209
364
Рисование, инструмент
Скользящее среднее
228
События
545
371
группа 374
Спарклайн
◊
Специальная вставка
35
128
584
Предметный указатель
Среднее значение, вычисление
Срез
194
◊
80
определение местоположения текста
в строке
Ссьmка
137
◊
повтор символов
◊
подсчет слов и символов
◊
последовательность символов
◊
преобразование массива в текст
145
◊
абсолютная
◊
на диа11азон разлива
◊
на другой рабочий лист
◊
на книгу
◊
разбивка на цифровой и нецифровой
на ячейку
◊
СИМВОЛЬНЫЙ КОД
540
◊
58
53
оператор 86
◊
относительная
◊
смещенная
◊
структурированная
◊
трехмерная
◊
◊
92
58
◊
◊
форматирование в виде валюты
◊
186
81
59
циклическая l 09
абсолютная
у
относительная
Условное форматирование
◊
смешанная
◊
53
54
◊ стиль RlCI 56
Стандартизация 212
Статистический анализ
Стиль ссылок А l
использование ссьmок
198
187
Файл, защита
56
31
Фактор затухания
77
Факториал
Суммирование степенного ряда
124
Сце11арий
Фильтр
230
125
73
Финансовый анализ
◊
генерация сводки
◊
диспетчер
◊
объединение
391
388
390
257
◊
график амортизации кредита с плавающей
◊
достижение инвестиционных целей
◊
использование биржевых диаграмм
ставкой
т
◊
260
79
◊
вероятностей
◊
данных с двумя переменными
◊
данных с одной переменной
◊
дат
◊
редактирование
◊
свободная
203
384
381, 383
включение даты/времени в
◊
включение числовых значений
вставка
замена
получение исторических данных акций
и валют
◊
276
прогнозирование линейного
279
прогнозирование сезонного роста
◊
расчет амортизации
расчет бета-коэффициента акции
◊
расчет будущей стоимости
149
0
266
единовременной инвестиции
с фиксированной ставкой
объединение
◊
определение длины строки
265
инвестиции с регулярными вложениями
267
138
◊
278
единовременной инвестиции
с плавающей ставкой
148
280
273
◊
0
с помощью разделителя
274
◊
142
142
извлечение из строки
0
◊
0
◊
◊
получение данных акций и валют
и экспоненциального роста
285
◊ сводная 187
◊ частот 187
Текст 133
◊
264
◊
498
386
268
276
конвертация номинальной процентной
ставки в реальную
◊
32
55
ф
Стандартное отклонение
Таблица
14 7
54
◊
Структура
141
Тема19
Ссьmка на ячейку
◊
135
146
134
случайная буква 136
смена регистра 145
удаление 142, 143
◊
540
144
139
133
136
◊
расчет внутренней ставки доходности
◊
расчет выплаты процентов и основной
суммы кредита
258
271
Предметный указатель
◊
◊
расчет номинальной или текущей
◊
стоимости
◊
263
расчет платежей по кредитам
◊
с фиксированной процентной ставкой
◊
◊
257
◊
расчет срока для кредита с фиксированной
◊
ставкой
◊
262
расчет чистой приведенной стоимости
Форма
◊
пользовательская
элементы управления
Формат по образцу
568
◊
558
◊
34
◊
Форматирование значения ячейки
Формула
вычисление
◊
◊
◊
◊
269
104
22
◊
SIN 126
SINH 126
ТАКЕ 172
TAN 126
TANH 126
UNICODE 135
АДРЕС 185
АПЛ 273
АСЧ 273
БЗРАСПИС 266
БИНОМ.ОБР 205
БИНОМ.РАСП 205
◊
БИНОМ.РАСП.ДИАП
◊
БИТ
◊
добавление заметки
◊
БИТ.ИЛИ
◊
использование
◊
БИТ.ИСКЛИЛИ
◊
отображение
◊
БИТ.СДВИГЛ
95
85
96
◊
повышение эффективности
◊
построитель
◊
присвоение имени
511
129
129
130
130
◊
БИТ.СДВИГП
◊
БС
◊
ВЕРОЯТНОСТЬ
Функция
◊
восьм.в.дв
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
94
60
ABS 113
ACOS 126
ACOSH 126
ASIN 126
ASINH 126
ATAN 126
ATAN2 126
ATANH 126
BYCOL 519
BYROW 521
cos 126
COSH 126
сот 126
сотн 126
csc 126
CSCH 126
DROP 171
ЕХР 123,218,264
F.TECT 249
LAMBDA 512
LET 512
LN 123,264
LOGl0 124
MAKEARRA У 522
МАР 524
REDUCE 528
SCAN 526
SEC 126
SECH 126
◊
◊
◊
◊
265,267
203
128
ВОСЬМ.В.ДЕС 128
ВОСЬМ.В.ШЕСТН 128
ВПР 179, 181
ВРЕМЯ 156, 160
ВРЕМЯЗНА Ч 157
◊
вед
◊
вставка
◊
ВСТОЛБИК
◊
ВЫБОР
211
94
171
154, 176
◊
ВЫБОРСТОЛБЦ
◊
ВЫБОРСТРОК
171
171
◊
ГИПЕРГЕОМ.Р АСП
◊
год
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
205
129
152, 162
ГПР 180
ГРАДУСЫ 126
ГСТОЛБИК 171
ДАТА 154, 160, 162
ДАТАЗНАЧ 157
ДАТАМЕС 159
дв.в.восьм 128
ДВ.В.ДЕС 128
ДВ.В.ШЕСТН 128
двссыл 68, 183
ДВФАКТР 125
◊
ДДОБ273
◊
ДЕНЬ
◊
ДЕНЬНЕД
◊
ДЕС.В.ВОСЬМ
◊
ДЕС.В.ДВ
152
152
128
128
207
1
585
586
Предметный указатель
1
Функция (прод.)
◊
◊
ДЕС.В.ШЕСТН
◊
128
дисп.в 199, 278
дисп.r 199
ДЛСТР 136, 144
ДОВЕРИТ.НОРМ 213
◊
ДОВЕРИТ.СТЬЮДЕНТ
◊
ДОЛЯГОДА
◊
ЕЛОГИЧ
◊
ЕНД
◊
ЕНЕТЕКСТ
◊
◊
◊
◊
◊
МНИМ.АРГУМЕНТ
◊
МНИМ.ВЕЩ
◊
МНИМ.ДЕЛ
◊
МНИМ.КОРЕНЬ
◊
МНИМ.ПРОИЗВЕД
◊
МНИМ.Р АЗН
◊
МНИМ.СОПРЯЖ
◊
МНИМ.СУММ
◊
МНИМ.ЧАСТЬ
◊
МОБР
◊
МОДА.ИСК
◊
◊
◊
213
162
176
176
МЕСЯЦ
152
142,196
МИНУТЫ 152
МНИМ.АВS 130
MHИM.LN 131
MHИM.SIN 131
◊
мин
◊
176
ЕНЕЧЁТ 176
ЕОШ 176
ЕОШИБКА 176
ЕПУСТО 176
ЕСЛИ 109, 173
ЕСЛИМН 173
◊
ЕСЛИОШИБКА
◊
ЕСНД
176
◊
◊
◊
◊
176
ЕТЕКСТ 176
ЕФОРМУЛА 176
ЕЧЁТ 176
ЕЧИСЛО 67, 176
ЗАМЕНИТЬ 142
◊
ИЗОБРАЖЕНИЕ
◊
ИНДЕКС
◊
ИСТОРИЯАКЦИЙ 276
◊
НОД
◊
КВАРТИЛЬ.ВКЛ
◊
нок
◊
НОМИНАЛ264
◊
НОМНЕДЕЛИ
◊
НОРМ.ОБ?
◊
197
КВАРТИЛЬ.ИСКЛ 197
КОВАРИАЦИЯ.В 238, 278
кодсимв 135
КОМПЛЕКСН 130
КОНМЕСЯЦА 161
КОРЕНЬ 103, 123
КОРРЕЛ 236
КПЕР 262, 268
КУБМНОЖ 506
КУБПОРЭЛЕМЕНТ 506
КУБЧИСЛОЭЛМНОЖ 506
КУБЭЛЕМЕНТ 506
КУБЭЛЕМЕНТКИП 507
ЛЕВСИМВ 138
ЛИНЕЙН 217
МАКС 196
МАССИВВТЕКСТ 146
◊
МВСД272
◊
МЕДИАНА
◊
МЕДИН
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
176
ЕССЫЛКА
127
194
131
130
130
130
130
127
◊
◊
НЕ67
◊
НЕЧЁТ 122
◊
◊
◊
63, 181
131
194
194
МОПРЕД 127
МУЛЬТИНОМ 125
МУМНОЖ 127
НАИБОЛЬШИЙ 90, 196
НАИМЕНЬШИЙ 196
НАЙТИ 137
НАКЛОН 217,278
◊
◊
367
130
130
131
МОДА.ОДН
119
118
◊
153
21 О
НОРМ.РАСП 210
НОРМ.СТ.РАСП 212
НОРМАЛИЗАЦИЯ 212
ОБЩДОХОД 259
◊
ОБЩПЛАТ259
◊
ОБЪЕДИНИТЬ
◊
◊
◊
◊
134
120
ОКРВНИЗ.МАТ 121
ОКРУГЛ 108, 120
ОКРУГЛВВЕРХ 120, 153
ОКРУГЛВНИЗ 121
ОКРУГЛТ 122
◊
◊
◊
◊
◊
ОКРВВЕРХ.МА Т
◊
ОСПЛТ259
◊
ОСТАТ
◊
ОТБР
◊
ОТРБИНОМ.Р АСП
◊
ОТРЕЗОК
119,163
121
217
206
Предметный указатель
◊
ПЕРЕКЛЮЧ
◊
СОРТ
ПЕРЕСТ
◊
СОРТПО
◊
177
125
ПЕЧСИМВ 143
пи 126
плт 257
ПОВТОР 145
ПОДСТАВИТЬ 142
поиск 137
поискпоз 180
поискпозх 180
◊
ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.
◊
ТАБЛИЦЫ
◊
ПОСЛЕД
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
168
168
89, 114, 194
СРЗНА ЧЕСЛИ 115
СРЗНА ЧЕСЛИМН 116
СТАВКА 262
СТАНДОТКЛОН.В 199
СТАНДОТКЛОН.Г 199
СТЕПЕНЬ 123
СТОЛБЕЦ 185
СТРОКА 185
СТРОЧН 145
СТЬЮДЕНТ.РАСП 213
СТЬЮДЕНТ.ТЕСТ 243
СУММ 53, 76, 103, 113
СУММЕСЛИ 115
СУММЕСЛИМН 116
СУММКВ 117
СУММКВР АЗН 117
СУММПРОИЗВ 118, 175,194,204,404
СУММР АЗНКВ 117
СУММСУММКВ 117
СЦЕП 133
СЧЁТ 114,118,119, 124
СЧЁТЕСЛИ 115
СЧЁТЕСЛИМН 116
СЧЁТЗ 114
СЧИТ А ТЬПУСТОТЫ 114
ТДАТА 151,459
ТЕКСТ 112, 147
ТЕКСТДО 139
ТЕКСТПОСЛЕ 140
ТЕНДЕНЦИЯ 279, 280
ТРАНСП 127
тригонометрическая 126
УНИК 167
УРЕЗСРЕДНЕЕ 194
СРЗНАЧ
◊
325
112, 135, 165
ПОСТОЛБЦ 172
ПОСТРОК 172
ПРАВСИМВ 138
ПРЕДСКАЗ 281
ПРОПИСН 145
ПРОПНАЧ 145
ПРОСМОТРХ 103,178,179
ПРОЦЕНТИЛЬ.ВКЛ 197
ПРОЦЕНТИЛЬ.ИСКЛ 197
ПРОЦЕНТРАНГ.ВКЛ 196
ПРОЦЕНТРАНГ.ИСКЛ 196
ПРОЦПЛА Т 259
ПРПЛТ 259
пс 263
ПСТР 138
ПУАССОН.РАСП 208
ПУО 274
РАБДЕНЬ 164
Р АБДЕНЬ.МЕЖД 164
РАДИАНЫ 126
РАЗНДАТ 163
РАНГ.РВ 195
РАНГ.СР 195
◊
РУБЛЬ147
◊
◊
РЯД.СУММ
◊
Ф.ТЕКСТ96
◊
ФАКТР
◊
ФИКСИРОВАННЫЙ 148
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
124
СЕГОДНЯ 96, 151
СЕКУНДЫ 152
СЖПРОБЕЛЫ 143
символ 134, 135
скос 202
скос.г 202
СЛМАССИВ 111
СЛУЧМЕЖДУ 111, 136
слчис 111
СМЕЩ 63,186
СОВПАД 144
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
◊
125
◊
ФИЛЬТР
◊
ФУО
116, 170
273
◊
ХИ2.ОБР
◊
ХИ2.ОБРЛХ
◊
ХИ2.РАСП
◊
◊
◊
◊
1
215
215
215
ХИ2.РАСПЛХ 215
ХИ2.ТЕСТ 215
ЦЕЛОЕ 121, 159
Ч 95
587
588
Предметный указатель
Функция (прод.)
◊
ЧАС
152
◊
логарифм
◊
округление
123
120
перемножение 118
◊
ЧАСТНОЕ
◊
ЧАСТОТА
◊
преобразование булева значения
◊
ЧЁТН 122
◊
преобразование текста в число
◊
ЧИСЛКОМБ
ранжирование
◊
степень
◊
125
168
чиствндох 271
чистнз 270
ЧИСТРАБДНИ 164
◊
ЧИСЛСТОЛБ
◊
ЧИСТРАБДНИ.МЕЖД
◊
чпс
◊
◊
◊
◊
119
188
◊
ЧСТРОК
ШЕСТН.В.ВОСЬМ
◊
ШЕСТН.В.ДВ
◊
195
123
ш
Шаблон, создание
164
29
270
◊
◊
112
112
э
168
128
◊
ЭФФЕКТ264
◊
юнисимв
Элементы управления формы
я
135
Ячейка
х
Хн-квадрат
230
558
Экспоненциальное сглаживание
128
ШЕСТН.В.ДЕС 128
ЭКСП.РАСП 209
214
ч
Частота
◊
автозамена
◊
автозаполнение
◊
выделение
◊
защита
◊
извлечение адреса
◊
мгновенное заполнение
◊
объединение
42
36
45
31
185
40
28
◊
встречаемости значения
◊
отображение взаимозависимостей
◊
накопленная
◊
перемещение по ячейке
◊
процентная
◊
подсчет значений
◊
поиск
187
190
190
Число
пользовательский числовой формат
◊
присвоение имени
генерация
◊
создание косвенных ссылок
группировка
◊
ссылка на ячейку
выяснение абсолютного значения
◊
выяснение знака
◊
113
◊
111
305
деление 119
квадрат 1 16
◊
квадратный корень
◊
комплексное
◊
кратное
◊
114
45
◊
◊
◊
98
45
118
130
123
113
60
◊
суммирование значений
◊
условное форматирование
◊
усреднение значений
◊
форматирование
0
значения
22
183
53
22
114
32
114
24
Об авторе
Дон
Гриффнтс
- разработчик программного обеспечения, основатель сайта
TheExcelCookbook.com, автор и соавтор нескольких книг, включая «Head First
Statistics», «Head First Android Development», «Head First Kotlin», «Head First С» и
«React Cookbook». Дон также внесла свой вклад в написание книги «97 Things
Every Java Programmer Should Know» и вместе со своим мужем Дэвидом разработа
ла анимированный видеокурс The Agile Sketchpad.
Дон обучила работе с
Excel
тысячи студентов по всему миру и регулярно проводит
онлайн-занятия на обучающей платформе
найдете по адресу
O'Reilly. Список
TheExcelCookbook.com/training.
предстоящих курсов вы
Об изображении на обложке
На обложке этой книги изображен пурпурный сухопутный краб
(Gecarcinus ruricola).
Он также известен как черный сухопутный краб, красный сухопутный краб или
краб-зомби,
-
эти наземные крабы обитают на островах Карибского бассейна от
запада Кубы до Барбадоса.
Типичная самка этого вида может вынашивать до
тыс. оплодотворенных яиц,
85
которые она откладывает в море. Личинки крабов вылупляются в море и проходят
в нем несколько личиночных стадий, прежде чем вернуться на сушу, где живут
группами в норах. Зрелости крабы достигают к пяти годам, а живут около
1О лет.
Пурпурный краб считается самым наземным из сухопутных крабов, живущих на
островах Карибского бассейна, и часто встречается на высокогорьях, значительно
удаленных от моря. Приспособиться к жизни на суше этим крабам отчасти помогла
способность накапливать воду в своем теле, кроме этого, они ведут ночной образ
жизни, что дает им возможность избежать высыхания на солнце. Их любопытной
особенностью является специальная почечная пластинка, на которую они выделяют
отходы свой жизнедеятельности, которые после очистки бактериями вновь всасы
ваются в их организм.
Международный союз охраны природы мониторинг пурпурных сухопутных крабов
не проводил. Как и все представители животного мира, изображенные на обложках
книг издательства
O'Reilly,
Представленную
на
они жизненно важны для нашей планеты.
обложке
книги
иллюстрацию
создала Карен
(Karen Montgomery) по мотивам старинной гравюры из
Animated Nature» ( «Музей изобразительных искусств
книги
Монтгомери
«Pictorial Museum of
живой природы»). Дизайн
серии разработан Эди Фридманом, Элли Волкхаузен и Карен Монтгомери.
Дон Гриффитс
Excel.
Сборник рецептов
Перевод с английского М. Райтмана
ТОО"АЛИсr·
Республика Казахстан,
г. Астана, пр. Сарыарка, д. 17, ВП
010000,
Подписано в печать
30
05.11.25.
Формат 70х100 1 / 16 . Печать офсетная. Усл. печ. л. 47,73.
Тираж
1500 экз.
Заказ №
16025.
Отпечатано с готового оригинал-макета
ООО "Принт-М",
142300,
РФ, М.О., г. Чехов, ул. Полиграфистов, д.