Excel之PowerQuery 表格整型 續(xù)集
網(wǎng)友提問(wèn):

我的疑問(wèn):
有如下一張表,一個(gè)公司成立了兩個(gè)小組,張三和李四是小組的成員,孫興華是保潔。這個(gè)事你知道,可是你沒(méi)通知微軟,計(jì)算機(jī)不知道。需要你告訴計(jì)算機(jī)誰(shuí)是干什么。如果我說(shuō)的沒(méi)道理大家可以反駁。

你有兩種方案,第一:做表時(shí)做規(guī)范,如下圖,計(jì)算機(jī)就知道+號(hào)后面是保潔了
例如:張三、李四+孫興華

第二種方案就麻煩點(diǎn),你要準(zhǔn)備一張一端表,待你將上面的人員變成一維數(shù)據(jù)后,將這張表的職務(wù)V過(guò)去。

當(dāng)然其它方法還有,只是這兩個(gè)方法零基礎(chǔ)的人也知道我在說(shuō)什么(可以不會(huì)做,但是必須知道我要做什么)。今天的內(nèi)容我做完整匹配,不做模糊匹配。因?yàn)?07集,您目前應(yīng)該是三分之一還沒(méi)看完。不適合使用太炫技能的方法。
第1步:將表格導(dǎo)入PowerQuery

第2步:將【商家編碼】這列按“+”號(hào)分割成列表

第3步:展開(kāi)列表
你用公式展開(kāi)或者用鼠標(biāo)展開(kāi)都可以,建議使用鼠標(biāo)操作

第4步:提取開(kāi)頭字母
這一步,你的思路要多,比如先截取前幾個(gè)再提取字母。。。等等,根據(jù)你需求而定

第5步:準(zhǔn)備一端表,做合并查詢
我導(dǎo)入了一個(gè)叫表2的表格

與表1做合并查詢,使用鼠標(biāo)就搞定了,PowerQuery基礎(chǔ)篇就講了,如果不會(huì)做就不應(yīng)該看到這里了。

第6步:將新增的表2那個(gè)列,變成文本

第7步:重點(diǎn)來(lái)了我們需要三次分組,寫(xiě)在一個(gè)公式里
第1次對(duì)修改列那張表的訂單編號(hào)分組,如下圖,現(xiàn)在x就是數(shù)據(jù)列的每個(gè)Table

再對(duì)每個(gè)table里面的表2那列分組,我們點(diǎn)進(jìn)去可以看到如下效果,現(xiàn)在的每個(gè)table就是公式中的y

我們?cè)賹?duì)每個(gè)y按開(kāi)頭列進(jìn)行分組
最終公式如下:
我們點(diǎn)Table到最后一層會(huì)看到如下效果

z就是數(shù)據(jù)列的每個(gè)table,我們需要取每個(gè)table中商家編碼? & “*” & 每個(gè)table的行數(shù)
z[商家編碼]{0} & "*" & Text.From(Table.RowCount(z)) & "份"
那我們將公式中的z修改成上面的代碼,屬于z的表就變成了文字

現(xiàn)在數(shù)據(jù)里的每個(gè)Table是y,我們需要將y里面的數(shù)據(jù)列連接在一起
?Text.Combine(y[數(shù)據(jù)])
我們需要知道 y[數(shù)據(jù)]?在公式的哪里體現(xiàn)

選中的部分是y,在他后面取【數(shù)據(jù)】列,最后將y[數(shù)據(jù)]放到Text.Combine里面合并

現(xiàn)在屬于y的表也變成了文字

數(shù)據(jù)列的每個(gè)Table都是x了,將每個(gè)x轉(zhuǎn)置
Table.Transpose(x)
現(xiàn)在就是找到x

選中的這部分是x,我們將他外面套上Table.Transpose

我們發(fā)現(xiàn)每張表需要提升標(biāo)題,我還可以在套娃里面做,我怕觀眾暈,這步就拿出來(lái)修改列吧
第8步:修改列提升標(biāo)題

第9步:展開(kāi)數(shù)據(jù)列

得到結(jié)果:

與網(wǎng)友的目標(biāo)表核對(duì)一下:

方法不止這一種,M函數(shù)有N種組合,DAX函數(shù)更多的是你對(duì)業(yè)務(wù)理解了就能寫(xiě)出來(lái),M函數(shù)更多考驗(yàn)邏輯思維,凡是讓你在這里背函數(shù)的,都是不想讓你學(xué)會(huì)的,M函數(shù)目前有700多個(gè),還在不停的增加,你背不下來(lái),會(huì)默寫(xiě)的都不是背下來(lái)的,是因?yàn)榻?jīng)常用那個(gè)函數(shù),函數(shù)的拼寫(xiě)自己留在了大腦中。
友情提示:
當(dāng)你遇到問(wèn)題時(shí),如果是原數(shù)據(jù),原需求,做到哪步卡住了,我已經(jīng)將做好的數(shù)據(jù)發(fā)到評(píng)論區(qū)置頂中了,下載核對(duì)自己哪里做錯(cuò)了。改數(shù)據(jù)改需求,請(qǐng)重新提問(wèn)。

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