Excel之PowerQuery 將每個(gè)人的家庭成員橫向展開
網(wǎng)友提問:

放大圖片:

我用的是最原始的思考過程給你寫的代碼,因?yàn)镻owerQuery你目前還沒有熟練掌握,不適合上來就傳遞參數(shù)。1+2+3+4? ? 雖然用等差數(shù)列計(jì)算更好,但是逐步計(jì)算的過程必須要先掌握。這就是為什么不在小學(xué)一年級講等差數(shù)列的原因。
也是我為什么不在《火力全開》中講DAX原理的原因,九年義務(wù)教育的根本目的是為了保障適齡兒童、少年接受義務(wù)教育的權(quán)利,保證義務(wù)教育的實(shí)施,提高全民族素質(zhì)。并不是要大家競爭,并不是讓誰在初三之前退學(xué),競爭是在中考時(shí)比分?jǐn)?shù),但是所有人都要完成九年義務(wù)教育。我講的《火力全開》就是讓每個(gè)人都能接觸到新的軟件,并不是想嚇跑誰,不想繼續(xù)學(xué)可以降低你的需求,簡化你的表格。就好比初三畢業(yè)后,你可以從事流水線、廚師、司機(jī)、超市理貨、三通一達(dá)等工作,你想找一個(gè)不賣力氣風(fēng)不吹雨不淋日不曬的工作可以讀高中考大學(xué),要求再高可以考研...? 你覺得《火力全開》不夠你解決問題的標(biāo)準(zhǔn),可以繼續(xù)學(xué)習(xí)《DAX神功》文字版。但是,任何人無權(quán)歧視零基礎(chǔ)的小伙伴。你可以比別人強(qiáng),但是你不能剝奪新人學(xué)習(xí)的權(quán)利。
歡迎所有人把自己的方法發(fā)出來,但是不要歧視,特別是像那種說小學(xué)沒講等差數(shù)列,讓人家從1+2+3+4...是坑人這種話。大家懂我的意思,我們都希望看到的是大家的方法,而不是藏著自己的方法去說那些不該說的話。
為什么大家都不建議玩盜版游戲,因?yàn)槿绻袊I正版游戲的人稀少,游戲公司將來可能就不再發(fā)行中文游戲了,如果某人不玩正版請不要干涉別人買正版。同理,很多人不喜歡中文配音的電影,他可以看原聲,但是不要到某奇異、某訊、某酷的國配電影中發(fā)那種彈幕,不要反對國配,學(xué)語文不是用來打擦邊球的,如下圖

第1步:導(dǎo)入原始數(shù)據(jù)到PowerQuery

第2步:對指定列向下填充

當(dāng)然"學(xué)生姓名"這里可以寫成動態(tài),比如取表的表頭,返回一個(gè)列表,取列表第一個(gè)元素,這樣就動態(tài)了。我就不演示了,這些很基礎(chǔ),有需要你就用。
第3步:拼出我們需要的表頭樣子

第4步:將上面的樣子通過Text.Split轉(zhuǎn)成列表

第5步:計(jì)算每個(gè)List中的元素?cái)?shù)量
其實(shí)熟練運(yùn)用PowerQuery的人沒必要增加這個(gè)列,直接就可以篩選了,這里是照顧新人

第6步:拿到表頭要顯示的效果

第7步:拿到每個(gè)組對應(yīng)的數(shù)據(jù)

第8步:展開時(shí)發(fā)現(xiàn)表頭都是固定的


藍(lán)色的線表頭要顯示的樣子,我們有了,可是Column1...Column6是動態(tài)展開我們沒有
所以,我們刪除展開這一步,做動態(tài)表頭,方法我們之前多次講過

第9步:寫展開代碼

第10步:上載后的結(jié)果


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