Applies ToExcel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2024 Excel 2024 для Mac Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel для iPad Excel Web App Excel для iPhone Excel для планшетов с Android Excel для телефонов с Android

В этой статье описаны синтаксис формулы и использование функции КУБЗНАЧЕНИЕ в Microsoft Excel.

Описание

Возвращает агрегированное значение из куба.

Синтаксис

КУБЗНАЧЕНИЕ(подключение;[выражение_элемента1];[выражение_элемента2];…)

Аргументы функции КУБЗНАЧЕНИЕ описаны ниже.

  • Подключение.    Обязательный аргумент. Текстовая строка, представляющая имя подключения к кубу.

  • Выражение_элемента.    Необязательный аргумент. Текстовая строка, представляющая многомерное выражение, которое возвращает элемент или кортеж в кубе. Кроме того, "выражение_элемента" может быть множеством, определенным с помощью функции КУБМНОЖ. Используйте "выражение_элемента" в качестве среза, чтобы определить часть куба, для которой необходимо возвратить агрегированное значение. Если в аргументе "выражение_элемента" не указана мера, будет использоваться мера, заданная по умолчанию для этого куба.

Замечания

  • При оценке функции КУБЗНАЧЕНИЕ в ячейке временно выводится сообщение "#ОЖИДАНИЕ_ДАННЫХ…", пока все данные не будут найдены.

  • Если для аргумента "выражение_элемента" используется ссылка на ячейку, и эта ссылка содержит функцию КУБ, то "выражение_элемента" использует многомерное выражение для элемента в ячейке, на которую указывает ссылка, а не значение, которое отображается в этой ячейке.

  • Если имя подключения не является допустимым подключением к книге, хранящимся в книге, функция CUBEVALUE возвращает #NAME? (значение ошибки). Если сервер OLAP не запущен, недоступен или возвращает сообщение об ошибке, функция CUBEVALUE возвращает #NAME? (значение ошибки).

  • Если хотя бы один элемент кортежа недопустим, функция CUBEVALUE возвращает #VALUE! (значение ошибки).

  • Функция КУБЗНАЧЕНИЕ возвращает ошибку "#Н/Д" в следующих случаях:

    • Неправильный синтаксис аргумента "выражение_элемента".

    • Элемента, определяемого аргументом "выражение_элемента", не существует в кубе.

    • Кортеж не является допустимым, поскольку для указанных значений отсутствует пересечение. (Такая ситуация возможна для нескольких элементов из одной и той же иерархии).

    • Множество содержит по меньшей мере один элемент с измерением, отличным от других элементов.

    • Функция КУБЗНАЧЕНИЕ может возвращать значение ошибки "#Н/Д" при ссылке на сеансовый объект, например на вычисляемый компонент или именованный набор, в сводной таблице при совместном использовании подключения, когда сводная таблица удалена или происходит преобразование таблицы в формулы. (На вкладке Параметры в группе Сервис нажмите кнопку Средства OLAP, а затем — кнопку Преобразовать в формулы.)

Проблема: пустые значения преобразуются в пустые строки

Если в excel ячейка не содержит данных, так как вы никогда не изменяли ее или удалили содержимое, ячейка содержит пустое значение. Во многих системах баз данных пустое значение называется значением NULL. Пустое значение или значение NULL буквально означает "Нет значения". Однако формула никогда не может возвращать пустую строку или значение NULL. Формула всегда возвращает одно из трех значений: числовое значение; текстовое значение, которое может быть строкой нулевой длины или значением ошибки, например #NUM! или #VALUE.

Если формула содержит функцию CUBEVALUE, подключенную к базе данных OLAP, и запрос к этой базе данных приводит к значению NULL, Excel преобразует это значение NULL в строку нулевой длины, даже если формула возвращает числовое значение. Это может привести к ситуации, когда диапазон ячеек содержит сочетание числовых и строковых значений нулевой длины, и эта ситуация может повлиять на результаты других формул, ссылающихся на этот диапазон ячеек. Например, если A1 и A3 содержат числа, а A2 содержит формулу с функцией CUBEVALUE, которая возвращает строку нулевой длины, следующая формула вернет #VALUE! :

=A1+A2+A3

Чтобы предотвратить такую ситуацию, следует проверять ячейки на наличие пустой строки с помощью функции ЕТЕКСТ, а затем использовать функцию ЕСЛИ для замены пустой строки на 0 (ноль), как показано в следующем примере.

=ЕСЛИ(ЕТЕКСТ(A1),0,A1)+ЕСЛИ(ЕТЕКСТ(A2),0,A2)+ЕСЛИ(ЕТЕКСТ(A3),0,A3)

Функцию КУБЗНАЧЕНИЕ можно также вложить в условие ЕСЛИ, которое возвращает значение "0", если функция КУБЗНАЧЕНИЕ возвращает пустую строку, как показано в следующем примере.

=ЕСЛИ (КУБЗНАЧЕНИЕ("Продажи","[Показатели].[Сумма]","[Время].[2004]","[Все товары].[Напитки]")="", 0, КУБЗНАЧЕНИЕ("Продажи","[Показатели].[Сумма]","[Время].[2004]","[Все товары].[Напитки]"))

Обратите внимание на то, что функция СУММ не требует проверки на наличие пустой строки, так как при вычислении ее значения пустые строки автоматически игнорируются.

Примеры

=КУБЗНАЧЕНИЕ("Продажи","[Показатели].[Сумма]","[Время].[2004]","[Все товары].[Напитки]")

=КУБЗНАЧЕНИЕ($A$1,"[Показатели].[Сумма]",D$12,$A23)

=КУБЗНАЧЕНИЕ("Продажи",$B$7,D$12,$A23)

Нужна дополнительная помощь?

Нужны дополнительные параметры?

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

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