KUBUSWAARDE, functie

In dit artikel worden de syntaxis van de formule en het gebruik van de functie KUBUSWAARDE in Microsoft Excel beschreven.

Beschrijving

Geeft een statistische waarde als resultaat van de kubus.

Syntaxis

KUBUSWAARDE(verbinding;[lid_expressie1];[lid_expressie2];…)

De syntaxis van de functie KUBUSWAARDE heeft de volgende argumenten:

  • verbinding    Vereist. Een tekenreeks die de naam van de verbinding met de kubus aangeeft.

  • lid_expressie    Optioneel. Een tekenreeks of een multidimensionale expressie (MDX) die een lid of tupel van de kubus evalueert. lid_expressie kan daarnaast ook een set zijn die met de functie KUBUSSET is gedefinieerd. Gebruik lid_expressie als een slicer om het gedeelte van de kubus te definiëren waarvan de samengestelde waarde wordt geretourneerd. Als er in lid_expressie geen waarde is gedefinieerd, wordt de standaardwaarde van de kubus gebruikt.

Opmerkingen

  • Tijdens de evaluatie geeft de functie KUBUSWAARDE tijdelijk de tekst "#GEGEVENS_OPHALEN…" in de cel weer totdat de gegevens zijn opgehaald.

  • Als voor lid_expressie een celverwijzing wordt gebruikt en als de cel waarnaar wordt verwezen de functie KUBUS bevat, wordt voor lid_expressie de MDX-expressie gebruikt voor het item in de cel waarnaar wordt verwezen in plaats van de waarde die in die cel.

  • Als de naam van de verbinding geen geldige werkmapverbinding is die in de werkmap is opgeslagen, geeft KUBUSWAARDE de foutwaarde #NAAM? als resultaat. Als de OLAP-server (Online Analytical Processing) niet is ingeschakeld, niet beschikbaar is, of een foutmelding retourneert, geeft KUBUSWAARDE de foutwaarde #NAAM? als resultaat.

  • Als minimaal één element van de tupel ongeldig is, geeft KUBUSWAARDE de foutwaarde #WAARDE! als resultaat.

  • KUBUSWAARDE geeft in de volgende gevallen de foutwaarde #N/B als resultaat:

    • De syntaxis van lid_expressie is onjuist.

    • Het lid dat door lid_expressie wordt opgegeven bestaat niet in de kubus.

    • De tupel is ongeldig omdat er geen snijpunt voor de opgegeven waarden bestaat. (Dat kan gebeuren bij meerdere onderdelen uit dezelfde hiërarchie.)

    • De set bevat ten minste één lid met een andere dimensie dan de andere leden.

    • KUBUSWAARDE geeft mogelijk de foutwaarde #N/B als resultaat als u verwijst naar een op een sessie gebaseerd object (zoals een berekend lid of een benoemde set) in een draaitabel wanneer er een verbinding wordt gedeeld en die draaitabel wordt verwijderd of u de draaitabel converteert naar formules. (Ga op het tabblad Opties naar de groep Extra, klik op OLAP-hulpmiddelen en klik vervolgens op Converteren naar formules.)

Probleem: null-waarden worden geconverteerd naar tekenreeksen met de lengte nul

Als een cel in Excel geen gegevens bevat, bijvoorbeeld omdat u deze nooit hebt gewijzigd of de inhoud ervan hebt verwijderd, bevat de cel een lege waarde. In veel databasesystemen wordt een lege waarde een null-waarde genoemd. Een lege waarde of null-waarde betekent letterlijk 'Geen waarde'. Een formule kan echter nooit een lege tekenreeks of null-waarde als resultaat bevatten. Een formule geeft altijd een van drie mogelijke waarden als resultaat: een getalwaarde, een tekstwaarde (die een tekenreeks met de lengte nul kan zijn) of een foutwaarde, zoals #GETAL! of #WAARDE.

Als een formule een functie KUBUSWAARDE bevat die is verbonden met een OLAP-database (Online Analytical Processing) en een query naar deze database een null-waarde als resultaat geeft, wordt deze null-waarde in Excel geconverteerd naar een tekenreeks met de lengte nul, zelfs als de formule anders een getalwaarde als resultaat zou geven. Dit kan leiden tot een situatie waarin een cellenbereik een combinatie van numerieke waarden en tekenreeksen met de lengte nul bevat, en deze situatie kan van invloed zijn op de resultaten van andere formules die verwijzen naar dat cellenbereik. Als A1 en A3 bijvoorbeeld getallen bevatten en A2 een formule bevat met een functie KUBUSWAARDE die een tekenreeks met de lengte nul als resultaat geeft, geeft de volgende formule de fout #WAARDE! als resultaat:

=A1+A2+A3

Als u dit wilt voorkomen, kunt u testen op een tekenreeks met de lengte nul door de functie ISTEKST te gebruiken en door de functie ALS te gebruiken om de tekenreeks met de lengte nul te vervangen door een 0 (nul), zoals in het volgende voorbeeld te zien is:

=ALS(ISTEKST(A1),0,A1)+ALS(ISTEKST(A2),0,A2)+ALS(ISTEKST(A3),0,A3)

U kunt de functie KUBUSWAARDE eventueel ook nesten in een ALS-voorwaarde die een waarde 0 als resultaat geeft als de functie KUBUSWAARDE een tekenreeks met de lengte nul als resultaat geeft, zoals in het volgende voorbeeld te zien is:

=ALS (KUBUSWAARDE("Verkoop","[Waarden].[Winst]","[Tijd].[2004]","[Alle producten].[Drank]")="", 0, KUBUSWAARDE("Verkoop","[Waarden].[Winst]","[Tijd].[2004]","[Alle producten].[Drank]"))

Houd er rekening mee dat deze test voor een tekenreeks met de lengte nul niet vereist is voor de functie SOM, omdat in deze functie tekenreeksen met de lengte nul automatisch worden genegeerd bij het berekenen van de retourwaarde.

Voorbeelden

=KUBUSWAARDE("Verkoop","[Waarden].[Winst]","[Tijd].[2004]","[Alle producten].[Drank]")

=KUBUSWAARDE($A$1,"[Waarden].[Winst]",D$12,$A23)

=KUBUSWAARDE("Verkoop",$B$7,D$12,$A23)

Uw Office-vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagents.

×