Excel之PowerQuery 講解國際排名公式
網(wǎng)友提問:

圖片放大:

我們先準(zhǔn)備好原始表

第1步:導(dǎo)入到PowerQuery
第2步:添加列,新列每一行都返回源那張表中【銷量】那個列

如果你寫成下面這樣,那他返回的是【銷量】這列每行的值,因為需求是排名所以不能這樣寫

第3步:
1、先理解列表篩選,上一步我們每一行返回了源那張表的【銷量】列

例如下面公式,篩選{1,99,8,98,5}這個列表中小于50的,其中下劃線“_”表示列表中的每一個值?
同樣可以寫成:其中孫興華就代碼每一個值,你可以把孫興華改成任何文字,中文英文均可
因為同一公式中,前面出現(xiàn)了each 他的每一個值是下劃線,你后面再次出現(xiàn)時,就會混淆,所以嵌套公式時,還是盡量對遍歷出來的“變量名”自定義。

每一個List我們有了,篩選列表我們也會了,
以第1行List為例,我們要在這個List中篩選,大于銷量列當(dāng)前行的999 ,肯定沒有所以返回空列表。
以第2行List為例,我們要在這個List中篩選,大于銷量列當(dāng)前行的998 ,會返回{999,999}
以此類推

接下來我們說一下網(wǎng)友不懂的公式,先看紅色,再看藍(lán)色,最后看綠色

最后我們將每個List中的元素個數(shù)進行計數(shù),使用List.Count,比如第一行的List是空列表,返回0,我們給他+1;第2行的List中有2個元素,我們給他+1,返回3。以此類推,就是國際排名了。

如果是中國式排名,就對每個List先通過List.Distinct先去重,再用List.Count計數(shù)并+1

學(xué)M函數(shù)時,一定要把自己擅長的語言天賦全忘記,這里不需要背也不需要讀,大家都是普通人,智商都在伯仲之間,本來學(xué)新知識都在一個起跑線上,你要再“負(fù)重前行”那學(xué)起來就會更加艱難。
你們可以問問B站上面的律師朋友,你問問他打官司時,是不是自己把所有法律條文都背下來了,還是學(xué)法律時知道有這個內(nèi)容,需要時從相關(guān)法律書籍中能查詢到,只是常用的內(nèi)容下意識的留在了自己的大腦中了。
除了學(xué)語言的人在介紹自己學(xué)習(xí)方法時說過背字典、背詞典,其它學(xué)科這種做法并不都適用。

PowerQuery合集:https://www.bilibili.com/video/BV1oa4y1j75e
更多教程:https://www.bilibili.com/read/cv10222110