歡迎訪問 重慶118考試網(mflforhim.com)

重慶人力資源和社會保障網 | 重慶事業單位招聘 | 重慶企業招聘
重慶118網

用了這麽多年的Excel,我還是不知道M函數是什麽。如果你懂一個詞,不要後悔!

時間:2020-04-27 19:33 來源: 重慶118百科知識網 網址: www.mflforhim.com 編輯:小多

私信回複關鍵詞【插件】~

獲取Excel高手都在用的“插件合集+插件使用小技巧”!

許多同學哭爹喊娘、歇斯底裏地說要學 PQ!

Power Query 裏最強大的還是 M 函數了,它算是 Excel 函數的加強版。

今天總結了 M 函數入門必知的 6 個基礎知識,趕緊收藏學習吧!

01

什麽是 M 函數?

M 函數是微軟為 MicroSoft Power Query 設計的公式語言,簡稱 M 函數。

所以顧名思義,M 函數隻能用在 Power Query 中。

M 函數和 Excel 中的函數相比,有下麵幾個優勢:

❶ 數據處理能力更強。

Excel 的函數公式處理上萬行數據的時候,就會出現明顯的卡頓。

M 函數是基於 Power Query 的,Excel 中的數據需要先加載到 Power Query 中,數據處理能力倍增,處理幾十萬行的數據毫無壓力。

❷ 數據計算方式更豐富。

普通的 Excel 函數,處理數據通常隻有數據計算、文本處理、數據查詢這幾種方式。

而 M 函數基於 List、Table 等對象,可以實現分組統計、透視列、逆透視、合並查詢、拆分表格、表格結構重組等更多複雜的表格操作。

02

M 函數能幹啥?

舉一個很簡單的例子。

我們經常需要根據某個條件,查詢所有符合的記錄。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

在 Excel 中要編寫這麽複雜的公式。

= Table.SelectRows(源, each ([部門] = "工程部"))

而在 M 函數中,隻需要一個 SelectRows 一個函數,就可以輕鬆實現。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

= Table.SelectRows(源, each ([部門] = "工程部"))

而且計算的結果和原始數據保持聯動,數據發生變動,統計結果隻需要右鍵,就可以一鍵刷新。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

03

M函數編寫位置

接下來,我們從函數編寫第一步開始,再來看看 Excel 函數和 M 函數,更細節的對比。

Excel 函數

Excel 在任意單元格都可以寫函數,隻要用等號開頭就可以。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

❶ 可以在單元格裏寫=A2,引用 A2 單元格的值;

❷ 可以在公式欄裏寫=SUM(B3:D4)函數,對數據求和。

M 函數

M 函數在 Power Query 中編寫,同樣也有兩種方法:

可以在公式欄裏寫 M 函數:

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

步驟如下:

❶ 先點擊 fx,創建一個新的步驟然後開始;

❷ 在公式欄中開始寫公式。

也可以在「高級編輯器」中,用代碼的形式來寫 M 函數:

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

步驟如下:

❶ 在「主頁」菜單中,點擊「高級編輯器」;

❷ 給這個步驟起一個名字 Sumresult;

❸ 其名字後麵編寫 M 函數公式。

04

函數名稱

函數公式根據用途,可以分為統計函數、文本函數、查詢函數等類型。

Excel 函數

Excel 中可以在「公式」欄中,根據分類選擇使用對應的函數。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

如果是直接手寫函數,沒有相關的分類提示。

▋M 函數

M 函數的分類管理,使用了編程中的「包」管理策略。

根據不同的數據類型,設定了不同的「包」,使用函數的時候,需要先寫「包」名稱。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

比如,前麵統計 3 月銷量的公式,步驟如下:

❶ 先寫 List 包名稱;

❷ 然後寫 List.Sum 函數,對表格「源」中的「3 月」這一列求和。

所有的 M 函數,都要先寫包名稱。

05

參數類型

參數就是函數公式計算需要的原材料。

M 函數學習的一個大門檻,就是對於參數類型(或者說數據類型)的理解。

Excel 函數

函數參數類型,都是具體的數值,這個數值有兩種參數形式:

❶ 數值,直接寫在函數中;

❷ 引用,通過單元格引用,寫入函數中。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

M 函數

除了常規的數值類型,M 函數中增加了 3 個數據類型:Record、List、Table。

引入了編程中的「對象」的概念,增加了學習難度。

❶ Record。

多個不同類型的數據的合集。

比如一個人的姓名、數量等信息,可以以人為單位,這個人的類型就是 Record。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

在 Power Query 中,單元格裏顯示的是數據類型「Record」。

鼠標選擇單元格後,下方的預覽麵板中,可以查看 Record 的明細。

❷ List。

一組數據清單,類似 Excel 中的數組。

這個數組中的數據,可以是數值,也可以是一組 Record,也可以是一組 List,一組 Table。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

這個 List 中既包含了基礎的數據,也包含了 Record 記錄和另一個 List 數據。

❸ Table。

表格類型數據。

沒錯的,M 函數中可以把一整個表格,都當成參數,而且是常規操作。

因為 M 函數計算的最終目的就是返回一個表格。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

在預覽區域中,可以看到表格的字段名稱、數據內容。

06

返回結果

返回結果,是指函數公式計算之後返回到單元格裏的數據。

Excel 函數

仔細回顧一下 Excel 中的函數公式。

無論是 SUM 函數,VLOOKUP 函數,返回的數據類型都非常單一,全部都是 1 個單獨的數值。

然後我們再通過「填充公式」的方式,計算出所有符合要求的數據。

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

無論公式長短,返回結果都是一個數值。

M 函數

M 函數中的參數多了 Record、List、Table 三種類型,那麽對應的,M 函數也可以把這三種數據類型,作為計算結果返回到 Power Query 中。

返回Record數據:

這段公式將返回一個 Record 數據:

= [姓名="拉登Dony",數量=123]
用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

返回 List 數據:

這段公式將返回一個 List 數據:

= {1,2,3,4}
用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

返回 Table 數據:

這段公式將返回一個 Table 數據:

= #table({"姓名","數量"},{{"dony",123},{"king",456}})
用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!

大部分情況下,我期望返回的結果都是一個 Table 類型,因為需要轉成表格上載到 Excel 中。

而 List 和 Record 通常是數據計算過程中處理的數據。

特別是 List 類型數據,包含了大量核心的 M 函數,也是後續深入學習的重點。

07

總結

如果根據誕生的年份來看,Excel 函數已經是一個中老年人。

大家都非常的熟悉了,合作起來也更順暢,但技術陳舊,處理複雜需求的時候,會略顯疲憊。

M 函數則是小夥正當年,技術高、能力強,手上一大把的神器函數,但是人生地不熟,語言有障礙,前期溝通成本略高。

看完今天的文章,你覺得自己該不該學習 M 函數呢?留言告訴我吧?

私信回複關鍵詞【插件】~

獲取Excel高手都在用的“插件合集+插件使用小技巧”!

用了這麽多年Excel,還不知道M函數是啥?一文弄懂,不學後悔!



更多關於"用了這麽多年的Excel,我還是不知道M函數是什麽。如果你懂一個詞,不要後悔!"信息,請多多關注哦!

本文信息參考自:中國人事考試網

二維碼
意見反饋