如何使用Power Query對數據號段進行拆分?

精進Excel


這樣的數據拆分,使用Excel完成的難度非常大,而用Power Query則很簡單。


切換到【數據】選項卡,在【獲取與轉換】分區中,點擊【從表格】將當前表格導入查詢編輯器。


Step2:對號段列進行拆分

①導入編輯器後,選中【號段】字段,點擊【開始】→【轉換】→【拆分項】選項,選擇【按分隔符】選項。接下來會彈出【按分隔符拆分列】對話框,設置分隔符為【自定義】,並輸入【-】號,如圖所示。

②點擊確定後,【號段】字段被拆分成兩列,如圖所示:

③設置【號段1】和【號段2】的數據類型為【整數】,如圖所示:


Step3:添加自定義列

①切換到【添加列】選項卡,然後單擊【添加自定義列】,如圖所示:

②在彈出的【添加自定義列】對話框中,設置新列名為【號碼】,自定義列公式為={[號段.1]..[號段.2]},這樣數據表就添加了一個新的數據列。

③如圖所示為新增加的數據列,單擊【號碼】字段右側的展開按鈕,將數據列展開。

展開後的結果


Step4:刪除多餘的列

選中兩個多餘的字段並單擊鼠標右鍵,在彈出的菜單中選擇【刪除列】,把無用的列刪除掉,如圖所示。

完成後,生成的數據表就是按照號段拆分後的數據表:


補充:

自定義列公式={[號段.1]..[號段.2]},表示生成從一個初始值到一個結束值的List清單。


「精進Excel」系頭條簽約作者,關注我,如果任意點開三篇文章,沒有你想要的知識,算我耍流氓!

精進Excel


先佔個前排,明天來回答!😁😁😁

-----------------------------------

提問的Excel老大哥給出了常規的方法,那我只好用寫PQ公式的方法了。

-----------------------------------


第一步、將數據加載到PQ

數據選項卡-從表格,數據就加載到PQ。


二、拆分組合數據

添加列-自定義列,寫上公式:

={Number.From(Text.Range([號段],0,5))..Number.From(Text.Range([號段],6,5))}

  1. 這裡分別用“-”左右邊的數字構造列表,其中Text.Range函數類似工作表函數Mid,但是因為出來的結果是文本,所以用Number.From轉換為數字;

  2. 這裡因為號段長度是統一的,所以直接寫的0位開始取5位和6位開始取5位(注意PQ裡的起始位置是0),如果號段長度不一致,可以用Text.PositionOf來確定符號“-”的位置,類似於工作表函數Find;
  3. 這裡的操作和上面老哥的操作其實原理一致,只不過這裡不會產生多餘的列。


三、擴展到行

上面的步驟是構造了列表,現在只需要點擊擴展到新行,就可以展開數據了。

以下是做好的結果


分享到:


相關文章: