Содержание
- Вычислите значения квадратов и кубов первых 10 чисел excel
- Как рассчитывается квадрат числа
- Формула для расчета квадрата числа
- Функция СТЕПЕНЬ для возведения числа в квадрат
- Заключение
- Процедура возведения в квадрат
- Способ 1: возведение с помощью формулы
- Способ 2: использование функции СТЕПЕНЬ
- Как рассчитывается квадрат числа
- Формула для расчета квадрата числа
- Функция СТЕПЕНЬ для возведения числа в квадрат
- Заключение
- Описание
- Синтаксис
- Замечания
- Пример
- Нахождение суммы квадратов для нескольких ячеек
- Нахождение суммы квадратов всего для нескольких ячеек
Вычислите значения квадратов и кубов первых 10 чисел excel
Довольно часто перед пользователями встает задача – возвести определенное число в квадрат, или, другими словами, во вторую степень. Это может потребоваться для решения инженерных, математических и иных задач.
Несмотря на широкое применение данной математической функции, в том числе, в Excel, специальной формулы, которая позволяет возвести число в квадрат, в программе нет. Однако, есть общая формула для возведения числового значения в степень, с помощью которой можно легко посчитать и квадрат.
Как рассчитывается квадрат числа
Как мы помним из школьной программы, квадрат числа – это число, помноженное на само себя. В Excel для возведения числа в квадрат, разумеется, используется этот же принцип. И для решения этой задачи можно пойти двумя путями: воспользоваться формулой, включающей специальный символ степени “^”, либо применить функцию СТЕПЕНЬ.
Давайте рассмотрим оба метода на практике, чтобы понять, как они реализуются и какой из них проще и удобнее.
Формула для расчета квадрата числа
Этот способ, пожалуй, самый легкий и наиболее часто применяемый для получения квадратной степени числа в Эксель. Для расчета используется формула со специальным знаком “^”.
Сама формула выглядит следующим образом: =n^2.
где n – это число, квадратную степень которого требуется вычислить. Значение этого аргумента можно указать разными способами: в виде конкретного числа, либо указав адрес ячейки, которая содержит требуемое числовое значение.
Теперь давайте попробуем применить формулу на практике. В первом варианте мы пропишем в формуле непосредственно само число, квадратную степень которого необходимо вычислить.
- Для начала определяемся с ячейкой книги, в которой будет отображаться результат вычислений, и отмечаем ее левой кнопкой мыши. Затем пишем в ней формулу, не забывая в самом начале поставить знак “равно” (“=”) . Например, формула “=7^2″ означает, что мы хотим возвести в квадрат число 7. Формулу, кстати, можно прописать и в строке формул, предварительно выделив нужную ячейку.
- После того, как формула набрана, щелкаем клавишу Enter на клавиатуре, чтобы получить требуемый результат.
Теперь давайте рассмотрим второй вариант, в котором вместо конкретного числа в формуле мы укажем адрес ячейки, содержащей нужное число.
- Выбираем ячейку, где будет отображаться результат, и пишем в ней формулу. Как обычно, в начале ставим “=”. Затем щелкаем по ячейке, содержащей число, квадрат которого требуется получить (в нашем случае – это ячейка B3). Далее добавляем символ степени и цифру 2, означающую возведение во вторую степень. В итоге формула выглядит так: “=B3^2“.
- После этого нажимаем Enter для вывода результата в выбранной ячейке с формулой.
Примечание: данная формула применима не только для возведения числа в квадрат, но и в другие степени. В этом случае вместо цифры 2 мы пишем другую желаемую цифру. Например, формула “=4^3” возведет число 4 в третью степень или, другими словами, в куб.
Функция СТЕПЕНЬ для возведения числа в квадрат
В данном случае для нахождения квадрата числа нам поможет специальная функция под названием СТЕПЕНЬ. Эта функция относится к категории математических операторов и выполняет задачу по возведению указанного числа в заданную степень.
Формула данного оператора выглядит так: =СТЕПЕНЬ(число;степень).
Как мы видим, в данной формуле присутствует два аргумента: число и степень.
- “Число” – аргумент, который может быть представлен двумя способами. Можно прописать конкретное число, которое требуется возвести в степень, либо указать адрес ячейки с требуемым числом.
- “Степень” – аргумент, указывающий степень, в которую будет возводиться наше число. Так как мы рассматриваем возведение числа в квадрат, то указываем значение аргумента, равное цифре 2.
Давайте разберем применение функции СТЕПЕНЬ на примерах:
Способ 1. Указываем в качестве значения аргумента «Число» конкретную цифру
Способ 2. Указываем в качестве значения аргумента «Число» адрес ячейки с числом
- Теперь у нас уже есть конкретное числовое значение в отдельно ячейке (в нашем случае – B3). Так же, как и в первом способе, выделяем ячейку, куда будет выводиться результат, нажимаем на кнопку “Вставить функцию” и выбираем оператор “СТЕПЕНЬ” в категории “Математические”.
- В отличие от первого способа, теперь вместо указания конкретного числа в поле “Число” указываем адрес ячейки, содержащей нужное число. Для этого кликаем сначала по полю аргумента, затем – по нужной ячейке. Значение поля “Степень” так же равно 2.
- Далее нажимаем кнопку OK и получаем результат, как и в первом способе, в ячейке с формулой.
Примечание: Также, как и в случае использования формулы для расчета квадрата числа, функцию СТЕПЕНЬ можно применять для возведения числа в любую степень, указав в значении аргумента “Степень” нужную цифру. Например, чтобы возвести число в куб, пишем цифру 3.
Далее жмем Enter и значение куба указанного числа появится ячейке с фукнцией.
Заключение
Возведение числа в квадрат – пожалуй, самое популярное математическое действие среди всех вычислений, связанных с расчетами различных степеней числовых значений. В Microsoft Excel данное действие можно выполнять двумя способами: с помощью специальной формулы или используя оператор под названием СТЕПЕНЬ.
Одним из наиболее частых математических действий, применяемых в инженерных и других вычислениях, является возведение числа во вторую степень, которую по-другому называют квадратной. Например, данным способом рассчитывается площадь объекта или фигуры. К сожалению, в программе Excel нет отдельного инструмента, который возводил бы заданное число именно в квадрат. Тем не менее, эту операцию можно выполнить, использовав те же инструменты, которые применяются для возведения в любую другую степень. Давайте выясним, как их следует использовать для вычисления квадрата от заданного числа.
Процедура возведения в квадрат
Как известно, квадрат числа вычисляется его умножением на самого себя. Данные принципы, естественно, лежат в основе вычисления указанного показателя и в Excel. В этой программе возвести число в квадрат можно двумя способами: использовав знак возведения в степень для формул «^» и применив функцию СТЕПЕНЬ. Рассмотрим алгоритм применения данных вариантов на практике, чтобы оценить, какой из них лучше.
Способ 1: возведение с помощью формулы
Прежде всего, рассмотрим самый простой и часто используемый способ возведения во вторую степень в Excel, который предполагает использование формулы с символом «^». При этом, в качестве объекта, который будет возведен в квадрат, можно использовать число или ссылку на ячейку, где данное числовое значение расположено.
Общий вид формулы для возведения в квадрат следующий:
В ней вместо «n» нужно подставить конкретное число, которое следует возвести в квадрат.
Посмотрим, как это работает на конкретных примерах. Для начала возведем в квадрат число, которое будет составной частью формулы.
- Выделяем ячейку на листе, в которой будет производиться расчет. Ставим в ней знак «=». Потом пишем числовое значение, которое желаем возвести в квадратную степень. Пусть это будет число 5. Далее ставим знак степени. Он представляет собой символ «^» без кавычек. Затем нам следует указать, в какую именно степень нужно произвести возведение. Так как квадрат – это вторая степень, то ставим число «2» без кавычек. В итоге в нашем случае получилась формула:
Теперь давайте посмотрим, как возвести в квадрат значение, которое расположено в другой ячейке.
- Устанавливаем знак «равно» (=) в той ячейке, в которой будет выводиться итог подсчета. Далее кликаем по элементу листа, где находится число, которое требуется возвести в квадрат. После этого с клавиатуры набираем выражение «^2». В нашем случае получилась следующая формула:
Способ 2: использование функции СТЕПЕНЬ
Также для возведения числа в квадрат можно использовать встроенную функцию Excel СТЕПЕНЬ. Данный оператор входит в категорию математических функций и его задачей является возведение определенного числового значения в указанную степень. Синтаксис у функции следующий:
Аргумент «Число» может представлять собой конкретное число или ссылку на элемент листа, где оно расположено.
Аргумент «Степень» указывает на степень, в которую нужно возвести число. Так как перед нами поставлен вопрос возведения в квадрат, то в нашем случае данный аргумент будет равен 2.
Теперь посмотрим на конкретном примере, как производится возведение в квадрат с помощью оператора СТЕПЕНЬ.
- Выделяем ячейку, в которую будет выводиться результат расчета. После этого щелкаем по иконке «Вставить функцию». Она располагается слева от строки формул.
Происходит запуск окошка Мастера функций. Производим переход в нем в категорию «Математические». В раскрывшемся перечне выбираем значение «СТЕПЕНЬ». Затем следует щелкнуть по кнопке «OK».
Производится запуск окошка аргументов указанного оператора. Как видим, в нем располагается два поля, соответствующие количеству аргументов у этой математической функции.
В поле «Число» указываем числовое значение, которое следует возвести в квадрат.
В поле «Степень» указываем цифру «2», так как нам нужно произвести возведение именно в квадрат.
После этого производим щелчок по кнопке «OK» в нижней области окна.
Также для решения поставленной задачи вместо числа в виде аргумента можно использовать ссылку на ячейку, в которой оно расположено.
- Для этого вызываем окно аргументов вышеуказанной функции тем же способом, которым мы это делали выше. В запустившемся окне в поле «Число» указываем ссылку на ячейку, где расположено числовое значение, которое следует возвести в квадрат. Это можно сделать, просто установив курсор в поле и кликнув левой кнопкой мыши по соответствующему элементу на листе. Адрес тут же отобразится в окне.
В поле «Степень», как и в прошлый раз, ставим цифру «2», после чего щелкаем по кнопке «OK».
Как видим, в Экселе существует два способа возведения числа в квадрат: с помощью символа «^» и с применением встроенной функции. Оба этих варианта также можно применять для возведения числа в любую другую степень, но для вычисления квадрата в обоих случаях нужно указать степень «2». Каждый из указанных способов может производить вычисления, как непосредственно из указанного числового значения, так применив в данных целях ссылку на ячейку, в которой оно располагается. По большому счету, данные варианты практически равнозначны по функциональности, поэтому трудно сказать, какой из них лучше. Тут скорее дело привычки и приоритетов каждого отдельного пользователя, но значительно чаще все-таки используется формула с символом «^».
Отблагодарите автора, поделитесь статьей в социальных сетях.
Довольно часто перед пользователями встает задача – возвести определенное число в квадрат, или, другими словами, во вторую степень. Это может потребоваться для решения инженерных, математических и иных задач.
Несмотря на широкое применение данной математической функции, в том числе, в Excel, специальной формулы, которая позволяет возвести число в квадрат, в программе нет. Однако, есть общая формула для возведения числового значения в степень, с помощью которой можно легко посчитать и квадрат.
Как рассчитывается квадрат числа
Как мы помним из школьной программы, квадрат числа – это число, помноженное на само себя. В Excel для возведения числа в квадрат, разумеется, используется этот же принцип. И для решения этой задачи можно пойти двумя путями: воспользоваться формулой, включающей специальный символ степени “^”, либо применить функцию СТЕПЕНЬ.
Давайте рассмотрим оба метода на практике, чтобы понять, как они реализуются и какой из них проще и удобнее.
Формула для расчета квадрата числа
Этот способ, пожалуй, самый легкий и наиболее часто применяемый для получения квадратной степени числа в Эксель. Для расчета используется формула со специальным знаком “^”.
Сама формула выглядит следующим образом: =n^2.
где n – это число, квадратную степень которого требуется вычислить. Значение этого аргумента можно указать разными способами: в виде конкретного числа, либо указав адрес ячейки, которая содержит требуемое числовое значение.
Теперь давайте попробуем применить формулу на практике. В первом варианте мы пропишем в формуле непосредственно само число, квадратную степень которого необходимо вычислить.
- Для начала определяемся с ячейкой книги, в которой будет отображаться результат вычислений, и отмечаем ее левой кнопкой мыши. Затем пишем в ней формулу, не забывая в самом начале поставить знак “равно” (“=”) . Например, формула “=7^2″ означает, что мы хотим возвести в квадрат число 7. Формулу, кстати, можно прописать и в строке формул, предварительно выделив нужную ячейку.
- После того, как формула набрана, щелкаем клавишу Enter на клавиатуре, чтобы получить требуемый результат.
Теперь давайте рассмотрим второй вариант, в котором вместо конкретного числа в формуле мы укажем адрес ячейки, содержащей нужное число.
- Выбираем ячейку, где будет отображаться результат, и пишем в ней формулу. Как обычно, в начале ставим “=”. Затем щелкаем по ячейке, содержащей число, квадрат которого требуется получить (в нашем случае – это ячейка B3). Далее добавляем символ степени и цифру 2, означающую возведение во вторую степень. В итоге формула выглядит так: “=B3^2“.
- После этого нажимаем Enter для вывода результата в выбранной ячейке с формулой.
Примечание: данная формула применима не только для возведения числа в квадрат, но и в другие степени. В этом случае вместо цифры 2 мы пишем другую желаемую цифру. Например, формула “=4^3” возведет число 4 в третью степень или, другими словами, в куб.
Функция СТЕПЕНЬ для возведения числа в квадрат
В данном случае для нахождения квадрата числа нам поможет специальная функция под названием СТЕПЕНЬ. Эта функция относится к категории математических операторов и выполняет задачу по возведению указанного числа в заданную степень.
Формула данного оператора выглядит так: =СТЕПЕНЬ(число;степень).
Как мы видим, в данной формуле присутствует два аргумента: число и степень.
- “Число” – аргумент, который может быть представлен двумя способами. Можно прописать конкретное число, которое требуется возвести в степень, либо указать адрес ячейки с требуемым числом.
- “Степень” – аргумент, указывающий степень, в которую будет возводиться наше число. Так как мы рассматриваем возведение числа в квадрат, то указываем значение аргумента, равное цифре 2.
Давайте разберем применение функции СТЕПЕНЬ на примерах:
Способ 1. Указываем в качестве значения аргумента «Число» конкретную цифру
- Выбираем ячейку, в которой будем производить расчеты. Затем кликаем по кнопке “Вставить функцию” (с левой стороны от строки формул).
- Откроется окно Мастера функций. Кликаем по текущей категории и выбираем в открывшемся перечне строку “Математические”.
- Теперь нам нужно в предложенном списке функций найти и кликнуть по оператору “СТЕПЕНЬ”. Далее подтверждаем действие нажатием OK.
- Перед нами откроется окно с настройками двух аргументов функции, которое содержит, соответственно, два поля для ввода информации, после заполнения которых жмем кнопку OK.
- в поле “Число” пишем числовое значение, которое требуется возвести в степень
- в поле “Степень” указываем нужную нам степень, в нашем случае – 2.
- В результате проделанных действий мы получим квадрат заданного числа в выбранной ячейке.
Способ 2. Указываем в качестве значения аргумента «Число» адрес ячейки с числом
- Теперь у нас уже есть конкретное числовое значение в отдельно ячейке (в нашем случае – B3). Так же, как и в первом способе, выделяем ячейку, куда будет выводиться результат, нажимаем на кнопку “Вставить функцию” и выбираем оператор “СТЕПЕНЬ” в категории “Математические”.
- В отличие от первого способа, теперь вместо указания конкретного числа в поле “Число” указываем адрес ячейки, содержащей нужное число. Для этого кликаем сначала по полю аргумента, затем – по нужной ячейке. Значение поля “Степень” так же равно 2.
- Далее нажимаем кнопку OK и получаем результат, как и в первом способе, в ячейке с формулой.
Примечание: Также, как и в случае использования формулы для расчета квадрата числа, функцию СТЕПЕНЬ можно применять для возведения числа в любую степень, указав в значении аргумента “Степень” нужную цифру. Например, чтобы возвести число в куб, пишем цифру 3.
Далее жмем Enter и значение куба указанного числа появится ячейке с фукнцией.
Заключение
Возведение числа в квадрат – пожалуй, самое популярное математическое действие среди всех вычислений, связанных с расчетами различных степеней числовых значений. В Microsoft Excel данное действие можно выполнять двумя способами: с помощью специальной формулы или используя оператор под названием СТЕПЕНЬ.
В этой статье описаны синтаксис формулы и использование функции СУММКВ в Microsoft Excel.
Описание
Возвращает сумму квадратов аргументов.
Синтаксис
Аргументы функции СУММКВ описаны ниже.
Число1, число2. Аргумент «число1» является обязательным, последующие числа необязательные. От 1 до 255 аргументов, для которых вычисляется сумма квадратов. Вместо аргументов, разделенных точкой с запятой, можно использовать один массив или ссылку на массив.
Замечания
Аргументы могут быть либо числами, либо содержащими числа именами, массивами или ссылками.
Учитываются числа, логические значения и текстовые представления чисел, которые непосредственно введены в список аргументов.
Если аргумент является массивом или ссылкой, то учитываются только числа в массиве или ссылке. Пустые ячейки, логические значения, текст и значения ошибок в массиве или ссылке игнорируются.
Аргументы, которые представляют собой значения ошибки или текст, не преобразуемый в числа, вызывают ошибку.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Как в программе Эксель (Excel) сделать таблицу квадратов натуральных чисел?
Вот как она выглядит:
Какая формула должна использоваться?
Для выполнения задачи можно использовать функцию СЦЕПИТЬ. Вот пошаговое выполнение задания:
1) Создаем первую строку и первую колонку таблицы, заполняя её числами от 0 до 9. Получили каркас таблицы:
2) Заполняем ячейку «B2» используя формулу:
3) Закрепляем переменную «В1» c помощью символа «$» и растягиваем колонку «B» от ячейки «B2»:
4) Далее открепляем значение колонки «B» и закрепляем значение ряда «A» для каждого ряда таблицы, после чего растягиваем сами ряды:
5) Наслаждаемся результатом:
Если в столбце A записаны десятки, а в строке 1 записаны единицы , то таблица квадратов чисел начинается с ячейки B2 в которую записывается формула: значение из столбца A умножить на десять, прибавить значение из стоки 1 и результат возвести в квадрат.
Формула будет такой
Эта формула растягивается на весь диапазон таблицы по горизонтали и по вертикали.
Время, в Excel является числом, точнее, десятичной дробью меньше единицы. (Соответственно дата — число, больше единицы. А дата с временем — это сумма этих чисел.).
Что бы данное число смотрелось в клетке как Дата, или Время, или Дата с Временем — для этого необходимо задать определенный формат с свойствах ячейки (Втор. кл. мыши по ячейке — пункт «Формат Ячейки»). Следственно, над любой датой и над любым временем можно производить операции сложения и вычитания. Так же надо помнить, что в Excel есть функция (ВРЕМЯ()), которая преобразовывает три значения (часы,минуты,секунды) в специальную десятичную дробь, которая, по сути, является временем «чч:мм:сс», если изменить формат ячейки на «Время-13:30:55».
- Пусть в ячейке A1 у нас есть время «23:23:59», тогда
- Пусть, клетках B1,C1,D1 у нас будет количество часов,минут,секунд, (целые числа) которое мы хотим добавить к нашему времени.
- Для получения результата, запишем в клетке E1 формулу: =A1+ВРЕМЯ(B1;C1;D1)
График можно перенести как картинку обычным копированием.
Для того, что бы перенести график из EXCEL в Power Point. В Excel выделить график, выполнить «копировать», открываем Power Point, открываем нужный слайд, выполняем операцию «вставить».
Сохранить можно множеством способов:
1 — Горячие клавиши. Shift+F12 — сохранить. F12 — сохранить как.
Contrl + S — Сохранить.
2 — Нажав на клавишу альт и управляя стрелочками, выбрать нужное меню затем нажать копку Enter.
Чтобы уметь использовать макросы в excel нужно уметь программировать. Если вы программировать не умеете, то и макрос скорей всего написать не сможете.
Если вы берете макрос с интернета, то скорей всего там будет подробная инструкция что и куда надо вставить. Лично я не пользуюсь ими. Мне, как обычному пользователю, хватает стандартных команд в виде IF, SUMM и т.д.
В общем-то это просто делается. Когда копируете в буфер обмена содержимое ячейки (не важно с помощью меню, ленты или просто CTRL+C), то потом, когда в другую ячейку надо будет вставить только данные надо кликнуть по стрелочке расположенной рядом с кнопочкой в меню «Вставить». Там выпадет менюшка с запросом чтот именно вы хотите вставить. Если нет прямого указания (например, есть только иконки разные), то копайте глубже через пункт «Специальная вставка». Дальше думаю сами разберетесь.
Лично мне там нравится опция «Вставить ширину колонок». Часто, когда копируешь блок в новое место, в этом месте ширина колонок остается оригинальной, что сильно мешает восприятию информации. Так вот когда скопируешь туда ширины исходных колонок, все становится на свои места.
Нахождение суммы квадратов в Microsoft Excel может быть повторяющейся задачей. Наиболее очевидная формула требует ввода большого количества данных, хотя есть менее известный вариант, который приведет вас в то же место.
Нахождение суммы квадратов для нескольких ячеек
Начните новый столбец в любом месте электронной таблицы Excel и пометьте его. Здесь мы выведем решение наших квадратов. Квадраты не обязательно должны быть рядом друг с другом, как и секция вывода; это может быть где угодно на странице.
Введите следующую формулу в первую ячейку нового столбца:
Отсюда вы можете вручную добавить буквенно-цифровую комбинацию столбца и строки или просто щелкнуть мышью. Мы будем использовать мышь, которая автоматически заполняет этот раздел формулы ячейкой A2.
Добавьте запятую, а затем мы добавим следующий номер, на этот раз из B2. Просто введите B2 в формулу или щелкните соответствующую ячейку, чтобы заполнить ее автоматически.
Закройте скобки и нажмите «Enter» на клавиатуре, чтобы отобразить сумму обоих квадратов. В качестве альтернативы, если вы можете продолжить здесь, добавьте дополнительные ячейки, разделив каждую запятую в формуле.
Чтобы применить формулу к дополнительным ячейкам, найдите маленький залитый квадрат в ячейке, содержащей решение нашей первой проблемы. В этом примере это C2.
Щелкните квадрат и перетащите его до последней строки пар чисел, чтобы автоматически сложить сумму остальных квадратов.
Нахождение суммы квадратов всего для нескольких ячеек
В нашем столбце «Сумма квадратов», который мы создали в предыдущем примере, в данном случае C2, начните вводить следующую формулу:
В качестве альтернативы мы можем просто добавить числа вместо ячеек в формулу, так как в любом случае мы попадем в одно и то же место. Эта формула выглядит так:
Вы можете изменять эти формулы по мере необходимости, изменяя ячейки, добавляя дополнительные числа или находя сумму квадратов, которых даже нет в вашей книге. И хотя легче следовать приведенному выше руководству, используя формулу SUMSQ, чтобы найти решение для нескольких квадратов, часто проще просто ввести быструю формулу, подобную этой, если вы не будете повторять ее на протяжении всей книги.
7. Вычислить значение логического выражения, если X = Ложь, У = Истина, Z = Ложь: а) X и не (Z или У) или не Z; б) не X или X и (У или Z); в) (X или У … и не Z) и Z. 8. Вычислить значение логического выражения, если X = Истина, У = Ложь, Z = Ложь: а) не X или не У или не Z; б) (не X или не У) и (X или У); в) X» и У или X и Z или не Z. 9. Вычислить значение логического выражения, если А = Ложь, В = Ложь, С = Истина: а) (не А или не В) и не С; б) (не А или не В) и (А или В); в) А и В или А и С или не С ∝ВЫБРАТЬ ПРАВИЛЬНЫЙ ОТВЕТ∩
ВЫБРАТЬ ПРАВИЛЬНЫЙ ОТВЕТ 4. Вычислить значение логического выражения, если А = Истина, В = Ложь, С = Ложь: а) А или Б и не С; г) А и не В или С; б) не … А и не В; д) А и (не В или С); в) не (А и С) или В; е) А и (не (В или С)). 5. Вычислить значение логического выражения, если X = Ложь, У = Ложь, Z = Истина: а) X или У и не Z; г) X и не У или Z; б) не X и не У; д) X и (не У или Z); в) не (X и Z) или У; е) X и (не (У или Z)). 6. Вычислить значение логического выражения, если А — Истина, В = Ложь, С = Ложь: а) А или не (А и В) или С; б) не А или А и (В или С); в) (А или В и не С) и С.
1. Вычислить значение логического выражения, если X = Ложь, У = Истина, Z = Ложь: а) X или Z; б) X и У; в) X и Z. 2. Вычислить значение логического вы … ражения, если А = Истина, В = Ложь, С = Ложь: а) не А и В; б) А или не В; в) А и В или С. 3. Вычислить значение логического выражения, если X = Истина, У = Истина, Z = Ложь: а) не X и У; б) X или не У; в) X или У и Z ВЫБРАТЬ ОТВЕТ ПОЖАЛУЙСТА
Исполнители робот умеет перемещаться по лабиринтуНа Черчи Наму на плоскости, разбитые на клетки. Между соседними клетками может стоять стена, через ко … торый робот пройти не может. На бесконечном поле местности на длины отрезка стены неизвестно. Стена состоит из одного вертикального трёх равных горизонтальных отрезков (отрезки стены расположены буквой Е) Все отрезки Неизвестный длины. Робот находится в клетке, расположена непосредственно с лево от верхнего конца вертикального отрезка. Рисунке указан один из возможных способов расположения стены и робота .Напишите для робота алгорит, закрашиваю щи все клетки, расположенный на нижний в горизонтальном отрезком стены. Робот должен закрасить только клетки удовлетворяющий данном условия например для приведённого справа рисунка Робот должен закрасить следующие клетки
Базы данных Выбери тип поля, в котором могут храниться данные о количестве книг в библиотеке. — логический — денежный — числовой — текстовый
Какое значение получит переменная y после выполнения алгоритма? x:=5y:=2∗xy:=y+4y:=y∗xy:=y+5y:=y∗xy:=y+6
Сколько раз выполняется тело цикла в приведенных алгоритмах?
Дано масив: ‘процесор’, ‘команда’, ‘флешка’, ‘брелок’, ‘клавіатура’. Виконайте сортування його елементів в алфавітному порядку за допомогою методу виб … ору.(Python)
Источник
0 / 0 / 0 Регистрация: 28.01.2010 Сообщений: 8 |
|
1 |
|
08.10.2010, 10:09. Показов 3699. Ответов 5
1) Найти сумму кубов всех целых чисел от а до b (значения вводятся с клав, b=>a)
0 |
Skorp24 52 / 50 / 26 Регистрация: 15.06.2009 Сообщений: 390 |
||||
08.10.2010, 10:15 |
2 |
|||
1) Создайте Text1, Text2, Command1
На остальное у меня пока нет времени. Если через пару часиков никто не дополнит, то напишу.
1 |
0 / 0 / 0 Регистрация: 28.01.2010 Сообщений: 8 |
|
08.10.2010, 10:33 [ТС] |
3 |
спс !!
0 |
52 / 50 / 26 Регистрация: 15.06.2009 Сообщений: 390 |
|
08.10.2010, 14:42 |
4 |
2) А сам перечень не дан? 3) На мой взгляд, тут совсем без использования условной инструкции это осуществить нельзя. Должна быть хотя бы возможность определить сначала, какое число больше, чтобы соблюсти кратность с обоими.
0 |
gaw 6644 / 1511 / 169 Регистрация: 09.01.2010 Сообщений: 4,298 |
||||
08.10.2010, 22:01 |
5 |
|||
1 |
0 / 0 / 0 Регистрация: 28.01.2010 Сообщений: 8 |
|
08.10.2010, 22:09 [ТС] |
6 |
тут записано все что дано в задании ))
0 |
Создайте книгу Microsoft Excel и выполните следующие упражнения:
1. В квадратной матрице (таблице) размером 7 x 7 записаны числа. Определить сумму чисел, расположенных:
a. выше главной диагонали (главную диагональ матрицы образуют ячейки, соединяющие верхнюю левую и правую нижнюю ячейки);
b. ниже главной диагонали;
c. ниже побочной диагонали (побочную диагональ матрицы образуют ячейки, соединяющие верхнюю правую и нижнюю левую ячейки);
d. выше побочной диагонали.
2. Найти сумму кубов всех целых чисел от 10 до 20.
3. В области 12 районов. Известны количество жителей каждого района (в тысячах человек) и плотность населения в нем (тыс. чел./кв. км). Определить общую площадь территории области.
4. Подготовить ряд данных от 1 до 100 с шагом 2 и рассчитать параметр , где k–коэффициент вариации.
5. В диапазоне ячеек В1:В10 записаны 10 чисел. Определить, превышает ли их сумма число 100 или нет.
6. В диапазоне ячеек А2:Н2 записаны 8 целых чисел. Выяснить, оканчивается ли их сумма цифрой 5 или нет.
7. Оформить лист, на котором генерируются 30 случайных целых чисел, лежащих в диапазоне от 0 до 3 включительно, но выводятся в ячейках только нечетные числа.
8. Выяснить сколько нужно американских пинт жидкости, чтоб заполнить сосуд объёмом 1 галлон. Выполнить при помощи инженерных функций.
9. В районе проживают 7480 человек старше 17 лет. Из них высшее образование имеют 1290 человек, среднее – 4570, 9 классов – 1080, начальное – 540. Построить графическое изображение распределения людей по уровню образования.
10. Подготовить таблицу значений функции у= sin х, где х меняется от 0 до 6.5 с шагом 0,5, и построить график этой функции.
Microsoft постоянно добавляет в Excel новые возможности в части анализа и визуализации данных. Работу с информацией в Excel можно представить в виде относительно независимых трех слоев:
- «правильно» организованные исходные данные
- математика (логика) обработки данных
- представление данных
Рис. 1. Анализ данных в Excel: а) исходные данные, б) мера в Power Pivot, в) дашборд; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке
Скачать заметку в формате Word или pdf, примеры в формате Excel
Функции кубов и сводные таблицы
Наиболее простым и в тоже время очень мощным средством представления данных являются сводные таблицы. Они могут быть построены на основе данных, содержащихся: а) на листе Excel, б) кубе OLAP или в) модели данных Power Pivot. В последних двух случаях, помимо сводной таблицы, можно использовать аналитические функции (функции кубов) для формирования отчета на листе Excel. Сводные таблицы проще. Функции кубов сложнее, но предоставляют больше гибкости, особенно в оформлении отчетов, поэтому они широко применяются в дашбордах.
Дальнейшее изложение относится к формулам кубов и сводным таблицам на основе модели Power Pivot и в нескольких случаях на основе кубов OLAP.
Простой способ получить функции кубов
Когда (если) вы начинали изучать код VBA, то узнали, что проще всего получить код, используя запись макроса. Далее код можно редактировать, добавить циклы, проверки и др. Аналогично проще всего получить набор функций кубов, преобразовав сводную таблицу (рис. 2). Встаньте на любую ячейку сводной таблицы, перейдите на вкладку Анализ, кликните на кнопке Средства OLAP, и нажмите Преобразовать в формулы.
Рис. 2. Преобразование сводной таблицы в набор функций куба
Числа сохранятся, причем это будут не значения, а формулы, которые извлекают данные из модели данных Power Pivot (рис. 3). Получившуюся таблицу вы может отформатировать. В том числе, можно удалять и вставлять строки и столбцы внутрь таблицы. Срез остался, и он влияет на данные в таблице. При обновлении исходных данных числа в таблице также обновятся.
Рис. 3. Таблица на основе формул кубов
Функция КУБЗНАЧЕНИЕ()
Это, пожалуй, основная функция кубов. Она эквивалентна области Значения сводной таблицы. КУБЗНАЧЕНИЕ извлекает данные из куба или модели Power Pivot, и отражает их вне сводной таблицы. Это означает, что вы не ограничены пределами сводной таблицы и можете создавать отчеты с бесчисленными возможностями.
Написание формулы «с нуля»
Вам не обязательно преобразовывать готовую сводную таблицу. Вы можете написать любую формулу куба «с нуля». Например, в ячейку С10 введена следующая формула (рис. 4):
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; «[Products].[Category].[All].[Bikes]» ) |
Рис. 4. Функция КУБЗНАЧЕНИЕ() в ячейке С10 возвращает продажи велосипедов за все годы, как и в сводной таблице
Маленькая хитрость. Чтобы удобнее было читать формулы кубов, желательно, чтобы в каждой строке помещался только один аргумент. Можно уменьшить окно Excel. Для этого кликните на значке Свернуть в окно, находящемся в правом верхнем углу экрана. А затем отрегулируйте размер окна по горизонтали. Альтернативный вариант – принудительно переносить текст формулы на новую строку. Для этого в строке формул поставьте курсор в том месте, где хотите сделать перенос и нажмите Alt+Enter.
Рис. 5. Свернуть окно
Синтаксис функции КУБЗНАЧЕНИЕ()
Справка Excel абсолютно точна и абсолютно бесполезна для начинающих:
КУБЗНАЧЕНИЕ(подключение; [выражение_элемента1]; [выражение_элемента2]; …)
Подключение – обязательный аргумент; текстовая строка, представляющая имя подключения к кубу.
Выражение_элемента – необязательный аргумент; текстовая строка, представляющая многомерное выражение, которое возвращает элемент или кортеж в кубе. Кроме того, «выражение_элемента» может быть множеством, определенным с помощью функции КУБМНОЖ. Используйте «выражение_элемента» в качестве среза, чтобы определить часть куба, для которой необходимо возвратить агрегированное значение. Если в аргументе «выражение_элемента» не указана мера, будет использоваться мера, заданная по умолчанию для этого куба.
Прежде, чем перейти к объяснению синтаксиса функции КУБЗНАЧЕНИЕ, пару слов о кубах, моделях данных, и загадочном кортеже.
Некоторые сведения о кубах OLAP и моделях данных Power Pivot
Кубы данных OLAP (Online Analytical Processing — оперативный анализ данных) были разработаны специально для аналитической обработки и быстрого извлечения из них данных. Представьте трехмерное пространство, где по осям отложены периоды времени, города и товары (рис. 5а). В узлах такой координатной сетки расположены значения различных мер: объем продаж, прибыль, затраты, количество проданных единиц и др. Теперь вообразите, что измерений десятки, или даже сотни… и мер тоже очень много. Это и будет многомерный куб OLAP. Создание, настройка и поддержание в актуальном состоянии кубов OLAP – дело ИТ-специалистов.
Рис. 5а. Трехмерный куб OLAP
Аналитические формулы Excel (формулы кубов) извлекают названия осей (например, Время), названия элементов на этих осях (август, сентябрь), значения мер на пересечении координат. Именно такая структура и позволяет сводным таблицам на основе кубов и формулам кубов быть столь гибкими, и подстраиваться под нужды пользователей. Сводные таблицы на основе листов Excel не используют меры, поэтому они не столь гибки в целях анализа данных.
Power Pivot – относительно новая фишка Microsoft. Это встроенная в Excel и отчасти независимая среда с привычным интерфейсом. Power Pivot значительно превосходит по своим возможностям стандартные сводные таблицы. Вместе с тем, разработка кубов в Power Pivot относительно проста, а самое главное – не требует участия ИТ-специалиста. Microsoft реализует свой лозунг: «Бизнес-аналитику – в массы!». Хотя модели Power Pivot не являются кубами на 100%, о них также можно говорить, как о кубах (подробнее см. вводный курс Марк Мур. Power Pivot и более объемное издание Роб Колли. Формулы DAX для Power Pivot).
Основные компоненты куба – это измерения, иерархии, уровни, элементы (или члены; по-английски members) и меры (measures). Измерение – основная характеристика анализируемых данных. Например, категория товаров, период времени, география продаж. Измерение – это то, что мы можем поместить на одну из осей сводной таблицы. Каждое измерение помимо уникальных значений включает элемент [ALL], выполняющий агрегацию всех элементов этого измерения.
Измерения построены на основе иерархии. Например, категория товаров может разбиваться на подкатегории, далее – на модели, и наконец – на названия товаров (рис. 5б) Иерархия позволяет создавать сводные данные и анализировать их на различных уровнях структуры. В нашем примере иерархия Категория включает 4 Уровня.
Рис. 5б. Иерархия категорий товаров
Элементы (отдельные члены) присутствуют на всех уровнях. Например, на уровне Category есть четыре элемента: Accessories, Bikes, Clothing, Components. Другие уровни имеют свои элементы.
Меры – это вычисляемые значения, например, объем продаж. Меры в кубах хранятся в собственном измерении, называемом [Measures] (см. ниже рис. 9). Меры не имеют иерархий. Каждая мера рассчитывает и хранит значение для всех измерений и всех элементов, и нарезается в зависимости от того, какие элементы измерений мы поместим на оси. Еще говорят, какие зададим координаты, или какой зададим контекст фильтра. Например, на рис. 5а в каждом маленьком кубике рассчитывается одна и та же мера – Прибыль. А возвращаемое мерой значение зависит от координат. Справа на рисунке 5а показано, что Прибыль (в трех координатах) по Москве в октябре на яблоках = 63 000 р. Меру можно трактовать, и как одно из измерений. Например, на рис. 5а вместо оси Товары, разместить ось Меры с элементами Объем продаж, Прибыль, Проданные единицы. Тогда каждая ячейка и будет каким-то значением, например, Москва, сентябрь, объем продаж.
Кортеж – несколько элементов разных измерений, задающие координаты по осям куба, в которых мы рассчитываем меру. Например, на рис. 5а Кортеж = Москва, октябрь, яблоки. Также допустимый кортеж – Пермь, яблоки. Еще один – яблоки, август. Не вошедшие в кортеж измерения присутствуют в нем неявно, и представлены членом по умолчанию [All]. Таким образом, ячейка многомерного пространства всегда определяется полным набором координат, даже если некоторые из них в кортеже опущены. Нельзя включить два элемента одного измерения в кортеж, не позволит синтаксис. Например, недопустимый кортеж Москва и Пермь, яблоки. Чтобы реализовать такое многомерное выражение потребуется набор двух кортежей: Москва и яблоки + Пермь и яблоки.
Набор элементов – несколько элементов одного измерения. Например, яблоки и груши. Набор кортежей – несколько кортежей, каждый из которых состоит из одинаковых измерений в одной и той же последовательности. Например, набор из двух кортежей: Москва, яблоки и Пермь, бананы.
Автозавершение в помощь
Вернемся к синтаксису функции КУБЗНАЧЕНИЕ. Воспользуемся автозавершением. Начните ввод формулы в ячейке:
=КУБЗНАЧЕНИЕ("
Excel предложит все доступные в книге Excel подключения:
Рис. 6. Подключение к модели данных Power Pivot всегда называется ThisWorkbookDataModel
Рис. 7. Подключения к кубам
Продолжим ввод формулы (в нашем случае для модели данных):
=КУБЗНАЧЕНИЕ("
ThisWorkbookDataModel"
;"
Автозавершение предложит все доступные таблицы и меры модели данных:
Рис. 8. Доступные элементы первого уровня – имена таблиц и набор мер (выделен)
Выберите значок Measures. Поставьте точку:
=КУБЗНАЧЕНИЕ("
ThisWorkbookDataModel"
;"
[Measures].
Автозавершение предложит все доступные меры:
Рис. 9. Доступные элементы второго уровня в наборе мер
Выберите меру [Total Sales]. Добавьте кавычки, закрывающую скобку, нажмите Enter.
=КУБЗНАЧЕНИЕ("
ThisWorkbookDataModel"
;"
[Measures].[Total Sales]"
)
Рис. 10. Формула КУБЗНАЧЕНИЕ в ячейке Excel
Аналогичным образом можете добавить третий аргумент в формулу:
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; «[Products].[Category].[All].[Bikes]» ) |
В итоге формула возвращает продажи по категории Велосипеды (рис. 11). Автозавершение фактически ведет нас по иерархии модели данных:
- название самой модели
- название таблицы (или набор мер – Measures)
- название иерархии/столбца (или имя меры)
- общий итог по столбцу – [All]
- название элемента столбца
Чтобы правильно сослаться на элемент измерения, необходимо описать полный путь к нему по иерархии, начиная с самого верхнего уровня, например: [Products].[Category].[All].[Bikes]. Однако если имя члена уникально в пределах какой-то иерархии, то эту иерархию можно опустить. Если имя уникально в кубе, то можно опустить все промежуточные уровни (рис. 11). В тоже время лучшая практика заключается в том, чтобы оставить на месте все уровни. Это делает формулу более информативной.
Рис. 11. Общие продажи велосипедов; необязательные уровни
Если вы хотите, чтобы формула куба фильтровалась срезом, продолжите набор формулы: введите точку с запятой и продолжайте вводить сре… Выпадет список автозавершения для всех срезов в книге. Выберите один из них, и теперь эта ячейка будет фильтроваться в соответствии с текущими установками этого среза (в качестве аргументов функции КУБЗНАЧЕНИЕ вы можете последовательно добавить несколько срезов).
Рис. 12. Автозавершение предлагает все имеющиеся в модели срезы
В примерах выше выпадающий список появлялся после ввода двух символов:
"
открывающие кавычки – в начале каждого аргумента; предлагаются доступные подключения, измерения/таблицы, набор мер;
. точка – после закрывающей прямоугольной скобки; предлагает элементы следующего уровня иерархии.
На самом деле, автозавершение срабатывает и после нескольких других символов. Мы рассмотрим их позже.
Режим автозавершения работает не только при наборе формул. В него можно перейти и для редактирования готовой формулы. Для этого встаньте на ячейку с формулой. Нажмите F2. Вы перейдете в режим редактирования формул (1 на рис. 12а). В левом нижнем углу окна Excel появится надпись Правка (2). Переместите курсор в интересующее вас место формулы (3). Или вместо шагов 1–3 сразу установите курсор в строке формул (4). Нажмите комбинацию клавиш Alt + стрелка вниз. Выпадающий динамический список отразит доступные опции. Обратите внимание, что в другой позиции курсора список иной (5).
Рис. 12а. Работа автозавершения при редактировании формул
Составные строки в качестве аргументов
Аргументы функции КУБЗНАЧЕНИЕ – текстовые строки (кроме срезов). Т.е., аргумент должен быть взят в кавычки, или содержать ссылку на ячейку, возвращающую текстовую строку. Текстовую строку также можно набрать из кусочков, соединенных оператором конкатенации &. Например,
Рис. 13. Аргумент, набранный из нескольких текстовых строк, сцепленных вместе
Кавычки (1 и 2) выделяют первый фрагмент текстовой строки. Знаки конкатенации (3 и 5) – операторы Excel, каждый из них соединяет предыдущий и последующий текстовые фрагменты. Ссылка на ячейку $Е$11 возвращает текст Bikes. Последний фрагмент текстовой строки ] взят в кавычки (6 и 7), поскольку это текст. Результат сцепки фрагментов – "
[Products].[Category].[Bikes]"
.
Изучая формулы в Интернете я заметил, что многие авторы отделяют имена столбцов от конкретного значения знаком &. Например:
"
[Products].[Category].[All].&[Bikes]"
Здесь этот знак необязателен. Я предполагаю, что наличие & является признаком хорошего стиля (или традиции), упрощающего чтение формулы. Причем & здесь не оператор конкатенации, а просто текстовый символ (поскольку находится между открывающими и закрывающими кавычками). Этот знак обрабатывается уже внутри модели Power Pivot, и не мешает распознать, к какому элементу обращается формула. Знак конкатенации в других частях аргумента возвращает ошибку:
"
[Products].&[Category].[All].[Bikes]"
"
[Products].[Category].&[All].[Bikes]"
Знак & также возвращает ошибку (в любом месте текстовой строки) при обращении к кубу OLAP. Т.е., Power Pivot «проглатывает» & в «правильном» месте, а куб OLAP – нет.
Возможно, использование знака & восходит к функции ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ (см. ниже), где он является обязательным, и отделяет последний фрагмент внутри каждого из аргументов: элемент1, элемент2, …
Еще одна версия, & – элемент языка MDX (подробнее см. ниже), в котором к члену иерархии можно обратиться несколькими способами. Например:
[Calendar].[CY 2004].[H1 CY 2004].[Q1 CY 2004]
[Calendar].[Calendar Quarter].&[2004].&[1]
В первом варианте обращение к члену иерархии происходит через указание полного пути и полных имен членов на этом пути. Во втором варианте к члену иерархии обращаются по ключу в форме &[ЧастьИмени]. При использовании пути по ключу всегда используется символ & перед ключевыми частями имени члена.
Обязательные и необязательные аргументы
В справке MS по синтаксису функции КУБЗНАЧЕНИЕ указано, что обязательный аргумент один – Подключение. Формально это правильно, но… Если никаких аргументов более нет, а для куба не указана мера по умолчанию, то функция КУБЗНАЧЕНИЕ вернет пустоту (рис. 14). В модели данных Power Pivot меру по умолчанию, похоже, задать нельзя (для куба OLAP такая возможность есть). Так что, в общем случае нужно как минимум два аргумента – Подключение и Мера, чтобы было, что подсчитать и возвратить. Все остальные аргументы задают координаты куба (кортеж), для которых будет рассчитана мера.
Рис. 14. Одного аргумента в функции КУБЗНАЧЕНИЕ, как правило, мало
Это не является обязательным, но хороший стиль будет заключаться в том, чтобы сразу после Подключения указывать Меру, и лишь затем иные аргументы. И, естественно, не допускается указание более одной меры. Итак, более понятно синтаксис функции КУБЗНАЧЕНИЕ можно записать так:
КУБЗНАЧЕНИЕ(подключение; мера[; элемент1] [; элемент2] …)
Подключение – обязательный аргумент – текстовая строка, имя подключения к кубу.
Мера – обязательный аргумент – текстовая строка, имя меры.
Элемент1, Элемент2, … – необязательные аргументы; каждый из них – имя среза или текстовая строка, описывающая элемент измерения или кортеж в кубе. Мера будет рассчитана на совокупности всех элементов и кортежей, перечисленных в аргументах.
Два метода записи формул
Формулы на основе КУБЗНАЧЕНИЕ могут быть длинными и трудными для понимания и записи. Используют два основных метода:
- ссылки на ячейки
- полный путь к элементу куба
Преобразование сводной таблицы в формулы использует первый метод (см. строку формул на рис. 3). Например,
=КУБЗНАЧЕНИЕ("
ThisWorkbookDataModel"
;$B3;C$2;Срез_Category)
Обратите внимание на смешанный тип ссылок: $B3 и C$2. Такой подход позволяет протягивать формулу по строкам и столбцам таблицы отчета. В ячейках же B3 и C2 содержатся формулы КУБЭЛЕМЕНТ(), ссылающиеся на элементы модели данных, соответствующие заголовкам строк и столбцов таблицы:
Рис. 15. Формулы КУБЭЛЕМЕНТ() в заголовках строк и столбцов таблицы
Обратите внимание, что в таблице заголовки в ячейках В3 и С2 не могут быть представлены текстовыми строками, например, «2001» и «Total Sales». Если так, то КУБЭЛЕМЕНТ не поймет, что это элементы модели данных. Чтобы КУБЭЛЕМЕНТ справился c таким написанием, используйте второй метод записи формул, указывая полный путь к элементу куба/модели данных. При этом, часть пути может быть описана в виде ссылок на ячейки (в стиле, как на рис. 13). Формула в ячейке С3 примет вид:
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Calendar].[CalendarYear].[All].[«&$B3&«]»; «[Measures].[«&C$2&«]»; Срез_Category ) |
Рис. 16. Формула КУБЭЛЕМЕНТ(), когда в заголовках строк и столбцов текст
Плюсы и минусы двух методов. В методе ссылок формула короче. Метод легко использовать, если на листе уже есть элементы таблицы, на основе формул КУБЭЛЕМЕНТ. Однако метод не позволяет, глядя на формулу КУБЗНАЧЕНИЕ, понять, какие измерения и элементы задают координаты для вычисления меры. Для прояснения ситуации нужно перейти в ячейки, на которые ссылается формула. Метод полного пути не требует перехода в другие ячейки для аудита формулы. Правда, формулы становятся длинными, что затрудняет чтение и запись.
Если вы создаете дашборд с большим количеством мест для пользовательского ввода (срезы, выпадающие списки и т.д.) тогда метод ссылок может оказаться лучше. Метод полного пути будет лучше для статичных отчетов, которые незначительно меняются с течением времени.
Преобразование ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ в КУБЗНАЧЕНИЕ
Это еще один быстрый способ получить выражение аргументов функции КУБЗНАЧЕНИЕ. Когда вы начинаете вводить формулу "
= "
, а затем кликаете на ячейку в сводной таблице, автоматически появляется функция ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ (при соответствующих настройках Excel). Если источником сводной таблицы является модель данных Power Pivot, формула ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ будет содержать элементы модели данных.
Синтаксис функций ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ и КУБЗНАЧЕНИЕ немного отличается, поэтому надо удалить кое-что лишнее (удаляемое выделено).
ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ(поле_данных; сводная_таблица; [поле1; элемент1]; [поле2; элемент2]; …)
КУБЗНАЧЕНИЕ(подключение;[выражение_элемента1];[выражение_элемента2];…)
Вот пошаговое руководство по преобразованию:
Шаг 1. Введите "
= "
в ячейке, затем щелкните ячейку в сводной таблице. Будет создана формула ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ.
Рис. 17. Наберите в ячейке Е10 "
= "
, кликните на ячейку С5
Шаг 2. Скопируйте весь текст между открывающей и закрывающей скобками в буфер.
Шаг 3. В другой ячейке введите =КУБЗНАЧЕНИЕ(«… Автозавершение предложит модель данных. Выберите.
Шаг 4. Вставьте текст из буфера.
Шаг 5. Отредактируйте текст. Функция…
=ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ( «[Measures].[Total Sales]»; $B$2; «[Products].[Category]»;«[Products].[Category].&[Bikes]»; «[Calendar].[CalendarYear]»;«[Calendar].[CalendarYear].&[2002]» ) |
…превращается в…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; «[Products].[Category].&[Bikes]»; «[Calendar].[CalendarYear].&[2002]» ) |
Шаг 6. Нажмите Enter.
Окно аргументов функции КУБЗНАЧЕНИЕ
Провести аудит функции КУБЗНАЧЕНИЕ можно и в окне Аргументы функции. Находясь в ячейке с формулой КУБЗНАЧЕНИЕ, кликните значок fx в строке формул. Откроется окно (рис. 18). Иногда аргументы такие длинные, что они целиком не помещаются в поле. К сожалению, Microsoft не предусмотрел возможность изменять размер этого окна.
Рис. 18. Окно Аргументы функции
По одному элементу за раз
Функции КУБЗНАЧЕНИЕ может обрабатывать по одному элементу группы за раз. Если вам нужно получить данные по двум элементам группы (например, продажи красных и серебристых велосипедов), формула типа…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; «[Products].[Color].[All].[Red]|[Silver]» ) |
…или что-то подобное работать не будет (здесь оператор | соответствует логическому ИЛИ). Но можно просто сложить две функции:
Рис. 19. Продажи красных И серебристых велосипедов
На самом деле всё не так плохо, и мы вернемся к этому вопросу ниже.
Функция КУБЭЛЕМЕНТ()
Возвращает элемент (координату по одному измерению) или кортеж (набор координат по разным измерениям) из куба. Синтаксис:
КУБЭЛЕМЕНТ(подключение; выражение_элемента [; подпись])
Подключение – обязательный аргумент; текстовая строка, имя подключения к кубу.
Выражение_элемента – обязательный аргумент; текстовая строка, описывающая элемент в кубе или кортеж.
Подпись – необязательный аргумент; текстовая строка, которая отображается в ячейке вместо элемента измерения из куба.
С первыми двумя вы уже знакомы, а смысл третьего аргумента поясним на примере:
Рис. 20. Аргумент Подпись
При этом, любая мера в формуле КУБЗНАЧЕНИЕ вернет одинаковое значение при ссылке на ячейки А2 и В2. Это связано с тем, что КУБЗНАЧЕНИЕ, обращаясь к функции КУБЭЛЕМЕНТ, запрашивает второй аргумент, и не интересуется третьим.
КУБЭЛЕМЕНТ позволяет в аргументе Выражение_элемента указать кортеж. Последний берется в фигурные скобки:
Рис. 21. Аргумент Выражение_элемента в виде кортежа
Я не нашел объяснение такому синтаксису, и он отличается от стандартного для кортежей, который будет описан ниже.
Если аргумент Подпись отсутствует, в ячейке отражается последний элемент кортежа. На рис. 21 это было бы Bikes.
Если вам кажется, что составление таких формул отнимает много времени, попробуйте метод ссылок на ячейки. Функция КУБЭЛЕМЕНТ() допускает ссылку на диапазон ячеек:
Рис. 22. Аргумент Выражение_элемента в виде ссылки на диапазон ячеек
В качестве аргументов функций КУБ() можно использовать другие функции, возвращающие «правильный» тип данных (часто это текстовые строки). Например, формула…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; КУБЭЛЕМЕНТ(«ThisWorkbookDataModel»; {«[Products].[Color].[All].[Red]»; «[Products].[Category].[All].[Bikes]»} ) ) |
…вернет продажи красных велосипедов.
Функции КУБЗНАЧЕНИЕ и КУБЭЛЕМЕНТ имеют ряд ограничений. Во-первых, любая иерархия может присутствовать на осях отчета только один раз. Поэтому если элемент куба в функции КУБЭЛЕМЕНТ() определяется с помощью кортежа, то присутствующие в нем измерения уже не могут применяться в КУБЗНАЧЕНИЕ(). Например, на рис. 22, если в ячейке В6 набрать формулу…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; A5; «[Calendar].[CalendarYear].[All].[2003]» ) |
…она вернет ошибку #ЗНАЧ! Это связано с тем, что измерение [Calendar].[CalendarYear] в последнем аргументе уже присутствует неявно в А5.
Во-вторых, функции КУБЗНАЧЕНИЕ и КУБЭЛЕМЕНТ являются статическими. Т.е., при обновлении исходных данных эти функции не подхватят вновь появившиеся элементы (новую модель, или новые даты; в отличие от сводной таблицы, которая отразит новые элементы).
Семейство функций КУБ()
КУБЗНАЧЕНИЕ и КУБЭЛЕМЕНТ являются основными и, если так можно выразиться, естественными функциями кубов. Именно они появляются на листе Excel после преобразования сводной таблицы в формулы. По большому счету, их достаточно, чтобы извлечь значения мер и координаты измерений из куба. Остальные функции КУБ() являются вспомогательными, упрощают работу с наборами, ячейками листа, позволяют обновлять отчет при добавлении новых элементов и т.п. Вот полный перечень функций кубов:
Рис. 23. Список аналитических функций Excel (функций кубов)
Функция КУБМНОЖ()
Возвращает набор элементов или набор кортежей для их последующего использования в других функциях КУБ(). На вход КУБМНОЖ подаются аргументы в виде ссылок на ячейки Excel, или текстовых строк. На выходе – массив. Синтаксис:
КУБМНОЖ(подключение;выражение_множества;[подпись];[порядок_сортировки];[сорт_по])
Выражение_множества – обязательный аргумент; текстовая строка, задающая условия, какие наборы элементов (кортежей) извлечь из куба. Если Выражение_множества содержит более 255 символов, что является предельной длиной для аргументов функции, КУБМНОЖ возвращает ошибку #ЗНАЧ!. Для использования текстовых строк длиной свыше 255 символов введите строку в ячейку, а затем используйте ссылку на ячейку в качестве аргумента.
Подпись – необязательный аргумент; текстовая строка, отображаемая в ячейке вместо подписи из куба. Поскольку функция возвращает массив, в ячейке ничего не отражается. Присвойте аргументу Подпись значение, чтобы не «потерять» ячейку с функцией КУБМНОЖ.
Порядок_сортировки – необязательный аргумент; тип сортировки; цифры от нуля до шести (в английской версии Excel могут использоваться также смысловые константы); значение по умолчанию 0; при сортировке кортежей выполняется сортировка по последнему элементу кортежа. Значения 1 и 2 требуют наличия аргумента Сорт_по. Если его нет, то функция вернет ошибку. Остальные значения не требуют аргумента Сорт_по, а если он присутствует, то игнорируется.
Рис. 24. Порядок сортировки элементов/кортежей, возвращаемых функцией КУБМНОЖ
Сорт_по – необязательный аргумент; текстовая строка – мера, по которой нужно выполнить сортировку.
Синтаксис функций КУБ() это синтаксис MDX
На мой взгляд, самое загадочное в всей этой истории – это синтаксис формул куба, который довольно сильно отличается от стиля, принятого в Excel. Это связано с тем, что формулы куба унаследовали язык запросов к многомерным данным MDX (MultiDimensional eXpressions), который давно используют разработчики OLAP-кубов.
Чтобы правильно сослаться на элемент измерения, необходимо описать полный путь к нему по иерархии измерения, начиная с самого верхнего уровня, например:
[Products].[Category].[All].[Clothing]
У каждого измерения существует член по умолчанию, который используется в случае, если описание измерения в явном виде в запросе отсутствует. В роли элемента по умолчанию выступает элемент [All], который добавляется автоматически при создании измерения и содержит совокупные результаты по всем элементам измерения.
Я уже писал о двух символах, поддерживающих режим автозавершения: кавычки и точка (см. пояснения после рис. 12). Добавим еще три символа в эту коллекцию. Вспомните, что кортеж – совокупность элементов разных измерений, определяющая координаты точки в многомерном пространстве, для которой вычисляется мера. Например,
Элемент1а = [Products].[Color].[All].[Red]
Элемент1б = [Products].[Category].[All].[Bikes]
Кортеж1 = ([Products].[Color].[All].[Red],[Products].[Category].[All].[Bikes])
Обратите внимание! Элементы кортежа разделены запятой, а не точкой с запятой. Попробуйте в режиме автозавершения набрать формулу…
=КУБМНОЖ("
ThisWorkbookDataModel"
;"
([Products].[Color].[All].[Red]
…если вы продолжите точкой с запятой, автозавершение будет безмолвствовать (рис. 24а). Если же вы поставите запятую, автозавершение предложит варианты:
Рис. 24а. Запятая, разделяющая элементы кортежа; точка с запятой не работает
Набор – совокупность элементов или кортежей одинаковой структуры. Если кортеж выделяется круглыми скобками, то набор – фигурными. Вот как выглядит формула, использующая в качестве Выражения_множества набор из двух элементов:
=КУБМНОЖ(«ThisWorkbookDataModel»; «{[Products].[Color].[All].[Red], [Products].[Color].[All].[Silver]}»; «Набор из двух элементов» ) |
Обратите внимание! Если в кортеже объединяются элементы разных измерений, то в наборе элементы принадлежат одному измерению.
Еще сложнее формула, использующая в качестве Выражения_множества набор из двух кортежей:
Рис. 24б. Аргумент Выражения_множества в виде набора кортежей
Формула также может быть набрана из частей. Например так:
Рис. 24в. Аргумент Выражения_множества набран из фрагментов текста и ссылок на ячейки
Может быть запись второго аргумента – "
{"
&E15&"
,"
&E16&"
}"
– будет понятнее, если вместо конкатенации использовать функцию СЦЕПИТЬ:
Рис. 24г. Аргумент Выражения_множества на основе функции СЦЕПИТЬ
Ранее я описал особый синтаксис, который поддерживается функцией КУБЭЛЕМЕНТ (см. рис. 21). КУМНОЖ такой синтаксис не поддерживает…
Рис. 24д. Альтернативный (слева) и стандартный (справа) синтаксис кортежа в аргументе функции КУБЭЛЕМЕНТ
Порядок перечисления измерений и мер в кортеже не имеет существенного значения. Но лучше начать с меры. Синтаксис функций кубов поддерживает выражения на языке MDX. Ниже в примерах я покажу несколько таких трюков. Множество можно не заключать в фигурные скобки, если оно является результатом функции MDX, например:
=КУБМНОЖ(«ThisWorkbookDataModel»; «[Products].[Color].children»; «Результат функции MDX» ) |
Здесь множество [Products].[Color].children возвращает названия всех цветов.
Нельзя располагать одно и то же измерение по разным осям отчета, поскольку такая операция лишена смысла.
Вот полный список символов вызывающих автозавершение:
"
открывающие кавычки – в начале каждого аргумента; показывают доступные подключения, измерения/таблицы, набор мер;
. точка – после закрывающей прямоугольной скобки; показывает следующие элементы иерархии;
( открывающая круглая скобка – после: а) открывающих кавычек, б) открывающей фигурной скобки, в) запятой – в текстовой строке с многомерными выражениями; говорит о начале кортежа;
, запятая – после закрывающей прямоугольной скобки в текстовой строке с многомерными выражениями; отделяет вторую часть кортежа;
{ открывающая фигурная скобка – после открывающих кавычек в текстовой строке с многомерными выражениями; обозначает начало набора элементов или кортежей;
: двоеточие – после закрывающей прямоугольной скобки в текстовой строке с многомерными выражениями; отделяет начальное значение от конечного, как в обычной ссылке Excel А2:А9.
КУБМНОЖ возвращает массив элементов на основе данных на листе Excel
С помощью КУБМНОЖ можно обойти ограничение функции КУБЗНАЧЕНИЕ (см. рис. 19), которая в качестве аргумента Элемент1 могла «кушать» по одному элементу за раз. Например, мы хотим подсчитать продажи красных велосипедов с 1 по 6 июля 2001 г.
Для начала посмотрим в каком формате эти даты хранятся в кубе. Для этого начните набирать…
=КУБМНОЖ("
ThisWorkbookDataModel"
;"
[Calendar].[Date].[All].
…автозавершение предложит варианты:
Рис. 25. Автозавершение покажет формат дат в кубе
Формат даты – "
М/Д/ГГГГ"
. Теперь разместим на листе Excel столбец с интересующими нас датами (в любом удобно для нас формате, см. 1 на рис. 26). Поскольку КУБМНОЖ в качестве аргумента Выражение_множества требует текстовую строку, мы формируем таковую на основе конкатенации текстовых фрагментов и функции ТЕКСТ (2):
{=КУБМНОЖ(«ThisWorkbookDataModel»; «[Calendar].[Date].[All].[«&ТЕКСТ(A1:A6;«М/Д/ГГГГ»)&«]»; «множ» )} |
Вводим формулу в ячейку, как формулу массива. В ячейке хранится массив дат, а отображается текст, введенный нами в аргумент Подпись – множ (2). Любопытно, что диапазон А1:А6 должен быть или в одну строку или в один столбец. Прямоугольный диапазон возвращает ошибку.
Рис. 26. КУБМНОЖ позволяет сформировать массив элементов, передаваемых на ось для вычисления меры в функции КУБЗНАЧЕНИЕ
Формула с КУБЗНАЧЕНИЕ (3)…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; B1; «[Products].[Color].[All].[Red]»; «[Products].[Category].[All].[Bikes]» ) |
…возвращает меру [Total Sales] для красных велосипедов, проданных в период, сформированный в ячейке В1.
И наконец, с помощью сводной таблицы (4) проверяем полученное значение.
Более того, функция КУБМНОЖ() дает возможность ввести первую и последнюю ячейки диапазона, разделив их двоеточием:
=КУБМНОЖ(«ThisWorkbookDataModel»; «{[Calendar].[Date].[All].[«&ТЕКСТ(A1;«М/Д/ГГГГ»)&«]: [Calendar].[Date].[All].[«&ТЕКСТ(A6;«М/Д/ГГГГ»)&«]}»; «множ» ) |
Формула вернет тот же массив дат с 1 по 6 июля 2001 г.
Функция КУБПОРЭЛЕМЕНТ()
Возвращает n-й элемент множества. Используется для возвращения одного или нескольких элементов в множестве, например, лучшего продавца или 10 лучших студентов. Синтаксис:
КУБПОРЭЛЕМЕНТ(подключение;выражение_множества;ранг;[подпись])
Выражение_множества – обязательный аргумент; текстовая строка, представляющая выражение множества, например, "
[Products].[Category].[All].children"
. Здесь используется выражение MDX children, означающее все уникальные имена таблицы [Products], столбца [Category]. Выражение_множества также может быть функцией КУБМНОЖ или ссылкой на ячейку, содержащую функцию КУБМНОЖ. Например, КУБМНОЖ может возвращать массив категорий продуктов, отсортированных, по убыванию по объему продаж.
Ранг – обязательный аргумент; целое число. Если Ранг имеет значение 1, возвращается наибольшее значение, если Ранг имеет значение 2, возвращается второе по величине значение, и т.д. Чтобы возвратить 5 наибольших значений, вызовите функцию КУБПОРЭЛЕМЕНТ пять раз, указывая каждый раз новое значение Ранг: от 1 до 5. Если аргумент Выражение_множества представлен строкой типа "
[Products].[Category].[All].children"
, то массив упорядочен в алфавитном порядке.
Подпись – необязательный аргумент; текстовая строка, которая отображается в ячейке вместо подписи из куба.
Функция используется, например, для извлечения элементов какого-то измерения:
=КУБПОРЭЛЕМЕНТ(«ThisWorkbookDataModel»; «[Products].[Color].[All].children»; СТРОКА() ) |
Рис. 27. Доступные цвета товаров
Ранг задан функцией СТРОКА(). Цвета выводятся в алфавитном порядке. Оказалось, что цветов 10, так что, начиная с 11-й строки формула возвращает ошибку #Н/Д.
Совместно использование КУБПОРЭЛЕМЕНТ и КУБМНОЖ
Роль функции КУБМНОЖ наилучшим образом раскрывается в связке с КУБПОРЭЛЕМЕНТ. Первая формирует массив на основе данных листа Excel или напрямую из куба, а вторая извлекает элементы массива в ранжированном порядке.
=КУБПОРЭЛЕМЕНТ(«ThisWorkbookDataModel»; КУБМНОЖ(«ThisWorkbookDataModel»; «[Products].[ModelName].children»; ; 2; «[Measures].[Total Sales]»); СТРОКА(А1) ) |
Функция КУБМНОЖ говорит кубу: «Верни все уникальные имена моделей из столбца [ModelName] таблицы [Products], и расположи их в массиве в порядке убывания по продажам [Total Sales]».
Рис. 28. Ранжированные продажи различных моделей
Проверяем вычисления с помощью обычной сводной таблицы:
Рис. 29. Проверочная сводная таблица
Ранжирование на основе кортежа
Задача усложняется, если нужно вывести ранжированный список, отфильтрованный не только по объему продаж, но и относящийся, например, к определенной категории продуктов или периоду времени. Повторим фрагмент приведенной выше формулы:
=КУБМНОЖ(«ThisWorkbookDataModel»; «[Products].[ModelName].children»; ; 2; «[Measures].[Total Sales]» ) |
Идея в том, чтобы массив "
[Products].[ModelName].children"
, получаемый из куба, оставить без изменений, а дополнительные условия фильтрации отразить в последнем пятом аргументе. Вместо ссылки на меру "
[Measures].[Total Sales]"
, можно сослаться на кортеж, возвращаемый функцией КУБЭЛЕМЕНТ:
КУБМНОЖ(«ThisWorkbookDataModel»; «[Products].[ModelName].children»; ; 2; КУБЭЛЕМЕНТ(«ThisWorkbookDataModel»; «([Measures].[Total Sales],[Products].[Category].[All].[Accessories])») ) |
Здесь функция КУБЭЛЕМЕНТ говорит функции КУБМНОЖ: «Ранжируй массив по продажам аксессуаров». Итоговая формула в ячейке В4:
=КУБПОРЭЛЕМЕНТ(«ThisWorkbookDataModel»; КУБМНОЖ(«ThisWorkbookDataModel»; «[Products].[ModelName].children»; ; 2; КУБЭЛЕМЕНТ(«ThisWorkbookDataModel»; «([Measures].[Total Sales],[Products]. [Category].[All].[Accessories])»)); СТРОКА(A1) ) |
Эту формулу можно протянуть вдоль столбца до ячейки В13:
Рис. 30. ТОП-10 моделей аксессуаров по объему продаж
Ранжирование с использованием срезов
Формулам ранжирования, описанным в предыдущих разделах можно добавить гибкости, если использовать срезы. Excel допускает использование срезов и без сводных таблиц. Для создание таких срезов можно: 1) создать сводную таблицу; создать к ней срезы, а затем удалить сводную таблицу; 2) создать срез, пройдя по меню Вставка –> Фильтр –> Срез. Каждому срезу соответствует именованный диапазон, начинающийся со слова Срез_ (рис. 31). Хотя срез отражается в Диспетчере имен, соответствующего ему диапазона ячеек в книге Excel нет. К срезу можно обратиться по имени только внутри функций КУБ(). Обращение к срезу возвращает массив элементов (подробнее см. Блеск и нищета сводных таблиц, часть 13).
Рис. 31. Срезы в диспетчере имен
Если вспомнить справку Excel для функции КУБЗНАЧЕНИЕ(), то в ней говорится, что можно использовать имя среза в качестве аргумента Выражение_элемента (см. рис. 12). Поскольку функция КУБЗНАЧЕНИЕ допускает использование нескольких аргументов Выражение_элемента, КУБЗНАЧЕНИЕ поддерживает прямое обращение к нескольким срезам.
В то же время, КУБЭЛЕМЕН() не поддерживает прямого обращения к срезу (хотя аргумент носит такое же имя, как и в функции КУБЗНАЧЕНИЕ – Выражение_элемента). Возможно, это связано с тем, что срез возвращает массив (даже, если выделен один элемент), а аргумент функции КУБЭЛЕМЕН ожидает уникальный элемент.
Создадим отчет, отбирающий ТОП-10 продаваемых моделей в выбранной стране, за один месяц. Добавим так же сравнение с продажами этих же моделей за предыдущий месяц:
Рис. 32. Ранжирование по продажам на основе срезов
Шаг 1. Поместим значения срезов в ячейки G18:G20. Для этого воспользуемся формулами типа
=КУБПОРЭЛЕМЕНТ("
ThisWorkbookDataModel"
;Срез_Country;1)
Аргумент Срез_Country возвращает массив элементов среза, а функция КУБПОРЭЛЕМЕНТ возвращает первый в списке. Поскольку на срезе выбран один элемент, он и возвращается.
Шаг 2. В ячейках К4:К13 извлечем список моделей ранжированный по объему продаж в США за март 2004 года. Этот трюк вы видели ранее. Новый здесь фрагмент, отвечающий за фильтры:
КУБЭЛЕМЕНТ("
ThisWorkbookDataModel"
;($G$17:$G$20)))
Он собирает набор из ячеек G17:G20, добавляя к значениям трех срезов меру [Total Sales]. Набор взят в круглые скобки. Если заменить ссылки на ячейки значениями, хранящимися в этих ячейках, функция КУБЭЛЕМЕНТ не позволит ввести формулу в ячейку К4 появится сообщение, что это не формула. Диапазон G17:G20 может иметь любую прямоугольную форму.
Шаг 3. В ячейке L3 располагаем название месяца из среза.
Шаг 4. В ячейке М3 располагаем название предыдущего месяца. И здесь еще один трюк с привлечением функции MDX lag(1), которая возвращает предыдущий к March элемент из столбца [MonthName]:
=КУБЭЛЕМЕНТ("
ThisWorkbookDataModel"
;"
[Calendar].[MonthName].[All].["
&L3&"
].lag(1)"
)
Шаг 5. В ячейке L4 прописываем формулу…
=КУБЗНАЧЕНИЕ(«ThisWorkbookDataModel»; «[Measures].[Total Sales]»; «[Products].[ModelName].[All].[«&$K4&«]»; Срез_Country; Срез_CalendarYear; «[Calendar].[MonthName].[All].[«&L$3&«]» ) |
… и протягиваем ее на диапазон L4:M13.
Если пользователь выбирает более одной позиции в любом из срезов, предложенное решение не гарантирует истинный ТОП-10. Причина в том, что несколько элементов одного измерения не могут участвовать в создании кортежа и поэтому ранжирование будет основано на первом выбранном элементе. При том что сводная таблица справится с этой задачей:
Рис. 33. Формулы КУБ() дают сбой при выборе более одного элемента в срезе
Если вы хотите проявить строгость в представлении данных, то можете устроить проверку того, что во всех срезах выбран один элемент. Например, разместите в ячейке В22 такую формулу:
=ЕСЛИ(КУБЧИСЛОЭЛМНОЖ(Срез_CalendarYear)* КУБЧИСЛОЭЛМНОЖ(Срез_Country)* КУБЧИСЛОЭЛМНОЖ(Срез_MonthName)>1; «Отчет отражает корректные данные только если выбран один элемент в каждом срезе»; «» ) |
Если хотя бы в одном срезе выбрано более одного элемента, произведение трех функций КУБЧИСЛОЭЛМНОЖ() будет более единицы, и в ячейке отобразится введенный текст. Если во всех срезах выбран один элемент, ячейка В22 останется пустой.
Функция КУБЧИСЛОЭЛМНОЖ()
Пожалуй, это самая простая и очевидная функция кубов. Возвращает число элементов в множестве. Синтаксис:
КУБЧИСЛОЭЛМНОЖ(множество)
Не требует указывать Подключение. Это означает, что аргумент Множество не может быть текстовой строкой (хотя справка MS утверждает именно это, пусть и с уточнениями). Аргумент Множество может быть именем среза, функцией КУБМНОЖ или ссылкой на ячейку, содержащую функцию КУБМНОЖ. На рис. 34 левая формула возвращает 9 – число элементов, выделенных на срезе; правая формула возвращает 10 – общее число элементов в множестве [Products].[Color].
Рис. 34. Функция КУБЧИСЛОЭЛМНОЖ()
Если КУБМНОЖ возвращает элементы, КУБЧИСЛОЭЛМНОЖ подсчитает число элементов. Если КУБМНОЖ возвращает кортежи, КУБЧИСЛОЭЛМНОЖ подсчитает число кортежей. Если в массиве, возвращаемом функцией КУБМНОЖ два одинаковых элемента (кортежа), КУБЧИСЛОЭЛМНОЖ посчитает их два раза. Также обратите внимание, что функция КУБЧИСЛОЭЛМНОЖ() подсчитывает только непустые кортежи (элементы):
Рис. 35. Кортежи, мера по которым равна нулю, не подсчитываются
Некоторые выражения MDX, используемые в формулах кубов
Язык MDX включает в себя огромное количество функций и выражений, позволяющих обрабатывать многомерные данные. Язык требует отдельного изучения, а задача раздела познакомить с несколькими выражениями, которые работают в формулах кубов, и могут быть полезны начинающим пользователям. (Можно использовать, как заглавные, так и строчные буквы.)
.children – возвращает упорядоченный по алфавиту набор, содержащий дочерние элементы указанного элемента верхнего уровня; если у элемента нет потомков, функция возвращает пустой набор.
.members – похоже на .children, но возвращает также элемент [All] на первом месте и все элементы более глубоких уровней, если таковые имеются. Например, если создать в модели данных иерархию с именем Territory с двумя подуровнями Continent и Country, то [Territory].children вернет 3 элемента, а [Territory].Members – 10:
Рис. 36. Выражения .members и .children; слева фрагмент модели данных Power Pivot
Ссылку на соседние члены измерения без указания имени члена обеспечивают выражения .PrevMember и .NextMember. Чтобы обратиться к элементу, отстоящему на два назад, можно повторить выражение два раза .PrevMember.PrevMember, но удобнее применить более общее выражение Lag(2). Отрицательное число в скобках меняет направление отсчета членов измерения.
Чтобы определить первый или последний элемент того же уровня можно использовать .FirstSibling и .LastSibling. Для дочерних элементов подойдет .FirstChild и .LastChild. Чтобы получить родителя воспользуйтесь .Parent. Это выражение можно применить, если нужно найти долю продаж элемента в классе, например:
Рис. 37. Выражение .Parent позволяет находить вклад элемента в общие продажи, прибыль, …
Для того чтобы определить «дедушку» (родителя родителя), можно использовать выражение: .Parent.Parent. Для этого в кубе должна быть определена соответствующая иерархия.
Функция КУБЭЛЕМЕНТКИП()
Возвращает свойство ключевого показателя эффективности, КПЭ, и отображает его имя в ячейке. (В аббревиатуре русского названия функции используется другое наименование – ключевой индикатор производительности, КИП. В английском варианте CubeKPImember). Синтаксис:
КУБЭЛЕМЕНТКИП(подключение;имя_КПЭ;свойство_КПЭ;[подпись])
Имя_КПЭ – обязательный аргумент; текстовая строка, представляющая имя ключевого показателя эффективности в кубе (как создать КПЭ см. раздел KPI заметки Марк Мур. Power Pivot).
Свойство_КПЭ – обязательный аргумент; указывает, какое именно свойство KPI следует вернуть функции КУБЭЛЕМЕНТКИП (рис. 38). В модели данных из примера доступны только первые три свойства.
Рис. 38. Возможные свойства ключевого показателя эффективности
Подпись – необязательный аргумент; альтернативная текстовая строка. Имя по умолчанию формируется так: Имя_КПЭ + Свойство_КПЭ (имя свойства Значение КИП опускается):
Рис. 39. Имена, возвращаемые для меры [Profit Pct]
Чтобы использовать КПЭ в вычислениях, нужно разместить функцию КУБЭЛЕМЕНТКИП в аргументе «выражение_элемента» функции КУБЗНАЧЕНИЕ (рис. 40). Данные отчета на основе функций КУБ() проверены с помощью сводной таблицы. В правой части рис. 40 выделены поля KPI. И сводная таблица (ячейки F12:F15), и отчет (F4:F7) возвращают числа от 0 до 1. При этом сводная таблица выводит значки благодаря внутренним механизмам, а для замены чисел на «светофор» в отчете применяется условное форматирование.
Рис. 40. Отчет о продажах с использованием функции КУБЭЛЕМЕНТКИП
Функция КУБСВОЙСТВОЭЛЕМЕНТА()
Возвращает значение свойства элемента куба. Используется для отображения свойства на осях отчета или для расчетов, если свойство числовое (например, сезонный коэффициент). Синтаксис:
КУБСВОЙСТВОЭЛЕМЕНТА(подключение; выражение_элемента; свойство)
Новым здесь является только третий элемент – имя свойства измерения. Если в процессе набора формулы автозавершение безмолвствует, значит свойство для данного измерения не определено. К сожалению, это единственная функция кубов, которая работает только с кубами OLAP (но не с моделями данных Power Pivot). Чтобы в кубе OLAP проверить, обладает ли измерение свойством, поместите измерение в сводную таблицу в область строк (или столбцов). Встаньте на одну из ячеек в этой области, и пройдите по меню Работа со сводными таблицами –> Анализ –> Средства OLAP –> Поля свойств (рис. 41).
Рис. 41. Проверка наличия свойств у измерения
Если у измерения есть свойства появится окно Выбор полей свойств для размерности (рис. 42). Если свойств у измерения нет появится сообщение об их отсутствии.
Рис. 42. Окно Выбор полей свойств для размерности
Если перенести свойства из левого окна в правое, они будут отражаться в сводной таблице. Но нас сейчас интересует лишь подтверждение того, что у измерения [Клиент] есть свойства. Теперь можно написать формулу:
Рис. 43. Автозавершение «увидело» свойства измерения
Функция КУБСВОЙСТВОЭЛЕМЕНТА может быть полезной для отображения на осях отчета неких измерений, связанных с базовым. Например, номера квартала по дате, e-mail по ID клиента, университета по имени игрока и т.п. С числовыми свойствами (в нашем примере это ИНН) можно выполнять все математические операции. Подробнее о свойствах измерений куба OLAP см. Павел Сухарев Блеск и нищета сводных таблиц, часть 5.
Как обойти ограничение Power Pivot и получить свойство элемента измерения
Хотя КУБСВОЙСТВОЭЛЕМЕНТА не поддерживает модели Power Pivot, можно эмулировать работу функции в этой среде. Попробуем на основе уникального ID клиента получить иные сведения о нем, хранящиеся в модели Power Pivot в таблице [Customers]. Для этого воспользуемся MDX функцией EXISTS. Она возвращает набор кортежей первого аргумента, которые встречаются во втором аргументе. Синтаксис:
Exists(Выражение1, Выражение2 [, Мера])
Выражение1 и Выражение2 – обязательные аргументы; многомерные выражения, возвращающее набор элементов (кортежей). Мера – необязательный аргумент; если он указан, то возвращаются только такие элементы (кортежи), для которых мера определена. Например, следующее выражение вернет клиентов, проживающих в Калифорнии и совершивших сделки в Интернете:
EXISTS( [Customer].members, [Customer].[State—Province].&[CA], [Internet Sales] ) |
Первый аргумент определит набор, который мы хотим вернуть, второй и третий – условия, которые мы проверяем. Поскольку в нашей задаче не важно, были ли продажи, мы можем опустить третий аргумент. Итак:
Рис. 44. Формула, эмулирующая работу КУБСВОЙСТВОЭЛЕМЕНТА в среде Power Pivot
Источники
Jon Acampora Tips & Tricks for Writing CUBEVALUE Formulas
Excel-файл с примерами я построил на основе модели из книги Роб Колли. Формулы DAX для Power Pivot (глава 15).
Обсуждение, можно ли задать в Power Pivot меру по умолчанию.
Павел Сухарев. Блеск и нищета сводных таблиц. Цикл статей в журнале Компьютер Пресс.
Статьи по формулам кубов на сайте powerpivotpro.com
Обсуждение, можно ли в функции КУБЗНАЧЕНИЕ использовать диапазоны дат.
Полина Трофимова, Алексей Шуленин. Введение в MDX. Цикл статей в журнале Компьютер Пресс.
Cube Functions in Microsoft Excel 2010
A CUBEMEMBERPROPERTY Equivalent With PowerPivot
Актуальность ссылок проверена 29 июня 2019 г.
Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
Info_lab_2008_.doc
Скачиваний:
63
Добавлен:
23.12.2018
Размер:
9.72 Mб
Скачать
-
Выполнение индивидуального задания
Ниже приведен перечень заданий. По
указанию преподавателя выберите свое
индивидуальное задание. Уточните условие
задания, количество.
-
Фирме принадлежат два магазина. Известна
стоимость товаров, проданных в каждом
магазине за каждый день в июле и августе.
Подготовить лист для расчета общей
стоимости товаров, проданных фирмой
за два месяца. -
В квадратной матрице (таблице) размером
7 x 7 записаны числа. Определить сумму
чисел, расположенных:
-
выше главной диагонали (главную
диагональ матрицы образуют ячейки,
соединяющие верхнюю левую и правую
нижнюю ячейки); -
ниже главной диагонали;
-
ниже побочной диагонали (побочную
диагональ матрицы образуют ячейки,
соединяющие верхнюю правую и нижнюю
левую ячейки); -
выше побочной диагонали.
-
Известна зарплата каждого из 12 работников
фирмы за каждый месяц первого квартала.
Определить:
-
общую сумму, минимальную, максимальную
и среднюю, выплаченную за квартал всем
работникам; -
зарплату, полученную за квартал каждым
работником; -
общую зарплату всех работников за
каждый месяц.
-
Найти сумму кубов всех целых чисел от
10 до 20. -
Последовательность Фибоначчи образуется
так: первый и второй члены последовательности
равны 1, каждый следующий равен сумме
двух предыдущих (1, 1, 2, 3, 5, 8, 13, …). Найти
сумму двадцати первых членов
последовательности Фибоначчи. -
Известны диаметры десяти окружностей.
Подготовить лист для определения общей
площади всех кругов, ограниченных этими
окружностями (известно, что ни одна
пара окружностей не пересекается друг
с другом). -
В области 12 районов. Известны количество
жителей каждого района (в тысячах
человек) и плотность населения в нем
(тыс. чел./кв. км). Определить общую
площадь территории области. -
Автогонщик участвовал в десяти этапах
соревнований. Известны средняя скорость
движения автомобиля на каждом из этапов
(в км / час) и время, затраченное на
прохождение дистанции этапа (в часах).
Определить общее расстояние, которое
проехал автогонщик на соревнованиях. -
Известен возраст каждого члена семьи
Определить средний возраст в семье.
-
Известна масса каждого предмета из
некоторого набора предметов (число
предметов — не больше 25). Подготовить
лист для определения средней массы
предметов. -
Известно количество осадков (в
миллиметрах), выпавших в Москве за
каждый год в течение последних 50 лет
XX столетия. Подготовить лист для
вычисления:
-
среднегодового количества осадков;
-
среднего отклонения от величины,
найденной по первому пункту.
-
Подготовить
ряд данных от 1 до 100 с шагом 2 и рассчитать
параметр t
где
k – коэффициент вариации. -
Подготовить
ряд данных от 1 до 100 с шагом 3 и рассчитать
параметр b
где z – коэффициент
инертности. -
Рассчитать параметр
;
,
где S ряд данных от 1 до 100 с шагом 1, R=300;
L=120 -
.Рассчитать параметр
;
,
где Yk ряд данных от 1 до 10 с шагом
0,25, R=300; L=12
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #