Power Query 條件動態篩選器

Power Query 條件動態篩選器

我有一個 Power Query 查詢,它使用輔助函數查詢從工作簿中的表中提取參數。例如,要按日期範圍過濾,我使用

#"Filtered Rows" = Table.SelectRows(#"Added Custom", each [EventDatetime] >= fnGetParameterValue("EventStartDate") and [EventDatetime] <= fnGetParameterValue("EventEndDate"))

我想做的是僅在 fnGetParameterValue("AccountNumber") 傳回的值不是空字串時進行過濾。

我嘗試在日期過濾步驟之後插入此步驟:

#"Filtered Rows1" = if fnGetParameterValue("AccountNumber") = "" then #"Filtered Rows" else Table.SelectRows(#"Filtered Rows", each [AccountNumber] = fnGetParameterValue("AccountNumber"))

我似乎沒有語法錯誤,但我沒有得到任何數據。

如何有條件地過濾資料?

答案1

我將使用您的函數(例如 [AccountNumber Filter] )並使用您的 if 邏輯新增中間步驟來新增列,如下所示:

if fnGetParameterValue("AccountNumber") = "" then [AccountNumber] else fnGetParameterValue("AccountNumber")

然後我會在過濾步驟中使用該新列,例如

[AccountNumber] = [AccountNumber Filter]

中間步驟對於審查/測試等也將更加清晰。

相關內容