分類:多維數(shù)據(jù)集 CUBE函數(shù)并不是一個函數(shù),,而是一組函數(shù)。 這組函數(shù)的作用是不使用數(shù)據(jù)透視表,,直接從數(shù)據(jù)中取出想要的匯總數(shù)據(jù),。對于分析數(shù)據(jù),制作Dashboard等工作,,這組函數(shù)是一個非常強大的工具,。 我們先來認識一下這組函數(shù)的作用。 假設我們有如下的銷售明細數(shù)據(jù): 我們要統(tǒng)計一下合計的數(shù)量,??梢允褂孟旅娴墓剑?/span>
這里我們用的CUBE函數(shù)組中的一個函數(shù):CUBEVALUE函數(shù)。 你可能會說,,太復雜了,,還不如SUM函數(shù)簡單。 不過,,我們還可以擴展,。比如,我要計算一月的數(shù)量,,還可以使用同一個函數(shù): 計算售點TPNXDCSO在一月的數(shù)量: 看上去就是個SUMIFS之類的嗎,,不過還可以計算計數(shù):售點TPNXDCSO在一月銷售的訂單數(shù): 現(xiàn)在,又變成了COUNTIFS函數(shù),。 再次變身,,統(tǒng)計一下售點TPNXDCSO在一月銷售的不同產(chǎn)品數(shù)量: 還可以統(tǒng)計一下占比: 從上面的例子可以看出,CUBEVALUE函數(shù)可以從任意角度對表格進行統(tǒng)計匯總,,這個能力遠遠強于SUM,,SUMIFS,COUNTIFS等函數(shù),。 當我們使用數(shù)據(jù)模型的時候,,數(shù)據(jù)(可以是Excel中的數(shù)據(jù),也可以是其他數(shù)據(jù)源的數(shù)據(jù))已經(jīng)導入到數(shù)據(jù)模型中了,。對于模型中的數(shù)據(jù),,在Excel中沒有辦法用傳統(tǒng)的Excel公式進行計算,。當然,我們可以使用Power Pivot(超級透視表)進行數(shù)據(jù)的匯總和展示,。但是,,這嚴重依賴于數(shù)據(jù)透視表。在很多場景中,,透視表并不是非常合適的方案,。CUBE類函數(shù)就提供了一種在Excel中通過公式對模型中的數(shù)據(jù)進行計算的方式。 實際上,,類似功能的函數(shù)我們介紹過:GETPIVOTDATA,,功能很強大,可以從透視表中獲取各種不同角度的匯總數(shù)據(jù),。 CUBEVALUE函數(shù)作用類似,,但是又沒有GETPIVOTDATA函數(shù)的限制: GETPIVOTDATA函數(shù)要求一定有一個數(shù)據(jù)透視表存在,而且,,數(shù)據(jù)透視表的字段必須是設定好的,。如果改變了數(shù)據(jù)透視表的字段,GETPIVOTDATA函數(shù)就會返回錯誤值,。 因此,,如果要使用GETPIVOTDATA函數(shù)進行不同維度的匯總,必須創(chuàng)建多個不同的數(shù)據(jù)透視表,。 而CBUE函數(shù)就不依賴于具體的透視表,。 使用CUBE函數(shù)需要用到數(shù)據(jù)模型。因此,,建議我們的Excel中已經(jīng)激活了Power Pivot,。(其實不是必須,但是最好如此),。 關(guān)于如何激活Power Pivot,,請參見如何在Excel2013中激活Power BI。 然后,,在Excel中,,將數(shù)據(jù)表添加到數(shù)據(jù)模型: 然后就可以使用CUBE函數(shù)了。不妨試著寫一下我們前面的公式,。 下面是CUBE的示意圖: Cube,,中文翻譯成立方體,。是對數(shù)據(jù)模型的一個形象化描述。 Member,是CUBE中的成員,,可以是產(chǎn)品,,日期,地區(qū),,也可以是其他屬性,,比如部門,可以近似理解為維度,。 Value,,就是其中的CUBE中的數(shù)值。 在Cube中,,我們可以通過指定Member,,定位到Cube中具體的位置,然后通過Value,,得到我們需要的數(shù)值,。 這個Value,在Cube和數(shù)據(jù)模型中,,有一個名詞描述:Measure,,中文翻譯為度量,。 其實,,透視表就是一個Cube的具象化展示。(一個透視表就是一個Cube的某一個方向的切片): 注意其中紅色加亮的“總計”,,也屬于Member,。 而中間的Value,就是數(shù)據(jù)模型中的度量值,,在上圖中,,就是很簡單的數(shù)量的合計。 實際上,,超級透視表是我們學習CUBE類函數(shù)最好的入門方式了,,因為我們可以將超級透視表轉(zhuǎn)換為CUBE函數(shù)。 在數(shù)據(jù)透視表分析選項卡中,,點擊OLAP工具,,然后點擊“轉(zhuǎn)換為公式: 整個透視表就變成了一個用公式完成的交叉表了: 我們看到,其中的每一個數(shù)值,,都是一個CUBEVALUE函數(shù),。當然,其中的參數(shù),,是引用的單元格,,不是像我們上面舉例時直接寫的Member, 未完待續(xù) Excel+Power Query+Power Pivot+Power BI 自定義函數(shù) 底部菜單:知識庫->自定義函數(shù) 面授培訓 底部菜單:培訓學習->面授培訓 也可以在歷史文章中學習Excel,Power Query,,Power Pivot,,Power BI,Power Automate各種技巧,。 |
|