Applies ToExcel pro Microsoft 365 Excel pro Microsoft 365 pro Mac Excel pro web Excel 2024 Excel 2024 pro Mac Excel 2021 Excel 2021 pro Mac Excel 2019 Excel 2019 pro Mac Excel 2016 Excel pro iPad Excel Web App Excel pro iPhone Excel pro tablety s Androidem Excel pro telefony s Androidem

Tento článek popisuje syntaxi vzorce a použití funkce CUBEVALUE v Microsoft Excelu.

Popis

Vrátí úhrnnou hodnotu z krychle.

Syntaxe

CUBEVALUE(připojení;[výraz_člena1]; [výraz_člena2]; …)

Syntaxe funkce CUBEVALUE má následující argumenty:

  • Připojení:    Povinný argument. Textový řetězec názvu připojení k datové krychli.

  • Výraz_člena:    Nepovinný argument. Textový řetězec výrazu MDX (Multidimensional Expression), jehož výsledkem je prvek nebo řazená kolekce členů v datové krychli. Jako hodnotu argumentu výraz_člena lze použít i sadu definovanou pomocí funkce CUBESET. Argument výraz_člena použijte jako průřez k definování části datové krychle, jejíž úhrnná hodnota bude vrácena. Jestliže v argumentu výraz_člena není uvedena žádná míra, použije se výchozí míra příslušné krychle.

Poznámky

  • Při vyhodnocování funkce CUBEVALUE se v buňce před načtením všech dat přechodně zobrazí zpráva #NAČÍTÁNÍ_DAT…

  • Jestliže je v argumentu výraz_člena použit odkaz na buňku a tento odkaz obsahuje funkci CUBE, nepoužije argument výraz_člena hodnotu zobrazenou v buňce, do níž vede odkaz, ale výraz MDX platný pro položku v této buňce.

  • Pokud název připojení není platné připojení sešitu uložené v sešitu, vrátí funkce CUBEVALUE #NAME? chybovou hodnotu #HODNOTA!. Pokud server OLAP (Online Analytical Processing) není spuštěný, není k dispozici nebo vrátí chybovou zprávu, vrátí funkce CUBEVALUE #NAME? chybovou hodnotu #HODNOTA!.

  • Pokud je alespoň jeden prvek v řazené kolekci členů neplatný, vrátí funkce CUBEVALUE #VALUE! chybovou hodnotu #HODNOTA!.

  • V následujících případech vrátí funkce CUBEVALUE chybovou hodnotu #NENÍ_K_DISPOZICI:

    • Syntaxe argumentu výraz_člena není správná.

    • V krychli neexistuje člen určený pomocí argumentu výraz_člena.

    • N-tice je neplatná, protože neexistuje průsečík zadaných hodnot. (Tato situace může nastat u více prvků ve stejné hierarchii.)

    • Sada obsahuje minimálně jeden člen s jiným rozměrem než ostatní členy.

    • Funkce CUBEVALUE může vrátit chybovou hodnotu #NENÍ_K_DISPOZICI, pokud v kontingenční tabulce při sdílení spojení odkazujete na objekt z relace, například na počítaný člen pojmenované sady, a příslušnou kontingenční tabulku odstraňujete nebo převádíte kontingenční tabulku na vzorce. (Na kartě Možnosti ve skupině Nástroje klikněte na položku Nástroje OLAP a poté klikněte na položku Převést na vzorce.)

Problém: Hodnoty Null jsou převáděny na řetězce nulové délky

Pokud nejsou v Excelu v buňce žádná data, protože jste ji nikdy nezměnili nebo smazali její obsah, obsahuje buňka prázdnou hodnotu. V řadě databázových systémů se prázdná hodnota nazývá hodnota Null. Je-li hodnota prázdná neboli Null, znamená to doslovně „Žádná hodnota“. Vzorec však nikdy nevrací prázdný řetězec nebo hodnotu Null. Vzorec vždy vrací jednu ze tří hodnot: číselnou hodnotu, textovou hodnotu (jíž může být řetězec nulové délky) nebo chybovou hodnotu, například #ČÍSLO! nebo #HODNOTA.

Pokud vzorec obsahuje funkci CUBEVALUE připojenou k databázi OLAP (Online Analytical Processing) a výsledkem dotazu na tuto databázi je hodnota Null, převede aplikace Excel tuto hodnotu Null na řetězec nulové délky, i když by vzorec jinak vrátil číselnou hodnotu. To může vést k situaci, kdy oblast buněk obsahuje kombinaci číselných a řetězcových hodnot nulové délky a tato situace může ovlivnit výsledky jiných vzorců, které na danou oblast buněk odkazují. Pokud například A1 a A3 obsahují čísla a A2 obsahuje vzorec s funkcí CUBEVALUE, který vrací řetězec nulové délky, následující vzorec vrátí #VALUE! vzorec:

=A1+A2+A3

Chcete-li se tomu vyhnout, můžete testovat výskyt řetězce nulové délky pomocí funkce JE.TEXT a pomocí funkce KDYŽ nahradit nulovou délku číslem 0 (nula), jak ukazuje následující příklad:

=KDYŽ(JE.TEXT(A1);0;A1)+KDYŽ(JE.TEXT(A2);0;A2)+KDYŽ(JE.TEXT(A3);0;A3)

Můžete také vnořit funkci CUBEVALUE do podmínky KDYŽ, která vrátí hodnotu 0, kdykoli funkce CUBEVALUE vrátí řetězec nulové délky, viz následující příklad:

=KDYŽ(CUBEVALUE("Prodeje";"[Objemy].[Zisk]";"[Čas].[2004]";"[Všechny výrobky].[Nápoje]")=""; 0; CUBEVALUE("Prodeje";"[Objemy].[Zisk]";"[Čas].[2004]";"[Všechny výrobky].[Nápoje]"))

U funkce SUMA není třeba provádět test na řetězec nulové délky, protože při výpočtu návratové hodnoty automaticky ignoruje řetězce nulové délky.

Příklady

=CUBEVALUE("Prodeje";"[Objemy].[Zisk]";"[Čas].[2004]";"[Všechny výrobky].[Nápoje]")

=CUBEVALUE($A$1;"[Objemy].[Zisk]";D$12;$A23)

=CUBEVALUE("Prodeje";$B$7;D$12;$A23)

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.