U ovom se članku opisuje sintaksa formula i korištenje funkcije CUBEVALUE u programu Microsoft Excel.
Opis
Vraća agregatnu vrijednost iz datoteke kocke.
Sintaksa
CUBEVALUE(veza; [član_izraz1]; [član_izraz2];...)
Sintaksa funkcije CUBEVALUE sadrži sljedeće argumente:
-
Veza Obavezno. Tekstni niz naziva veze s kockom.
-
Član_izraz Neobavezno. Tekstni niz višedimenzionalnog izraza (MDX) koji vraća vrijednost člana ili n-torke unutar datoteke kocke. Kao alternativa, član_izraz može biti skup definiran funkcijom CUBESET. Koristite član_izraz da biste definirali dio kocke za koji se vraća agregatna vrijednost. Ako u argumentu član_izraz nije određena mjera, koristi se zadana mjera za kocku.
Napomene
-
Za vrijeme izvođenja funkcija CUBEVALUE privremeno prikazuje poruku "#DOHVAĆANJE_PODATAKA…" u ćeliji prije nego što se dohvate svi podaci.
-
Ako se za argument član_izraz koristi referenca na ćeliju koja sadrži funkciju CUBE, tada član_izraz koristi MDX izraz za stavku u ćeliji na koju upućuje referenca, a ne vrijednost prikazanu u samoj ćeliji.
-
Ako naziv veze nije valjana veza radne knjige pohranjena u radnoj knjizi, CUBEVALUE vraća #NAME? vrijednost nenumeričke prirode, PHI vraća vrijednost pogreške #VALUE!. Ako OLAP (Online Analytical Processing) poslužitelj nije pokrenut, nije dostupan ili vraća poruku o pogrešci, CUBEVALUE vraća #NAME? vrijednost nenumeričke prirode, PHI vraća vrijednost pogreške #VALUE!.
-
Ako barem jedan element unutar n-torke nije valjan, CUBEVALUE vraća #VALUE! vrijednost nenumeričke prirode, PHI vraća vrijednost pogreške #VALUE!.
-
CUBEVALUE vraća vrijednost pogreške #N/A kada:
-
Sintaksa argumenta član_izraz nije valjana.
-
Član koji određuje član_izraz ne postoji u kocki.
-
N-torka nije valjana jer za određenu vrijednost nema sjecišta. (To se može dogoditi u slučaju većeg broja elemenata u istoj hijerarhiji.)
-
Skup sadrži najmanje jedan član čija se dimenzija razlikuje od dimenzije drugih članova.
-
CUBEVALUE može vratiti vrijednost pogreške #N/A ako se u zaokretnoj tablici tijekom zajedničkog korištenja veze pozivate na objekt koji se temelji na sesiji, npr. izračunati član ili imenovani skup, a ta se zaokretna tablica izbriše ili je pretvorite u formule (na kartici Mogućnosti u grupi Alati kliknite OLAP alati, a zatim Pretvori u formule).
-
Problem: vrijednosti null pretvaraju se u nizove nulte duljine
Ako u programu Excel ćelija nema podataka jer ih niste promijenili ili ste izbrisali sadržaj, ćelija sadrži praznu vrijednost. U mnogim sustavima baze podataka prazna vrijednost naziva se null vrijednost. Prazna ili Null vrijednost doslovno znači "Nema vrijednosti". No formula nikad ne može vratiti prazan niz ili vrijednost Null. Formula uvijek vraća jednu od tri vrijednosti: brojčanu vrijednost. tekstnu vrijednost, koja može biti niz nulte duljine ili vrijednost pogreške, npr. #NUM! ili #VALUE.
Ako formula sadrži funkciju CUBEVALUE povezanu s OLAP (Online Analytical Processing) bazom podataka, a upit u ovu bazu podataka rezultira vrijednošću Null, Excel tu vrijednost null pretvara u niz nulte duljine, čak i ako bi formula inače vraćala brojčanu vrijednost. To može dovesti do situacije u kojoj raspon ćelija sadrži kombinaciju brojčanih vrijednosti i vrijednosti niza nulte duljine, a ta situacija može utjecati na rezultate drugih formula koje se pozivaju na taj raspon ćelija. Ako, primjerice, A1 i A3 sadrže brojeve, a A2 sadrži formulu s funkcijom CUBEVALUE koja vraća niz nulte duljine, sljedeća će formula vratiti #VALUE! greška:
=A1+A2+A3
Za sprečavanje takve situacije možete potražiti nizove nulte duljine pomoću funkcije ISTEXT, i funkcijom IF zamijeniti nizove nulte duljine znakom 0 (nula) kao u sljedećem primjeru:
=IF(ISTEXT(A1),0,A1)+IF(ISTEXT(A2),0,A2)+IF(ISTEXT(A3),0,A3)
Također, funkciju CUBEVALUE možete ugnijezditi u uvjetu IF koji vraća vrijednost 0 vrati li funkcija CUBEVALUE vrijednost niza nulte duljine, kao u sljedećem primjeru:
=IF (CUBEVALUE("Prodaja","[Mjere].[Dobit]","[Vrijeme].[2004]","[Svi proizvodi].[Pića]")="", 0, CUBEVALUE("Prodaja","[Mjere].[Dobit]","[Vrijeme].[2004]","[Svi proizvodi].[Pića]"))
Imajte na umu da funkcija SUM ne zahtijeva ovo testiranje za nizove nulte vrijednosti, budući da automatski zanemaruje nizove nulte duljine pri izračunu vrijednosti koju će vratiti.
Primjeri
=CUBEVALUE("Prodaja","[Mjere].[Dobit]","[Vrijeme].[2004]","[Svi proizvodi].[Pića]")
=CUBEVALUE($A$1,"[Mjere].[Dobit]",D$12,$A23)
=CUBEVALUE("Prodaja",$B$7,D$12,$A23)