CELLGET
Diese Funktion gibt basierend auf den von Ihnen angegebenen Elementen Werte eines Cubes zurück. Die Funktion kann nur mit ODBO- und XMLA-konformen Datenbanken verwendet werden. Sie ähnelt einer ROC-Formel, ist aber dynamisch. Das heißt, Sie müssen nicht alle Elemente einer Dimension angeben. Für die Dimensionen, die Sie nicht angeben, wird das Standardelement verwendet.
Diese Dynamik ist besonders für Berichtsvorlagen relevant. Der Entwickler einer Vorlage kann beispielsweise festlegen, dass Benutzer eine Dimension auswählen müssen, die Measures enthält, oder eine Dimension, die Zeiträume enthält. Der Entwickler kann jedoch nicht die tatsächlichen Dimensionen kennen, die dem Benutzer zur Verfügung stehen oder die der Benutzer auswählen wird. Daher dürfen Formeln, die der Entwickler der Vorlage einfügt, nicht auf bestimmte Dimensionen, Hierarchien oder Elemente verweisen. Jedes Argument einer CELLGET-Formel kann von einer Variablen bereitgestellt werden.
Die Reihenfolge, in der Sie die Dimensionen angeben, spielt keine Rolle. Sie können in der CELLGET-Formel einen Zellbereich referenzieren, anstatt jede Zelle einzeln zu referenzieren.
CELLGET unterstützt die Auswahl mehrerer Elemente aus einer einzelnen Dimension.
Syntax
=CELLGET("data_connection", "cube"{,"slice_element"})
Beispiel
=CELLGET( "BestPracticesOLAP", "Analysis", "[Period].[All Years].[2017]",
"[Product].[Car Tires All Season]")
Sie können CELLGET verwenden, um Elemente aus mehreren Dimensionen einzeln oder als Bereich zu referenzieren. Wenn also die Zellen B4, B5, B6 und B7 jeweils einen Elementnamen enthalten, liefern die folgenden beiden Beispiele dasselbe Ergebnis:
=CELLGET("BestPracticesOLAP", "Analysis",B4,B5,B6,B7)
=CELLGET("BestPracticesOLAP","Analysis",B4:B7)
Wenn Sie Werte einer Zelle ändern, welche die CELLGET-Formel enthält, wird der Wert in die Datenbank zurückgeschrieben.
Eine CELLGET-Formel kann verwendet werden, um eine Zelle in einem Hyperblock zu referenzieren.
Multiselect
CELLGET unterstützt die Mehrfachauswahl. Sie können alle Elemente in einer CELLGET-Formel durch Referenzen auf gültige Multiselect-XML (MLS-XML) ersetzen. Die Referenzen können sich auf Zellen oder Variablen beziehen, die MLS-XML enthalten.
Im folgenden Beispiel werden die Elemente 2016 und 2017 als MLS-XML in einer Berichtsvariable gespeichert:
=CELLGET("BestPracticesOLAP","ANALYSIS","[CHANNEL].[All Channels]","[MEASURE].[Gross Margin]",
"[POS].[All POS]","[PRODUCT].[All Tires]","[REGION].[All Regions].[Europe]",
ReportVariables.rv_multi.Text,"[VALTYPE].[Variance]")
Sie können auch einen Bereich verwenden, um mehrere Elemente einer Dimension anzugeben.
Im folgenden Beispiel werden die Elemente 2016 und 2017 in einem Bereich angegeben:
=CELLGET("BestPracticesOLAP","ANALYSIS","[CHANNEL].[All Channels]","[MEASURE].[Gross Margin]"
,"[POS].[all pos]","[Product].[all tires]","[region].[all regions].[europe]",
"[Period].[all years].[2016]::[period].[all years].[2017]","[valtype].[variance]")
Die Funktion gibt die Summe der Werte der einzelnen Elemente zurück.