答案 按一下以展開選項 1 選項 1:使用 ZN 選擇「分析」>「創建計算欄位」在打開的「導出欄位」對話框中,執行以下作業,然後按一下「確定」:命名此計算欄位。在此範例中,導出欄位名為 Replace empty cells with zero (opt 1)(將空單元格取代為零(選項 1))在公式欄位中,創建一個類似於如下的計算:ZN(SUM([Amount])) ZN() 函數會將任何 NULL 值取代為零 建立一個名稱類似於「將空白儲存格取代為最後一個值(選項 1)」的導出欄位,計算方法如下所示:IFNULL( SUM([Amount]), PREVIOUS_VALUE(0) )IFNULL(..., PREVIOUS_VALUE(0)) 會將任何 NULL 值取代為此計算的最後一個值,這會建立執行中的最後一個值。根據檢視的建立方式,可能需要以不同方式計算 PREVIOUS_VALUE()。請參閱使用表計算轉換值 根據所需的最終結果,將「標記」卡片之「文字」上的 [金額] 取代為 [將空白儲存格取代為零(選項 1)] 或 [將空白儲存格取代為最後一個值(選項 1)](可選)在值上按一下滑鼠右鍵,並視需要格式化該值,以自訂檢視中的值。 若要檢視以下影片中顯示的步驟,請展開上述部分。附註:影片沒有聲音。 按一下以展開選項 2 選項 2:將篩選條件取代為參數 此選項會將 NULL 資料和已從檢視中篩選出的資料取代為零。按一下資料窗格中「維度」旁邊的向下箭頭,並選擇建立參數…在「建立參數」對話方塊中,執行以下動作,並按一下「確定」:為參數命名。在此範例中,我將其稱為 Date Parameter(日期參數)對於「資料類型」,選擇日期對於「允許的值」,選擇全部 在資料窗格中的 [Date Parameter](日期參數)上按一下滑鼠右鍵,並選擇顯示參數控件選擇「分析」>「創建計算欄位」在打開的「計算欄位」對話框中,執行以下作業,然後按一下「確定」:命名此計算欄位。在此範例中,導出欄位名稱為「篩選的金額或零(選項 2)」在公式欄位中,創建一個類似於如下的計算:ZN( IF [Date] >= [Date Parameter] THEN [Amount] END ) ZN() 函數會將任何 NULL 值取代為零。IF 陳述式取代 [日期] 篩選條件。 建立一個名稱類似於「篩選金額或最後一個值(選項 2)」的導出欄位,計算方法如下所示:IFNULL( SUM( IF [Date] >= [Date Parameter] THEN [Amount] END ), PREVIOUS_VALUE(0) ) IFNULL(..., PREVIOUS_VALUE(0)) 會將任何 NULL 值取代為此計算的最後一個值,這會建立執行中的最後一個值。根據檢視的建立方式,可能需要以不同方式計算 PREVIOUS_VALUE()。請參閱使用表計算轉換值 根據所需的最終結果,將「標記」卡片之「文字」上的 [金額] 取代為 [篩選金額或零(選項 2)] 或 [篩選金額或最後一個值(選項 2)]從「篩選條件」架中移除“[Date](日期)(可選)在值上按一下滑鼠右鍵,並視需要格式化該值,以自訂檢視中的值。 若要檢視以下影片中顯示的步驟,請展開上述部分。附註:影片沒有聲音。 按一下以展開選項 3 選項 3:調整檢視的形狀,並使用 ZN(LOOKUP()) 此選項會將 NULL 值、缺少的資料或篩選出的資料取代為零。將 [Stage](階段)從「列」架移到欄架選擇「分析」>「創建計算欄位」在打開的「計算欄位」對話框中,執行以下作業,然後按一下「確定」:命名此計算欄位。在此範例中,導出欄位名為 Replace empty cells with zero (opt 3)(將空單元格取代為零(選項 3))在公式欄位中,創建一個類似於如下的計算:ZN(LOOKUP(SUM([Amount]),0)) LOOKUP() 計算將在視圖中尋找目前單元格(由 LOOKUP() 的第二個參數 0 指定)的值,如果該值為 NULL,則 ZN() 函數將傳回零。請注意,檢視中必須有一個空白單元格,此選項才有用,因為此計算不會新增列/欄,只會寫入到空白單元格中。舉例,如果 [Stage](階段)位於「列」上,則 "Hibagon" 將只有一個階段列。如果 [Stage](階段)移到「欄」,則 Hibagon 有三個階段列,因為視圖中的至少一個其他專案包含每個階段。 建立一個名稱類似於「將空白儲存格取代為最後一個值(選項 3)」的導出欄位,計算方法如下所示:IFNULL( LOOKUP(SUM([Amount]),0), PREVIOUS_VALUE(0) ) IFNULL(..., PREVIOUS_VALUE(0)) 會將任何 NULL 值取代為此計算的最後一個值,這會建立執行中的最後一個值。根據檢視的建立方式,可能需要以不同方式計算 PREVIOUS_VALUE()。請參閱使用表計算轉換值 根據所需的最終結果,將「標記」卡片之「文字」上的 [金額] 取代為 [將空白儲存格取代為零(選項 3)] 或 [將空白儲存格取代為最後一個值(選項 3)](可選)在值上按一下滑鼠右鍵,並視需要格式化該值,以自訂檢視中的值。 若要檢視以下影片中顯示的步驟,請展開上述部分。附註:影片沒有聲音。 按一下以展開選項 4 選項 4:將原始資料加入主要值清單 此選項會在資料為 NULL、缺少或已從檢視中篩選出時顯示零。建立一個包含所有階段的主清單的文字檔案。在原始資料和主清單之間建立一個跨資料庫加入。使用加入計算按一對一關係加入表加入計算中 Tableau Desktop 10.2 中增加的新功能。對於更低版本,必須要在基礎資料來源中建立虛擬連結欄位。有關如何建立跨資料庫加入或加入計算的詳細資訊,請參見加入資料。 選擇「分析」>「創建計算欄位」在打開的「計算欄位」對話框中,執行以下作業,然後按一下「確定」:命名此計算欄位。在此範例中,導出欄位名為「新金額為零」在公式欄位中,創建一個類似於如下的計算:ZN( IF [Stage] = [Stage (Stage Master List)] THEN [Amount] END ) 聯結會建立重複的資料,因此,請移除重複資料,我們只想顯示主要清單中維度為 NULL 或維度缺少相同值的資料。ZN() 函數會將任何 NULL 值取代為零。 建立一個名稱類似於「新金額為最後一個值」的導出欄位,計算方法如下所示:IFNULL( SUM( IF [Stage] = [Stage (Stage Master List)] THEN [Amount] END), PREVIOUS_VALUE(0) ) IFNULL(..., PREVIOUS_VALUE(0)) 會將任何 NULL 值取代為此計算的最後一個值,這會建立執行中的最後一個值。根據檢視的建立方式,可能需要以不同方式計算 PREVIOUS_VALUE()。請參閱使用表計算轉換值 根據所需的最終結果,使用 [新金額為零] 或 [新金額為最後一個值](可選)在值上按一下滑鼠右鍵,並視需要格式化該值,以自訂檢視中的值。 若要檢視以下影片中顯示的步驟,請展開上述部分。附註:影片沒有聲音。 按一下以展開選項 5 選項 5:將缺少的資料新增到基礎資料集合 編輯原始資料來源以加入缺少的資料。根據使用案例,最佳的解決方案可能是加入包含 NULL 度量的虛擬記錄,然後按照以上選項 1 的說明進行動作。
其他資訊附帶的範例工作簿使用 Superstore 範例資料示範上述選項。所有說明都從「原始」工作表開始。有三種主要情形可能會建立需要取代為零的空白:NULL 資料:基礎資料集合包含記錄,但度量值為 NULL 或空白時,會發生此情形。在附帶的 Excel 工作簿 "NULL and Missing Examples.xlsx" 中,專案 "Brosnya" 對於 "In-Progress" 和 "Completed" 為 NULL。缺少資料:基礎資料集合中沒有記錄時,會發生此情形。在範例資料中,專案 "Hibagon" 缺少 "In-Progress" 和 "Completed"篩選資料:附帶的工作簿中有一個 [Date] 篩選條件,該篩選條件也會篩選出專案 "Dalmatian" 的 "Started" 和 "In-Progress"。專案 "Dalmatian" 的每個階段在基礎資料來源中都有記錄。 所有選項都會將 NULL 資料取代為零。選項 3、4 和 5 會將缺少的資料取代為零。選項 2、3 和 4 會將篩選出的資料取代為零。可以使用「分析」>「表版面配置」>「顯示空列/欄」選項在檢視中顯示額外的列/欄;但是,無法將任何資料寫入這些列。如果交叉資料表只有一個度量,則可以在格式設定選項中取代所有 NULL 值。請參閱格式設定 null 值
這篇文章是否解決了問題? 感謝您針對本文的效益提供意見回饋。 按一下這裡可返回「支援」頁面。 開啟新案例 開啟新案例 繼續搜尋 按一下這裡可前往「支援」頁面。 知識庫 取得問題及技術疑問的詳細解答及逐步操作說明。 社群 使用者可以透過我們活躍的社群,在論壇、使用者群組及各種構想中尋找和分享解決方案。 產品說明 瀏覽產品手冊與指南的完整清單。提供線上、離線及 PDF 格式版本。 訓練及教學課程 透過隨選、即時或課堂訓練,掌握如何使用 Tableau 產品。