При рассмотрении ограничений сводных таблиц следует учесть, что начиная с версии Microsoft Excel 2007 увеличено количество строк и столбцов, включаемых в рабочий лист. Это позволяет говорить о поддержке больших объемов данных при управлении сводными таблицами. Увеличение размера рабочего листа приводит к расширению функциональных возможностей многих функций и команд программы, а заодно и области применения сводных таблиц.
В табл. 1.1 показаны изменения в ограничениях, характерных для программ Excel, выпушенных с 2000 по 2010 год. Некоторые ограничения остались неизменными, но все же большая их часть определяется исключительно объемом установленной в системе оперативной памяти.
Таблица 1.1. Ограничения на применение сводных таблиц
Категория | Excel 2000 | Excel 2002/2003 | Excel 2007/2010 |
---|---|---|---|
Количество полей строк (ограничивается объемом оперативной памяти) | Ограничивается объемом оперативной памяти | Ограничивается объемом оперативной памяти | 1 048 576 (может ограничиваться объемом доступной оперативной памяти) |
Количество полей столбцов | 256 | 256 | 16384 |
Количество полей страниц | 256 | 256 | 16384 |
Количество полей данных | 256 | 256 | 16384 |
Количество уникальных элементов в одном поле | 8 000 | 32 500 | 1 048 576 (может ограничиваться объемом доступной оперативной памяти) |
Количество вычисляемых элементов | Ограничивается объемом оперативной памяти | Ограничивается объемом оперативной памяти | Ограничивается объемом оперативной памяти |
Количество отчетов сводной таблицы на одном рабочем листе | Ограничивается объемом оперативной памяти | Ограничивается объемом оперативной памяти | Ограничивается объемом оперативной памяти |
Технические характеристики и ограничения листа и книги
Параметр |
Максимальное значение |
---|---|
Количество открытых книг |
Ограничено объемом доступной оперативной памяти и ресурсами системы |
Общее количество строк и столбцов на листе |
1 048 576 строк и 16 384 столбца |
Ширина столбца |
255 знаков |
Высота строки |
409 пунктов |
Разрывы страниц |
1 026 горизонтальных и вертикальных |
Общее количество знаков в ячейке |
32 767 знаков |
Число знаков в верхнем и нижнем колонтитуле |
255 |
Максимальное число переводов строки в ячейке |
253 |
Количество листов в книге |
Ограничено объемом доступной оперативной памяти (по умолчанию 1 лист) |
Количество цветов в книге |
16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру) |
Именованные представления в книге |
Ограничено объемом доступной оперативной памяти |
Количество уникальных форматов/стилей ячеек |
65 490 |
Количество стилей заливки |
256 |
Количество стилей и толщин линий |
256 |
Количество уникальных шрифтов |
1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге |
Количество численных форматов в книге |
От 200 до 250, в зависимости от установленной языковой версии Excel |
Количество имен в книге |
Ограничено объемом доступной оперативной памяти |
Количество окон в книге |
Ограничено объемом доступной оперативной памяти |
Гиперссылки на листе |
65 530 |
Количество областей в окне |
4 |
Количество связанных листов |
Ограничено объемом доступной оперативной памяти |
Сценарии |
Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого |
Количество изменяемых ячеек в сценарии |
32 |
Количество вычисляемых ячеек в надстройке «Поиск решения» |
200 |
Количество пользовательских функций |
Ограничено объемом доступной оперативной памяти |
Пределы масштабирования |
от 10 до 400 процентов |
Количество отчетов |
Ограничено объемом доступной оперативной памяти |
Количество ссылок для сортировки |
64 для однократной сортировки; не ограничено для последовательных сортировок |
Количество уровней отмены |
100 |
Количество полей в форме данных |
32 |
Количество параметров в книге |
255 параметров в одной книге |
Количество элементов, которые отображаются в раскрывающихся списках фильтров |
10 000 |
Количество независимых ячеек, которые можно выделить |
2 147 483 648 ячеек |
Максимальные пределы объема памяти и размера файла для книг с моделями данных |
В 32-разрядной среде выделяется 2 гигабайта (ГБ) виртуального адресного пространства, которое совместно используется приложением Excel, книгой и надстройками, работающими в рамках одного процесса. Доля адресного пространства, выделяемого для модели данных, может достигать 500–700 мегабайт (МБ), но может быть и меньше, если загружаются другие модели данных и надстройки. 64-разрядная среда не накладывает жестких ограничений на размер файлов. Размер книги ограничен только объемом доступной памяти и ресурсами системы. Начиная с Excel 2016 функция обработки больших адресов позволяет 32-разрядной версии Excel использовать в два раза больше памяти при работе в 64-разрядной операционной системе Windows. Дополнительные сведения см. в статье Изменение функции обработки больших адресов для Excel. Примечание: Добавление таблиц в модели данных увеличивает размер файла. Если вы не планируете создавать для модели данных сложные связи с использованием большого количества источников и типов данных в книге, во время импорта или создания таблиц, сводных таблиц или подключений к данным снимите флажок Добавить эти данные в модель данных. Подробнее см. в статье Спецификации и ограничения модели данных. |
Количество ядер процессора |
64 |
Длина имени файла |
218 символов, включая путь к файлу. Например, C:UsernameDocumentsFileName.xlsx. |
Технические характеристики и ограничения вычислений
Параметр |
Максимальное значение |
---|---|
Точность представления чисел, разрядов, не более |
15 |
Допустимое отрицательное число, не менее |
-2,2251E+308 |
Допустимое положительное число, не менее |
2,2251E-308 |
Допустимое положительное число, не более |
9,99999999999999E+307 |
Допустимое отрицательное число, не более |
-9,99999999999999E+307 |
Наибольшее положительное число, получаемое в формуле |
1,7976931348623158E+308 |
Наибольшее отрицательное число, получаемое в формуле |
-1,7976931348623158E+308 |
Длина записи формулы, знаков, не более |
8 192 |
Внутренняя длина формулы, байт, не более |
16 384 байт |
Количество итераций, не более |
32 767 |
Количество массивов в книге |
Ограничено объемом доступной оперативной памяти |
Количество выделенных диапазонов, не более |
2 048 |
Количество аргументов функции, не более |
255 |
Количество уровней вложенности функций, не более |
64 |
Количество категорий пользовательских функций, не более |
255 |
Количество доступных функций листа Microsoft Excel, не более |
341 |
Размер стека операндов, не более |
1 024 |
Перекрестная зависимость листов, не более |
64 000 листов, которые могут ссылаться на другие листы |
Перекрестная зависимость формул массива на разных листах |
Ограничена объемом доступной оперативной памяти |
Зависимость областей |
Ограничена объемом доступной оперативной памяти |
Зависимость областей на каждом листе |
Ограничена объемом доступной оперативной памяти |
Зависимости одной ячейки, не более |
4 миллиарда формул, зависящих от одной ячейки |
Длина содержимого связанной ячейки из закрытых книг, не более |
32 767 |
Допустимая в расчетах дата, не ранее |
1 января 1900 г. (1 января 1904 г. для системы дат 1904) |
Допустимая в расчетах дата, не позднее |
31 декабря 9999 г. |
Интервал времени, который можно ввести, не более |
9999:59:59 |
Технические характеристики и ограничения диаграмм
Параметр |
Максимальное значение |
---|---|
Количество диаграмм, связанных с листом |
Ограничено объемом доступной оперативной памяти |
Количество листов, на которые ссылается диаграмма |
255 |
Ряды данных в диаграмме |
255 |
Количество точек данных в одном ряду данных для плоских диаграмм |
Ограничено объемом доступной оперативной памяти |
Количество элементов данных в одном ряду данных для объемных диаграмм |
Ограничено объемом доступной оперативной памяти |
Количество элементов данных во всех рядах данных одной диаграммы |
Ограничено объемом доступной оперативной памяти |
Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм
Параметр |
Максимальное значение |
---|---|
Отчеты сводных таблиц на листе |
Ограничено объемом доступной оперативной памяти |
Количество уникальных элементов в поле |
1 048 576 |
Количество полей строк или столбцов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчете сводной таблицы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной таблицы |
256 |
Количество формул вычисляемых элементов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчет сводной диаграммы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной диаграммы |
256 |
Количество формул вычисляемых элементов в отчете сводной диаграммы |
Ограничено объемом доступной оперативной памяти |
Длина имени MDX элемента сводной таблицы |
32 767 |
Длина строки реляционной сводной таблицы |
32 767 |
Количество элементов, которые отображаются в раскрывающихся списках фильтров |
10 000 |
Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»
Если для книги включен параметр Разрешить изменять файл нескольким пользователям одновременно…, тогда необходимо применять следующие сведения. Чтобы получить доступ к этому параметру, на вкладке Рецензирование нажмите кнопку Доступ к книге. Примечание. В последних версиях Excel кнопка Доступ к книге скрыта. Чтобы отобразить ее, откройте вкладку Файл и выберите пункт Параметры, а затем — категорию Панель быстрого доступа. Откройте список Выбрать команды из и выберите пункт Все команды. Прокрутите список до пункта Общий доступ к книге (старые версии). Выберите этот пункт и нажмите кнопку Добавить. Нажмите кнопку ОК. Кнопка Доступ к книге появится в верхней части окна Excel.
Параметр |
Максимальное значение |
---|---|
Количество пользователей, которые могут одновременно открывать файл |
256 |
Количество личных представлений в книге |
Ограничено объемом доступной оперативной памяти |
Количество дней, поддерживаемое журнал изменений |
32 767 (по умолчанию 30 дней) |
Наибольшее количество одновременно объединяемых книг |
Ограничено объемом доступной оперативной памяти |
Количество ячеек, которые можно выделить |
32 767 |
Наибольшее количество цветов для обозначения изменений, вносимых разными пользователями, при включенном режиме цветового выделения изменений |
32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом) |
Количество таблиц Excel в книге |
0 (ноль) Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно… |
Технические характеристики и ограничения листа и книги
Параметр |
Максимальное значение |
---|---|
Количество открытых книг |
Ограничено объемом доступной оперативной памяти и ресурсами системы |
Общее количество строк и столбцов на листе |
1 048 576 строк и 16 384 столбца |
Ширина столбца |
255 знаков |
Высота строки |
409 пунктов |
Разрывы страниц |
1 026 горизонтальных и вертикальных |
Общее количество знаков в ячейке |
32 767 знаков |
Число знаков в верхнем и нижнем колонтитуле |
255 |
Максимальное число переводов строки в ячейке |
253 |
Количество листов в книге |
Ограничено объемом доступной оперативной памяти (по умолчанию 3 листа) |
Количество цветов в книге |
16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру) |
Именованные представления в книге |
Ограничено объемом доступной оперативной памяти |
Количество уникальных форматов/стилей ячеек |
65 490 |
Количество стилей заливки |
256 |
Количество стилей и толщин линий |
256 |
Количество уникальных шрифтов |
1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге |
Количество численных форматов в книге |
От 200 до 250, в зависимости от установленной языковой версии Excel |
Количество имен в книге |
Ограничено объемом доступной оперативной памяти |
Количество окон в книге |
Ограничено объемом доступной оперативной памяти |
Гиперссылки на листе |
65 530 гиперссылок |
Количество областей в окне |
4 |
Количество связанных листов |
Ограничено объемом доступной оперативной памяти |
Сценарии |
Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого |
Количество изменяемых ячеек в сценарии |
32 |
Количество вычисляемых ячеек в надстройке «Поиск решения» |
200 |
Количество пользовательских функций |
Ограничено объемом доступной оперативной памяти |
Пределы масштабирования |
от 10 до 400 процентов |
Количество отчетов |
Ограничено объемом доступной оперативной памяти |
Количество ссылок для сортировки |
64 для однократной сортировки; не ограничено для последовательных сортировок |
Количество уровней отмены |
100 |
Количество полей в форме данных |
32 |
Количество параметров в книге |
255 параметров в одной книге |
Количество элементов, которые отображаются в раскрывающихся списках фильтров |
10 000 |
Количество независимых ячеек, которые можно выделить |
2 147 483 648 ячеек |
Количество ядер процессора |
64 |
Технические характеристики и ограничения вычислений
Параметр |
Максимальное значение |
---|---|
Точность представления чисел, разрядов, не более |
15 |
Допустимое отрицательное число, не менее |
-2,2251E+308 |
Допустимое положительное число, не менее |
2,2251E-308 |
Допустимое положительное число, не более |
9,99999999999999E+307 |
Допустимое отрицательное число, не более |
-9,99999999999999E+307 |
Наибольшее положительное число, получаемое в формуле |
1,7976931348623158E+308 |
Наибольшее отрицательное число, получаемое в формуле |
-1,7976931348623158E+308 |
Длина записи формулы, знаков, не более |
8 192 |
Внутренняя длина формулы, байт, не более |
16 384 байт |
Количество итераций, не более |
32 767 |
Количество массивов в книге |
Ограничено объемом доступной оперативной памяти |
Количество выделенных диапазонов, не более |
2 048 |
Количество аргументов функции, не более |
255 |
Количество уровней вложенности функций, не более |
64 |
Количество категорий пользовательских функций, не более |
255 |
Количество доступных функций листа Microsoft Excel, не более |
341 |
Размер стека операндов, не более |
1 024 |
Перекрестная зависимость листов, не более |
64 000 листов, которые могут ссылаться на другие листы |
Перекрестная зависимость формул массива на разных листах |
Ограничена объемом доступной оперативной памяти |
Зависимость областей |
Ограничена объемом доступной оперативной памяти |
Зависимость областей на каждом листе |
Ограничена объемом доступной оперативной памяти |
Зависимости одной ячейки, не более |
4 миллиарда формул, зависящих от одной ячейки |
Длина содержимого связанной ячейки из закрытых книг, не более |
32 767 |
Допустимая в расчетах дата, не ранее |
1 января 1900 г. (1 января 1904 г. для системы дат 1904) |
Допустимая в расчетах дата, не позднее |
31 декабря 9999 г. |
Интервал времени, который можно ввести, не более |
9999:59:59 |
Технические характеристики и ограничения диаграмм
Параметр |
Максимальное значение |
---|---|
Количество диаграмм, связанных с листом |
Ограничено объемом доступной оперативной памяти |
Количество листов, на которые ссылается диаграмма |
255 |
Ряды данных в диаграмме |
255 |
Количество точек данных в одном ряду данных для плоских диаграмм |
Ограничено объемом доступной оперативной памяти |
Количество элементов данных в одном ряду данных для объемных диаграмм |
Ограничено объемом доступной оперативной памяти |
Количество элементов данных во всех рядах данных одной диаграммы |
Ограничено объемом доступной оперативной памяти |
Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм
Параметр |
Максимальное значение |
---|---|
Отчеты сводных таблиц на листе |
Ограничено объемом доступной оперативной памяти |
Количество уникальных элементов в поле |
1 048 576 |
Количество полей строк или столбцов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчете сводной таблицы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной таблицы |
256 |
Количество формул вычисляемых элементов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчет сводной диаграммы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной диаграммы |
256 |
Количество формул вычисляемых элементов в отчете сводной диаграммы |
Ограничено объемом доступной оперативной памяти |
Длина имени MDX элемента сводной таблицы |
32 767 |
Длина строки реляционной сводной таблицы |
32 767 |
Количество элементов, которые отображаются в раскрывающихся списках фильтров |
10 000 |
Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»
Если для книги включен параметр Разрешить изменять файл нескольким пользователям одновременно…, тогда необходимо применять следующие сведения. Чтобы получить доступ к этому параметру, на вкладке Рецензирование нажмите кнопку Доступ к книге.
Параметр |
Максимальное значение |
---|---|
Количество пользователей, которые могут одновременно открывать файл |
256 |
Количество личных представлений в книге |
Ограничено объемом доступной оперативной памяти |
Количество дней, поддерживаемое журнал изменений |
32 767 (по умолчанию 30 дней) |
Наибольшее количество одновременно объединяемых книг |
Ограничено объемом доступной оперативной памяти |
Количество ячеек, которые можно выделить в общей книге |
32 767 |
Наибольшее количество цветов для обозначения изменений, вносимых разными пользователями, при включенном режиме цветового выделения изменений |
32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом) |
Количество таблиц Excel в книге |
0 (ноль) Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно… |
Технические характеристики и ограничения листа и книги
Параметр |
Максимальное значение |
---|---|
Количество открытых книг |
Ограничено объемом доступной оперативной памяти и ресурсами системы |
Общее количество строк и столбцов на листе |
1 048 576 строк и 16 384 столбца |
Ширина столбца |
255 знаков |
Высота строки |
409 пунктов |
Разрывы страниц |
1 026 горизонтальных и вертикальных |
Общее количество знаков в ячейке |
32 767 знаков |
Число знаков в верхнем и нижнем колонтитуле |
255 |
Максимальное число переводов строки в ячейке |
253 |
Количество листов в книге |
Ограничено объемом доступной оперативной памяти (по умолчанию 3 листа) |
Количество цветов в книге |
16 миллионов цветов (32-битовый спектр с полным доступом к 24-битовому спектру) |
Именованные представления в книге |
Ограничено объемом доступной оперативной памяти |
Количество уникальных форматов/стилей ячеек |
65 490 |
Количество стилей заливки |
256 |
Количество стилей и толщин линий |
256 |
Количество уникальных шрифтов |
1 024 доступных глобальных шрифта; 512 шрифтов в каждой книге |
Количество численных форматов в книге |
От 200 до 250, в зависимости от установленной языковой версии Excel |
Количество имен в книге |
Ограничено объемом доступной оперативной памяти |
Количество окон в книге |
Ограничено объемом доступной оперативной памяти |
Гиперссылки на листе |
65 530 гиперссылок |
Количество областей в окне |
4 |
Количество связанных листов |
Ограничено объемом доступной оперативной памяти |
Сценарии |
Ограничено объемом доступной оперативной памяти; в итоговый отчет включается 251 сценарий, начиная с первого |
Количество изменяемых ячеек в сценарии |
32 |
Количество вычисляемых ячеек в надстройке «Поиск решения» |
200 |
Количество пользовательских функций |
Ограничено объемом доступной оперативной памяти |
Пределы масштабирования |
от 10 до 400 процентов |
Количество отчетов |
Ограничено объемом доступной оперативной памяти |
Количество ссылок для сортировки |
64 для однократной сортировки; не ограничено для последовательных сортировок |
Количество уровней отмены |
100 |
Количество полей в форме данных |
32 |
Количество параметров в книге |
255 параметров в одной книге |
Количество раскрывающихся списков в фильтре |
10 000 |
Технические характеристики и ограничения вычислений
Параметр |
Максимальное значение |
---|---|
Точность представления чисел, разрядов, не более |
15 |
Допустимое отрицательное число, не менее |
-2,2251E+308 |
Допустимое положительное число, не менее |
2,2251E-308 |
Допустимое положительное число, не более |
9,99999999999999E+307 |
Допустимое отрицательное число, не более |
-9,99999999999999E+307 |
Наибольшее положительное число, получаемое в формуле |
1,7976931348623158E+308 |
Наибольшее отрицательное число, получаемое в формуле |
-1,7976931348623158E+308 |
Длина записи формулы, знаков, не более |
8 192 |
Внутренняя длина формулы, байт, не более |
16 384 байт |
Количество итераций, не более |
32 767 |
Количество массивов в книге |
Ограничено объемом доступной оперативной памяти |
Количество выделенных диапазонов, не более |
2 048 |
Количество аргументов функции, не более |
255 |
Количество уровней вложенности функций, не более |
64 |
Количество категорий пользовательских функций, не более |
255 |
Количество доступных функций листа Microsoft Excel, не более |
341 |
Размер стека операндов, не более |
1 024 |
Перекрестная зависимость листов, не более |
64 000 листов, которые могут ссылаться на другие листы |
Перекрестная зависимость формул массива на разных листах |
Ограничена объемом доступной оперативной памяти |
Зависимость областей |
Ограничена объемом доступной оперативной памяти |
Зависимость областей на каждом листе |
Ограничена объемом доступной оперативной памяти |
Зависимости одной ячейки, не более |
4 миллиарда формул, зависящих от одной ячейки |
Длина содержимого связанной ячейки из закрытых книг, не более |
32 767 |
Допустимая в расчетах дата, не ранее |
1 января 1900 г. (1 января 1904 г. для системы дат 1904) |
Допустимая в расчетах дата, не позднее |
31 декабря 9999 г. |
Интервал времени, который можно ввести, не более |
9999:59:59 |
Технические характеристики и ограничения диаграмм
Параметр |
Максимальное значение |
---|---|
Количество диаграмм, связанных с листом |
Ограничено объемом доступной оперативной памяти |
Количество листов, на которые ссылается диаграмма |
255 |
Ряды данных в диаграмме |
255 |
Количество точек данных в одном ряду данных для плоских диаграмм |
32 000 |
Количество элементов данных в одном ряду данных для объемных диаграмм |
4 000 |
Количество элементов данных во всех рядах данных одной диаграммы |
256 000 |
Технические характеристики и ограничения отчетов сводных таблиц и сводных диаграмм
Параметр |
Максимальное значение |
---|---|
Отчеты сводных таблиц на листе |
Ограничено объемом доступной оперативной памяти |
Количество уникальных элементов в поле |
1 048 576 |
Количество полей строк или столбцов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчете сводной таблицы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной таблицы |
256 |
Количество формул вычисляемых элементов в отчете сводной таблицы |
Ограничено объемом доступной оперативной памяти |
Количество фильтров отчета в отчет сводной диаграммы |
256 (может быть ограничено объемом доступной оперативной памяти) |
Количество полей значений в отчете сводной диаграммы |
256 |
Количество формул вычисляемых элементов в отчете сводной диаграммы |
Ограничено объемом доступной оперативной памяти |
Длина имени MDX элемента сводной таблицы |
32 767 |
Длина строки реляционной сводной таблицы |
32 767 |
Книги с включенным параметром «Разрешить изменять файл нескольким пользователям одновременно…»
Если для книги включен параметр Разрешить изменять файл нескольким пользователям одновременно…, тогда необходимо применять следующие сведения. Этот параметр включен при использовании общих книг.
Параметр |
Максимальное значение |
---|---|
Количество пользователей, которые могут одновременно открывать книгу |
256 |
Количество личных представлений в книге |
Ограничено объемом доступной оперативной памяти |
Количество дней, поддерживаемое журнал изменений |
32 767 (по умолчанию 30 дней) |
Наибольшее количество одновременно объединяемых книг |
Ограничено объемом доступной оперативной памяти |
Количество ячеек, которые можно выделить |
32 767 |
Наибольшее количество цветов для обозначения изменений, вносимых разными пользователями, при включенном режиме цветового выделения изменений |
32 (каждому пользователю соответствует свой цвет; изменения текущего пользователя выделяются темно-синим цветом) |
Количество таблиц Excel в книге |
0 (ноль) Примечание: Для книги, содержащей одну или несколько таблиц Excel, невозможно включить параметр Разрешить изменять файл нескольким пользователям одновременно… |
К началу страницы
Содержание
- Как построить сводную таблицу в Excel
- Что такое сводная таблица
- Подготавливаем данные для построения сводной таблицы
- Как построить сводную таблицу в Excel из обычной таблицы
- Где найти панель редактирования сводной таблицы
- Как изменить структуру сводной таблицы
- Как удалить поле сводной таблицы
- Для чего нужно поле Фильтр в сводной таблице
- Как обновить сводную таблицу
- Как изменить внешний вид (формат) сводной таблицы
- Значение (пусто) в сводной таблице — как убрать
- Где изменить источник сводной таблицы
- Как скопировать сводную таблицу
- Удаляем сводную таблицу
Как построить сводную таблицу в Excel
Сводные таблицы используются как основной инструмент отчетности, без их понимания нельзя сказать, что вы знаете Excel. В этой статье узнаем, как построить сводную таблицу в Excel.
Что такое сводная таблица
Сводная таблица в Excel (или pivit table, или “пивотная таблица”) — это особым образом организованная и структурированная таблица, которая выводит данные в нужном пользователю разрезе и производит необходимые вычисления без использования формул.
Например, у нас есть база данных с продажами магазина для садоводов. В ней собрана информация обо всех продажах, детализированная до каждого кассового чека. Это огромная таблица с большим количеством строк, из которой невозможно взять какую-то ценную аналитическую информацию.
Предположим, нужна информация о сумме выручки в разрезе категории товара. Или по месяцам. Конечно, можно взять все категории товара и функцией СУММЕСЛИМН вытянуть нужные данные, но это займет намного больше времени. К тому же, если у вас завтра появится новая категория, ее нужно будет вручную добавить в таблицу (не забыть об этом, как минимум). Если же построить сводную таблицу в excel, они это сделает это за вас.
Подготавливаем данные для построения сводной таблицы
Давайте разберемся, из какой исходной таблицы можно построить сводную таблицу в excel (спойлер: не каждая таблица годится).
Основные требования к таблице, из которой будет создаваться сводная таблица:
- Все столбцы в исходной таблице должны иметь уникальные (т.е. не повторяющиеся) заголовки.
- Все строки в пределах одного столбца должны иметь однородные данные. Например, если в столбце указан месяц в формате “янв”, то не должно быть данных в формате “Январь” — эксель сочтет их как два разных месяца. Также использование русских и похожих латинских букв (например С и C на глаз не отличишь, но одна из них в латинской раскладке, и эксель также посчитает их разными).
- Числовые данные, которым вы будете оперировать, должны быть именно числовыми. Если есть зеленый треугольник в верхнем левом углу ячейки — такое число является текстом, и должно быть преобразовано в число, иначе с ним нельзя делать вычисления.
- Исходная таблица не должна содержать промежуточных итогов.
- Нежелательно иметь пустые строки
- Под исходной таблицей нежелательно иметь какие-то другие данные, оставьте это пространство пустым, это облегчит дальнейшее обновление сводной таблицы.
Лучшим вариантом организации исходных данных является преобразование их в “умную” таблицу . Но это не является обязательным требованием, к тому же “умные” таблицы имеют некоторые ограничения и могут быть использованы не всегда. Но в целом их использование очень упрощает работу со сводными таблицами.
Как построить сводную таблицу в Excel из обычной таблицы
Итак, имеем исходную таблицу с продажами садового инвентаря со следующими столбцами. Данные в серых столбцах взяты из учетной системы, столбец Месяц сделали расчетный для удобства организации данных.
Рассматривать будем на примере обычной таблицы .
Если мы не предполагаем в дальнейшем добавлять в исходную таблицу данные, то можно выделить только диапазон этой таблицы, например, А1:Н202. Однако, если в исходную таблицу будут добавляться данные, лучше выделить полностью столбцы, входящие в таблицу. Иначе есть риск, что при обновлении сводной таблицы новые данные в нее не попадут.
Выделяем полностью столбцы, зажав левую кнопку мыши.
Далее вкладка Вставка — Сводная таблица.
Появится окно создания сводной таблицы. Разберем, что в нем:
- Выберите данные для анализа. Здесь уже указан диапазон, который вы выделили, не меняйте его.
- Укажите, куда следует поместить отчет сводной таблицы. Новичкам (и не только) советую всегда выбирать Новый лист. Если выбираете “на существующий лист”, то нужно указать ячейку на уже созданном листе, с которой будет начинаться сводная таблица. Только учтите, что пространство нужно выбрать с запасом, чтобы потом сводная таблица не “съела” данные на листе.
Выберем На новый лист и нажмем ОК.
Появится заготовка для будущей сводной таблицы и возможность выбрать поля в правой части экрана.
Как можно добавлять поля из исходной таблицы в сводную.
- нажимая на “галочку”. При этом нужно контролировать, в какую область (строки или столбцы) excel занесет отмеченное поле. При необходимости перенести.
- щелкнув правой кнопкой мыши на названии поля и выбрав, куда его поместить
- перетаскивая мышкой поля в нужный раздел. Такой способ рекомендуется.
Перетащим поле Категория в блок СТРОКИ, поле Месяц — в блок СТОЛБЦЫ, а поле Стоимость — в блок ЗНАЧЕНИЯ.
Возле слова Количество не случайно указан знак вопроса. В большинстве версий excel по умолчанию считает в значениях именно количество элементов. По невнимательности можно оставить так и получить кривой результат.
Нам же нужна именно сумма по полю Стоимость. Нажмем на “треугольник” и выберем Параметры полей значений, и далее — Сумма.
В итоге получим такую сводную таблицу. В строках — Категории товара, в столбцах — месяцы, а в ячейках — суммы выручки от продаж товаров данной категории. И это без единой формулы!
Где найти панель редактирования сводной таблицы
Вы создали сводную таблицу и закрыли списки полей (так обычно и делают, чтобы не мешали просмотру), но возникла необходимость внести корректировки в макет сводной таблицы.
Необходимо правой кнопкой мыши щелкнуть в любом месте сводной таблицы и выбрать пункт Показать список полей.
Как изменить структуру сводной таблицы
Предположим, требования изменились, и теперь в строках нужно видеть разбивку по месяцам и наименованию товара, а в столбцах — категорию товара. В случае с обычной таблицей формул на этом месте мы бы начали плакать и переписывать формулы *смайлик* Здесь же просто нужно перетащить Категорию товара — в столбцы, Месяц в строки, и добавить в строки поле Наименование товара.
Как удалить поле сводной таблицы
Теперь нам больше не нужно видеть развертку по наименованию товара в строках.
Для того, чтобы удалить поле из сводной таблицы, есть 3 основных способа:
- снять галочку с названия поля, оно автоматически исчезнет
- в блоке, где располагается поле, щелкнуть на “треугольник” и выбрать Удалить поле.
- в самой сводной таблице щелкнуть правой кнопкой мыши на любом значении поля и выбрать Удалить “Название поля”
Для чего нужно поле Фильтр в сводной таблице
Итак, мы разобрались со строками, столбцами и значениями в сводной таблице, научились их добавлять и удалять. Но зачем же нужно поле Фильтр в сводной таблице?
Перестроим таблицу таким образом: в строки добавим Наименование товаров, в столбцы — месяцы.
Предположим, нужно видеть не все названия товаров, а только по категории Инструмент.
Для этого нужно перетащить поле Категория товара в блок ФИЛЬТРЫ.
После этого над сводной таблицей появляется дополнительная строка с фильтрами.
По умолчанию выбраны все значения. Отфильтруем нужную нам категорию Инструмент. Для этого щелкнем на выпадающий список в фильтре и выделим нужную категорию. Сводная таблица уменьшилась, отобразив данные только по категории Инструмент.
Фильтровать значения в сводной таблице можно не только по одному параметру, но и по нескольким. Для этого нужно активировать “галочку” Выделить несколько элементов и установить “галочки” возле нужных.
К томе же, полей, по которым фильтруем данные, может быть несколько. Чтобы отфильтровать данные в сводной таблице не только по категории товара, но и по другим полям, их также нужно перетянуть в блок ФИЛЬТРЫ.
Как обновить сводную таблицу
Если исходная таблица с данными периодически пополняется новыми строками, то потребуется обновлять сводную таблицу.
Чтобы обновить сводную таблицу, нужно щелкнуть на ней правой кнопкой мыши и выбрать пункт Обновить.
Возможно также настроить автоматическое обновление сводной таблицы при открытии файла. Для этого щелкните правой кнопкой мыши на сводной таблице и выберите пункт Параметры сводной таблицы, далее на вкладке Данные активируйте “галочку” Обновить при открытии файла.
Как изменить внешний вид (формат) сводной таблицы
Про настройку форматирования сводной таблицы есть видеоролик:
В статье кратко остановимся на возможностях.
Изменить внешний вид сводной таблицы можно на вкладке Конструктор.
Выпадающий список Промежуточные итоги позволяет управлять выводом промежуточных итогов по строкам. Промежуточные итоги можно отключить совсем, или выводить в верхней или нижней части группы.
Общий итоги — позволяет управлять общими итогами для строк или столбцов, выводить их или отключать.
Макет отчета — позволяет изменять структуру таблицы. По умолчанию сводная таблица создается в сжатой форме. Но можно перестроить ее в форме структуры или в табличной форме.
Пустые строки — этот выпадающий список редко используется, позволяет добавлять пустую строку между группами, чтобы визуально отделить их.
Значение (пусто) в сводной таблице — как убрать
По умолчанию в сводную таблицу всегда включается значение Пусто. Если в исходной таблице есть строки или столбцы с пустыми ячейками, их значения попадут в эту категорию.
Но Пусто выводится и в том случае, если пустых ячеек нет, и портит внешний вид сводной таблицы. Часто его убирают.
Чтобы убрать Пусто в сводной таблице, нужно щелкнуть на выпадающем списке строки или столбца и снять “галочку”.
В этом случае Пусто исчезнет и для строк, и для столбцов одновременно.
Где изменить источник сводной таблицы
Иногда может возникнуть ситуация, когда в исходную таблицу добавились новые столбцы, которые не попали в сводную таблицу. Сразу оговорюсь, что если вы использовали умную таблицу в качестве источника, то такой проблемы не будет, новые столбцы будут добавляться в сводную таблицу автоматически при обновлении.
Предположим, в нашей исходной таблице добавился столбец Продавец. Этот столбец нужно добавить в сводную таблицу, чтобы иметь возможность выводить данные по продавцам.
Для этого щелкнем в любом месте сводной таблицы и далее идем на вкладку Анализ — Источник данных.
Откроется лист с исходной таблицей, в котором бегущим выделением будут выделены данные, которые попали в сводную таблицу, а в окне — источник данных.
Далее необходимо в открывшемся окне в поле Таблица или диапазон указать новый диапазон для сводной таблицы: просто выделить необходимый диапазон левой кнопкой мыши (полностью диапазон, включая новый столбец, а не только новый столбец). Нажимаете Ок.
Вернувшись на лист сводной таблицы, вы увидите, что новое поле Продавец появилось в списке полей. Теперь его можно перетаскивать в блоки СТРОКИ, СТОЛБЦЫ или ФИЛЬТРЫ.
Как скопировать сводную таблицу
Чтобы скопировать сводную таблицу, необходимо выделить ее полностью, вместе со строками фильтров . Далее копировать как обычно (Ctrl+C или кнопка Копировать) и вставить в нужное место (Ctrl + V или кнопка Вставить).
Удаляем сводную таблицу
Если сводная таблица расположена на отдельном листе, то чтобы удалить сводную таблицу, можно удалить целиком весь лист (правой кнопкой мыши на ярлычке листа и выбрать Удалить).
Если сводная таблица расположена на листе, где есть другие данные, самый простой способ ее удалить — выделить полностью сводную таблицу вместе с фильтрами (если они есть) и нажать кнопку Delete.
Итак, мы узнали, как построить сводную таблицу в Excel из обычной таблицы с данными. Также рассмотрели некоторые ее базовые возможности. Но если вы хотите освоить такой инструмент, как сводные таблицы с нуля и до профессионального уровня, ознакомьтесь с другими статьями в разделе. Поверьте, без знания сводных таблиц вы не станете профессионалом в Excel!
Сообщество Excel Analytics | обучение Excel
Канал на Яндекс.Дзен
Источник
Блеск и нищета сводных таблиц
Естественные ограничения сводных отчетов
Методы создания сводных отчетов с расширенной функциональностью
Альтернативные интерфейсы доступа к многомерным данным
Предыдущие части статьи были посвящены обзору различных методов работы с многомерными данными посредством сводных таблиц Microsoft Excel. Здесь же мы поговорим об альтернативном подходе — наборе методов КУБ().
Прежде чем перейти к рассказу о возможностях функций семейства КУБ(), сделаем небольшое отступление и перечислим некоторые существенные ограничения стандартных сводных отчетов Microsoft Excel.
Естественные ограничения сводных отчетов
Напомним, что сводная таблица представляет собой набор измерений, который пользователь может расположить либо на осях отчета — области столбцов или строк, либо в фильтре отчета — области фильтров.
Измерения не зависят друг от друга, благодаря чему, собственно, и обеспечивается гибкость настройки отчета. Любое измерение можно поместить в любую из трех областей сводного отчета (область строк, область столбцов, фильтры), причем в каждой области порядок следования измерений может быть произвольным. Такой формат весьма удобен для оперативного анализа, но часто не подходит для составления формализованных отчетов.
В качестве примера рассмотрим классическую задачу по подготовке отчетности о результатах деятельности компании. Допустим, речь идет об итогах I квартала, то есть требуется заполнить таблицу следующего вида (табл. 1).
Представленная таблица имеет простую структуру. От обычной она отличается лишь тем, что в заголовках столбцов присутствуют сразу два измерения: «Время» и «Категория». Из таблицы видно, что значения элементов измерения «Категория» меняются в зависимости от календарного периода: для прошедших месяцев мы должны показать фактические значения статей отчета, а для будущих — плановые. Можно сказать, что в рамках данного отчета значения измерения «Категория» зависят от времени.
Зададимся теперь вопросом: можно ли воспроизвести подобную структуру средствами сводной таблицы? К сожалению, ответ будет отрицательным — в лучшем случае нам удастся создать отчет следующего формата (табл. 2).
Табл. 2 получается путем последовательного размещения в области столбцов сводного отчета измерений «Дата» и «Категория». Если поменять порядок их следования, макет отчета изменится и примет форму, показанную в табл. 3.
В обоих случаях мы стали заложниками принципа независимости измерений, согласно которому все элементы одного измерения дублируются для каждого элемента другого, размещенного в той же области сводного отчета. В табл. 2 элементы «План» и «Факт» из измерения «Категория» повторяются для каждого месяца из измерения «Время», а в табл. 3 — наоборот, наименования месяцев дублируются для каждого из двух элементов измерения «Категория».
Использование какихли-бо фильтров не решит проблему. Безусловно, можно исключить элемент «План» из отчета, но тогда он будет удален для всех месяцев не только I, но и II квартала.
С описанной проблемой приходится регулярно сталкиваться на практике, когда на оси отчета (области строк или колонок) требуется расположить одновременно несколько измерений. Сводная таблица может отображать лишь их декартово произведение (объединение по принципу «каждый с каждым»), поэтому увеличение числа измерений, размещаемых на оси, приводит к экспоненциальному росту размеров итоговой таблицы. При этом пользователю для работы реально нужен лишь некоторый набор определенных сочетаний элементов из разных измерений, как правило, имеющий совсем небольшой размер. Такие отчеты неоднородной структуры часто называют асимметричными.
Методы создания сводных отчетов с расширенной функциональностью
Одно из очевидных решений проблемы заключается в создании пользовательских иерархий из разнородных атрибутов типа «Месяц — Категория» (рис. 1).
Рис. 1. Пользовательская иерархия
«Месяц — Категория»
Сразу оговоримся, что в самих сводных таблицах не получится создать какиелибо иерархии. Максимум, что допускается при построении сводных отчетов, — это выполнить операцию группировки элементов измерения. Причем для каждого измерения можно организовать единственную группировку.
В принципе, любую комбинацию атрибутов в OLAP-источнике можно объединить в иерархию. Для небольших кубов такой подход может быть даже оправданным, но для существенных объемов данных объединение атрибутов, не составляющих «естественную» (Natural) иерархию, серьезно понижает производительность всей системы.
Естественные иерархии имеют связи типа «многие к одному» или «один к одному», их кардинальность равна числу элементов нижнего (листового) уровня, а любой элемент верхнего (старшего) уровня функционально зависит от своих подчиненных. К примеру, у января всегда будет признак «I квартал», причем эта связь никак не зависит от потребностей пользователя или характера решаемых задач. Более того, она не меняется с течением времени. Такую связь атрибутов часто называют жесткой — rigid. Практически это означает, что любой элемент с уровня «Квартал» можно связать с набором ключевых элементов измерения опосредованно через уровень «Месяц».
Обратимся еще раз к нашему примеру. Здесь наблюдается иная ситуация. Атрибут «Категория данных» (признаки «План» или «Факт») логически не связан с отчетным периодом. Иначе говоря, между атрибутами «Категория» и «Время» установлено только отношение «многие ко многим» — каждый элемент одного атрибута может сочетаться с любым элементом другого. Для января могут храниться как плановые, так и фактические данные, для апреля — только плановые, а для декабря может не быть даже плановых показателей. Заметим, что с течением времени ситуация может измениться, причем существенно: если в феврале для апреля были определены только плановые показатели, то в мае после подведения итогов будут известны и фактические значения.
Получается, что возможные сочетания атрибутов из измерений «Категория» и «Время» определяются посредством таблицы фактов. Если в таблице фактов есть кортеж с заданным сочетанием, например «Январь — Факт», то связь между этими элементами считается установленной, в противном случае — нет. С помощью таблицы фактов можно задать любые, даже совершенно экзотические иерархии, что открывает пользователю широкие возможности по манипуляции данными при решении различных прикладных задач.
Когда в аналитическом кубе имеется иерархия «Месяц — Категория», создание отчета о результатах деятельности из начала статьи становится минутным делом. Достаточно поместить данное измерение в область столбцов отчета, затем для месяцев I квартала оставить только подчиненные значения «Факт», а для месяцев II квартала — «План».
Повторимся еще раз: атрибут «Категория» в данном случае уже не является самостоятельным измерением, это всего лишь нижний уровень иерархии. Следовательно, его можно определять отдельно для каждого элемента верхнего уровня — «Месяц», то есть точно так же, как если бы мы выбирали месяцы I квартала без оглядки на II квартал.
Надеюсь, читатели согласятся, что предложенный способ работы с многомерными данными с точки зрения пользователя выглядит весьма привлекательно. К сожалению, цена, которую приходится платить в плане технической реализации, достаточно высока.
Вопервых, при таком подходе для любой комбинации атрибутов требуется создание отдельной иерархии. Допустим, мы хотим немного изменить исходный макет отчета и сделать таблицу следующего вида (табл. 4).
Иерархия «Месяц — Категория» для такой таблицы уже не подойдет. Иерархия является жесткой структурой, в которой заранее определен и строго зафиксирован порядок следования уровней. Положение уровней в иерархии нельзя менять, в отличие от места измерений в макете отчета сводной таблицы. Поэтому, чтобы получить раскладку для табл. 4, придется сделать еще одну, новую пользовательскую иерархию — «Категория — Месяц» (рис. 2).
Рис. 2. Пользовательская иерархия
«Категория — Месяц»
Добавление в куб нового измерения требует серьезных трудозатрат. Вдвойне обидно выполнять такую операцию, зная, насколько просто может быть изменен порядок следования измерений в макете отчета сводной таблицы.
Вовторых, иерархии, состоящие из разнородных атрибутов, гораздо более требовательны к ресурсам системы по сравнению с естественными. Единственный способ увязать между собой независимые атрибуты заключается в создании измерения, в котором ключевым элементом является индексное поле таблицы фактов. У такого измерения атрибутом может быть любое поле, что потенциально позволяет создать на его базе иерархию произвольной структуры. Однако кардинальность такого измерения равна мощности таблицы фактов, хотя при правильном проектировании должна быть существенно (на порядки) меньше. Часто измерения подобного рода обозначают специальным термином — дегенерированные.
Предложенный способ создания пользовательских иерархий для атрибутов, связанных по принципу «многие ко многим», является наглядной демонстрацией плохого дизайна. Понятно, что решение нашей проблемы нужно искать в иной плоскости.
Альтернативные интерфейсы доступа к многомерным данным
В программе Microsoft Excel версии 2007 был добавлен альтернативный интерфейс доступа к многомерным данным — семейство функций КУБ(). Изначально при помощи методов КУБ() можно было обратиться только к аналитическому серверу от компании Microsoft, что существенно сужало круг их потенциальных пользователей.
С выходом Microsoft Excel 2010 ситуация изменилась в лучшую сторону. Последняя версия Microsoft Excel комплектуется сервисом PowerPivot, в котором реализована поддержка двух основных методов КУБ(): КУБЭЛЕМЕНТ() и КУБЗНАЧЕНИЕ(). Благодаря сервису PowerPivot функции КУБ() наконец стали общедоступными. По своим возможностям они прекрасно дополняют базовую функциональность сводных таблиц.
Покажем, как с помощью методов КУБ() можно составить интересующий нас отчет. Начнем с создания обычного сводного отчета на базе OLAP-куба (рис. 3).
Рис. 3. Сводный отчет на базе OLAP-куба
Для удобства дальнейшего восприятия при помощи цветового форматирования разделим столбцы отчета, относящиеся к фактическим и плановым значениям. Далее на вкладке Параметры в группе Сервис выберем подгруппу Средства OLAP и нажмем на кнопку Преобразовать в формулы. Поскольку в макете нашего отчета присутствует область фильтров, откроется диалоговое окно Преобразование в формулы (рис. 4).
Рис. 4. Диалоговое окно «Преобразование в формулы»
Нам необходимо в новом отчете сохранить фильтры, поэтому флажок Преобразовать фильтры отчета следует оставить снятым (он снят по умолчанию).
В результате проделанной операции все заголовки строк, столбцов и ячейки области значений будут преобразованы в формулы листа, а первоначальный макет отчета сводной таблицы будет сохранен, но в нем останутся только фильтры — с их помощью в дальнейшем можно будет производить отбор нужных данных (рис. 5).
Рис. 5. Результат преобразования в формулы
После выполнения операции Преобразовать в формулы сводная таблица становится обычным диапазоном ячеек, с которым можно выполнять любые стандартные операции Microsoft Excel. Поэтому из отчета можно удалить все столбцы, относящиеся к разделу плановых значений. В случае классической сводной таблицы такая операция невозможна — ведь сводная таблица представляет собой связанный диапазон.
Оставшаяся часть таблицы состоит из набора формул двух типов. Элементы из полей строк и столбцов сводной таблицы (измерения OLAP-куба) были преобразованы в формулы КУБЭЛЕМЕНТ(), а поля из области значений (мера OLAP-куба) — в формулы КУБЗНАЧЕНИЕ().
Каждая из формул имеет весьма простую и ясную структуру. Рассмотрим для начала синтаксис формулы КУБЗНАЧЕНИЕ():
КУБЗНАЧЕНИЕ (подключение, выражение_элемента1, выражение_элемента2…)
Первый аргумент функции — текстовая строка подключение, в которой задается имя подключения к аналитическому кубу. При создании отчета на основе сводной таблицы данное имя наследуется из ее параметров подключения.
Следующими аргументами функции являются текстовые строки Выражение_элемента, которые определяют координаты отдельных элементов в кубе. Все вместе они составляют кортеж, задающий координаты объекта в многомерном пространстве.
На рис. 5 представлена формула КУБЗНАЧЕНИЕ(), рассчитывающая объем выручки по услуге «Интернет — Доступ» за февраль для дирекции № 1. Видно, что выражениями элементов являются ссылки на обычные ячейки листа Microsoft Excel. Примечательно, что текстовые строки в этих ячейках можно заполнять по-разному. Базовый вариант заключается в применении функций КУБЭЛЕМЕНТ(), но при необходимости можно использовать и любой другой способ.
Для примера заменим формулы КУБЭЛЕМЕНТ() элементов измерения «План_Факт» строчными значениями — для этого в первых трех колонках наберем «[Факт]», а последних трех — «[План]». Как видно из рис. 5, подобная операция сразу приводит отчет к асимметричному виду — формату, который был целью данной статьи.
Повторимся еще раз, аргументами функции КУБЗНАЧЕНИЕ() являются ячейки листа, что означает возможность выполнения над ними любых стандартных операций Microsoft Excel. Например, работу с измерением «План_Факт» можно значительно упростить при помощи опции проверки данных. Ограничим множество допустимых значений ячейки перечнем элементов (вкладка Данные → меню Работа с данными → Проверка данных). При помощи такой несложной операции в отчете будет достигнут эффект поля с раскрывающимся списком, а сам отчет при этом приблизится по функциональности к привычным сводным таблицам (рис. 6).
Рис. 6. Ограничение множества допустимых значений ячейки перечнем элементов
После преобразования сводной таблицы в набор формул ее область фильтров тоже становится простым, несвязанным диапазоном ячеек. Поэтому любой из фильтров можно как переносить, так и копировать в произвольное место рабочего листа книги. Создание нескольких экземпляров одного фильтра позволяет раздельно определять контекст исполнения OLAP-запросов для отдельных областей отчета.
Рис. 6 демонстрирует, как данная идея может быть воплощена на практике. Сначала фильтры исходного отчета были размещены рядом с областью данных отчета, затем весь полученный диапазон был скопирован и повторно помещен на лист книги Microsoft Excel. Формулы нижнего раздела были сориентированы на использование соответствующих фильтров.
Итогом такой работы стал отчет, содержащий сразу две проекции одного многомерного пространства. Причем у этих проекций есть как общие измерения — «План_Факт», «Дата», так и независимые — «Сервис». Кроме того, каждая проекция располагает собственным набором фильтров.
Предложенный подход можно развивать дальше — ничто не мешает объединить в одном отчете данные из разных кубов. Понятно, что совместно используемые измерения в обоих кубах должны либо совпадать, либо хотя бы обладать иерархиями одинакового уровня гранулярности.
В ряде случаев такой метод представляется весьма перспективным и обоснованным. Действительно, чтобы провести анализ разнородных данных, требуется их предварительно объединить в рамках одного хранилища данных, а проектирование и последующая поддержка хранилища данных являются, как известно, затратными операциями.
Как мы убедились, для простых задач типа просмотра нескольких показателей из гетерогенной среды в общем пространстве измерений единое хранилище данных не требуется. Гораздо проще и быстрее привести все показатели к единому знаменателю при помощи функций КУБ() на этапе формирования выходного пользовательского отчета. Учитывая, что такая работа не требует какихлибо специальных знаний в программировании, она может быть выполнена бизнес-пользователем самостоятельно, без привлечения ИТ-специалистов. Современная парадигма бизнес-анализа во многом базируется именно на этой идее.
Чтобы завершить рассказ о главных представителях семейства КУБ(), нам осталось разобраться с работой функции КУБЭЛЕМЕНТ(), имеющей следующий синтаксис:
КУБЭЛЕМЕНТ(подключение, выражение_элемента, подпись)
Первый аргумент данного оператора, так же как и в случае с КУБЗНАЧЕНИЕ(), устанавливает параметры подключения к аналитическому кубу. Затем следует текстовая строка Выражение_элемента, описывающая многомерное выражение, которое задает координаты элемента в кубе. Завершает запись аргумент Подпись, в котором, при необходимости, можно определить строку для показа ее в отчете вместо имени текущего элемента измерения.
Такая возможность может быть весьма полезна на практике. В первую очередь она позволяет гибко настраивать отчет под нужды конкретного пользователя. Обратимся еще раз к нашему примеру, представленному на рис. 6. Допустим, нам не нравится, как названы услуги в аналитическом кубе, и мы хотим для сервиса «Абонентская плата» использовать более сжатое написание — «Абон. плата». Для этого достаточно дополнить исходную формулу текстовой строкой КУБЭЛЕМЕНТ(«OLAP_Connection»;»[Сервис].[Сервис].&[1]»; «Абон. плата»). Как видно из рисунка, проделанная операция никак не повлияла на расчет численных значений отчета. Дело в том, что значением функции КУБЭЛЕМЕНТ в случае ее вызова другими функциями КУБ() является элемент, определяемый многомерным выражением (второй аргумент КУБЭЛЕМЕНТ), а не то значение, которое показывается в ячейке листа.
Истинная мощь формулы проявляется, когда выражение элемента представляет собой не единственную координату, а кортеж — набор из нескольких координат на различных осях куба. Предположим, что в аналитическом отчете вместо элемента «Абон. плата», задаваемого формулой «[Сервис].[Сервис].&[1]», требуется разместить элемент «Абон. плата — план», определяющий плановое значение объема продаж для услуги «Абонентская плата» по текущему ракурсу. Понятно, что требуемый элемент задается кортежем ([Сервис].[Сервис].&[1], [План_Факт].[План_Факт].&[1]).
В Microsoft Excel для записи такого кортежа придется использовать довольно экзотический синтаксис:
{“[Сервис].[Сервис].&[1]”;”[План_Факт].[План_Факт].&[1]”}.
При этом функция КУБЭЛЕМЕНТ() в целом примет следующий вид:
=КУБЭЛЕМЕНТ(“OLAP_Connection”;{“[Сервис].[Сервис].&[1]”;”[План_Факт].[План_Факт].&[1]”}; “Абон. плата — план”).
Условно говоря, последний вызов эквивалентен созданию внутри программы Microsoft Excel вычисляемого элемента «Абон. плата — план», то есть конструкции вида:
with member [Сервис].[Сервис].[Абон. плата — план] as ([Сервис].[Сервис].&[1],[План_Факт].[План_Факт].&[1])
Как видите, функция КУБЭЛЕМЕНТ() позволяет определять элементы куба при помощи сложных условий отбора, но на практике выполнять такие действия не очень удобно. Главный сдерживающий фактор здесь заключается в трудоемкости составления многомерных выражений, удовлетворяющих требованиям Microsoft Excel, Действительно, приведенная выше формула наглядно показывает, что даже для простого кортежа из двух элементов требуется довольно громоздкая запись.
К счастью, в функции КУБЭЛЕМЕНТ() предусмотрен альтернативный подход к заданию аргумента Выражение_элемента — вместо текстовой строки допускается указывать ссылку на диапазон ячеек.
Создадим на листе книги именованный диапазон «Кортеж» и построчно заполним его формулами, задающими координаты элемента на отдельных измерениях (рис. 7).
Рис. 7. Заполнение именованного
диапазона формулами, задающими координаты
элемента на отдельных измерениях
В совокупности данные выражения определяют кортеж, вычисляющий плановую выручку в январе по услуге «Абонентская плата». Подстановка имени диапазона в формулу КУБЭЛЕМЕНТ(«OLAP_Connection»; Кортеж; «Абон. плата (план)») дает возможность сослаться на нее в отчете Microsoft Excel. При этом, когда в формуле явно указан параметр Подпись, он отображается в ячейке на листе книги Microsoft Excel. Если же такого параметра нет, в ячейке показывается последний элемент кортежа. Таким образом, если формулу КУБЭЛЕМЕНТ() написать в сокращенном виде: КУБЭЛЕМЕНТ(«OLAP_Connection»; Кортеж), то в ячейке отчета будет показываться «Янв», что соответствует последнему элементу из списка «Кортеж» — [Дата].[Месяц].&[1].
Следует отметить, что каждая строка в диапазоне «Кортеж» может быть произвольным MDX-выражением. Например, для формул на рис. 7 существует эквивалентное написание:
[Сервис].[Сервис].[All].FirstChild
[План_Факт].[План_Факт].&[1]
[Дата].[Дата].[Месяц].members.Item(0)
Все формулы, в свою очередь, являются текстовыми строками, которые, при необходимости, можно составлять динамически при помощи обычных текстовых функций Microsoft Excel.
Приведенные примеры доказывают, что функции КУБЭЛЕМЕНТ() и КУБЗНАЧЕНИЕ() обладают широким потенциалом для работы с многомерными данными, однако на них налагается ряд существенных ограничений. Вопервых, при разработке отчетов с использованием функций семейства КУБ() следует руководствоваться логикой составления MDX-выражений. Один из базовых постулатов MDX говорит, что любая иерархия может присутствовать на осях отчета (Axis0, Axis1, Where) только один раз. Поэтому если элемент куба в функции КУБЭЛЕМЕНТ() определялся с помощью кортежа, то присутствующие в нем измерения уже не могут напрямую применяться в инструкции КУБЗНАЧЕНИЕ().
Вовторых, базовые функции КУБ() являются статическими по своей природе. Оператор КУБЭЛЕМЕНТ() оптимально подходит для создания отчетов с фиксированной структурой, но малопригоден для работы с динамическими наборами.
С первым из перечисленных недостатков следует просто смириться, а вот проблема создания отчетов с изменяющимися размерами успешно решается при помощи других функций КУБ(). Именно им и будет посвящена следующая часть статьи.
КомпьютерПресс 06’2011
есть ли ограничения по расчету таблицы данных в сводной таблице???
Zet Пользователь Сообщений: 24 |
у меня есть сводный отчет, который приходиться ежедневно обновлять, на определенной дате (у меня сводная фильтруется по датам) он завис, я не могу устранить ошибку, так как не вижу в чем она. |
Ограничений нет — только количество столбцов в сводной (актуально для 2003 — не более 256). |
|
Да, забыл, есть ограничения по памяти компа. Возможно не хватает памяти. |
|
Zet Пользователь Сообщений: 24 |
у меня 2007 excel — есть ли по нему какой-либо ограничитель??? |
Nicks Пользователь Сообщений: 71 |
{quote}{login=Михаил}{date=04.10.2010 01:18}{thema=}{post}Ограничений нет — только количество столбцов в сводной (актуально для 2003 — не более 256). |
Zet Пользователь Сообщений: 24 |
у меня не выдаёт никаких признаков жизни, поэтому я не могу определить ограничения вступают в силу или же это глюк по исходным данным, отчет переделать в новой версии не получается, как вариант разделить и начать заново с даты 31 августа — но смысл заводить отчет ради отчета… |
Если есть ограничения в 2003, то, вероятно, есть и в 2007… Все таки, Ip8853 — это более 2 млн. 200 тыс ячеек… 29999 |
|
Hugo Пользователь Сообщений: 23249 |
Макросом, по старинке — в массив и перебор… |
Serge Пользователь Сообщений: 11308 |
{quote}{login=Nicks}{date=04.10.2010 02:04}{thema=Re: }{post} |
{quote}{login=Serge 007}{date=04.10.2010 08:39}{thema=Re: Re: }{post}{quote}{login=Nicks}{date=04.10.2010 02:04}{thema=Re: }{post} |
|
Serge Пользователь Сообщений: 11308 |
{quote}{login=}{date=05.10.2010 06:19}{thema=Re: Re: Re: }{post} |
Serge Пользователь Сообщений: 11308 |
{quote}{login=Nicks}{date=05.10.2010 07:48}{thema=}{post}Из первоисточника. Для 2010 http://office.microsoft.com/ru-ru/excel-help/HP010073849.aspx Для 2003 нет информации но ограничения несомненно есть{/post}{/quote} В 2003 Эксе ограничения на вычисления точно такие-же. |
Nicks Пользователь Сообщений: 71 |
Не собирался вступать в полемику но в ссылке абсолютный ответ на вопрос топикастера,а не рассуждения о быстродействии расчетов СТ на прошлой работе. то что я ошибался , я исправил… |
Serge Пользователь Сообщений: 11308 |
{quote}{login=Nicks}{date=06.10.2010 08:58}{thema=}{post} …в ссылке абсолютный ответ на вопрос топикастера…{/post}{/quote}И где он в ссылке? ЗЫ Вы невнимательно читали мои посты. Я нигде не рассуждал о быстродействии. Я говорил о ФАКТЕ при котором присутствовал лично. |
Nicks Пользователь Сообщений: 71 |
Извиняюсь за свою невнимательность, но если общий заголовок «есть ли ограничения по расчету таблицы данных в сводной таблице???» а в теме вопрос почему у меня не получается то то и то-то я обычно пропускаю… У каждого свои заботы |
Zet Пользователь Сообщений: 24 |
обидно, что я так и не услышала ответ на свой вопрос |
Zet Пользователь Сообщений: 24 |
а у Вас аська или скайп есть??? |
Serge Пользователь Сообщений: 11308 |
#20 01.11.2010 21:08:07 Я так же могу протестировать (есть спец. прога для сводных). <#0> |