如果您需要比 Power Query 中現成所提供的數據行更多的彈性來新增數據行,您可以使用 Power Query M 公式語言來建立自己的自定義數據行。
假設您有一個具有下列數據行集的數據表。
使用 單位、單價 和 折扣 欄位,您想要建立兩個新的欄位:
- 折扣前的總銷售:通過將 單位 欄與 單價 欄相乘計算得出。
- 折扣后的總銷售:計算方式是將 [ 折扣前的總銷售 ] 數據行乘以淨百分比值(一個減去折扣值)。
目標是建立包含折扣前總銷售額和折扣后總銷售額的新數據行的數據表。
建立自訂資料行
在 [ 新增數據行] 索引標籤上,選取 [自定義數據行]。
[ 自訂資料行 ] 對話框隨即出現。 此對話框可讓您定義用來建立欄位的公式。
自訂欄位對話框的螢幕快照,您可以在其中自訂欄位。
自訂資料行 對話框包含:
在 新增資料行名稱 方塊中,輸入您自定義欄的初始名稱。 您可以重新命名此資料行。
下拉功能表,您可以在其中選取新數據行的數據類型。
在自定義欄公式方塊中,您可以輸入Power Query M 公式。
[自訂資料行公式] 選取範圍旁邊的 [可用的資料行] 清單。
備註
只有在您使用 Power Query Online 時,才能使用資料 類型 選取。
若要新增自定義資料行,請從 [可用的 數據行] 清單中選取資料行。 然後,選取清單下方的 [插入數據行 ] 按鈕,將其新增至自定義數據行公式。 您也可以透過在清單中選取資料行來新增資料行。 或者,您可以在 自定義數據行公式中使用Power Query M 公式語言撰寫自己的公式。
備註
如果您在建立自定義數據行時發生語法錯誤,則會出現黃色警告圖示以及錯誤訊息和原因。
新增 [折扣前的總銷售] 數據行
您可以使用公式來建立 [折扣前總銷售額] 列 [Units] * [Unit Price]。 在 [數據類型] 中,選取 [貨幣 ] 數據類型。
該作業的結果會將名為折扣前總銷售額的新欄新增到您的數據表中。
備註
如果您使用 Power Query Desktop,[自定義] 資料行中無法使用 [資料類型] 字段。 這表示您必須在建立數據行之後定義任何自定義數據行的數據類型。 如需詳細資訊,請移至 Power Query 中的資料類型。
新增 [折扣后的總銷售] 數據行
您可以使用的公式是用來計算折扣前的總銷售額。[Total Sale before Discount]* (1-[Discount]) 將這個新數據行的數據類型設定為 Currency。
該作業的結果會在您的數據表中新增一個新的折扣後總銷售額欄。
修改現有的自定義數據行
Power Query 會將自訂數據行新增至數據表,並將 [新增自定義步驟] 新增至 [查詢設定] 中的 [套用的步驟] 清單。
若要修改您的自定義資料行,請選取 [套用的步驟] 清單中的 [新增自定義步驟]。
[ 自訂數據行 ] 對話框隨即出現,其中包含您建立的自定義數據行公式。
備註
根據您用於自訂欄的公式,Power Query 會變更步驟的設定選項,以提供更簡化和更直覺的體驗。 在此範例中, 新增自定義 步驟會將其行為從標準自定義數據行步驟變更為 乘法 體驗,因為來自該步驟的公式只會將兩個數據行中的值相乘。
使用 Copilot 建立自訂欄公式
備註
此體驗僅適用於使用 Copilot 的 Power Query 體驗。
在 [ 新增自定義數據行 ] 對話框中,可以使用具有 copilot 圖示的新輸入文本框。 在其中,您可以用自己的話和語言描述您希望這個自訂列對列的邏輯執行哪些操作。
例如,假設您想要引進複雜條件式邏輯的案例。 您可以使用自己的單字來描述此邏輯,Copilot 可以為您建立自定義數據行公式。
例如,對於具有 OrderID、 Quantity、 Category 和 Total 欄位的資料表,您可以傳遞如下所示的提示:
if the Total order is more than 2000 and the Category is B, then provide a discount of 10%. If the total is more than 200 and the Category is A, then provide a discount of 25% but only if the Quantity is more than 10 otherwise just provide a 10% discount.
提交此提示之後,Copilot 會處理它並修改自定義數據行公式,並視需要新增名稱和數據類型。
您可以檢閱自定義數據行,並進行任何必要的變更。
備註
在有現有公式的自訂欄位對話框中傳送的提示,可能會導致現有公式被 Copilot 的建議完全取代。
相關內容
- 您可以透過其他方式建立自定義數據行,例如根據您提供給Power Query 編輯器的範例建立資料行。 如需詳細資訊,請移至新增 範例中的欄。
- 如需 Power Query M 參考資訊,請移至 Power Query M 函式參考。