共用方式為


Document.Clean 方法 (Visio)

會在文件中檢查、報告及修復選取的狀況。

語法

表達式Clean (nTargetsnActionsnAlertsnFixesbStopOnErrorbLogFileNamenReserved)

表達 代表 Document 物件的變數。

參數

名稱 必要/選用 資料類型 描述
nTargets 選用 Variant 指出要檢查的文件部分。 如需可能的值,請參閱<備註>。
nActions 選用 Variant 指出要偵測的狀況。 如需可能的值,請參閱<備註>。
nAlerts 選用 Variant 指出偵測到狀況後,需要回報的狀況。 如需可能的值,請參閱<備註>。
nFixes 選用 Variant 指出偵測到狀況後,需要修正的狀況。 如需可能的值,請參閱<備註>。
bStopOnError 選用 Variant 如果在修正偵測到的狀況時發生錯誤,非零 (True) 的值會造成處理停止,零 (False) 值則允許繼續處理。
bLogFileName 選用 Variant 保留供日後使用。
nReserved 選用 Variant 保留供日後使用。

傳回值

註解

內部的 Microsoft Visio 開發人員應該使用 Clean 方法,驗證並最佳化 Visio 隨附的文件,協力廠商開發人員則可以針對他們自己的文件使用這個方法。

建議開發人員針對 nTargetsnActionsnAlertsnFixes 使用預設值,並在清除檔之前建立文件的備份複本。

您可以比較 Clean 方法執行前後所儲存的 VDX (XML) 版本文件,以識別 Clean 方法所做的文件變更。

nTargets 自變數可以是 Visio 類型連結庫中 VisDocCleanTargets 中定義之常數值的任何組合,如下表所述。

常數 描述
visDocCleanTargAll &HFF 檢查 nTargets ) 的所有物件 (預設值。
visDocCleanTargFPages &H1 檢查前景頁面
visDocCleanTargBPages &H2 檢查背景頁面
visDocCleanTargMasters &H4 檢查主圖形
visDocCleanTargStyles &H8 檢查樣式
visDocCleanTargDoc &H10 檢查文件工作表
visDocCleanTargPageSheet &H100 檢查頁面工作表

nActions、nAlerts 和 nFixes 自變數可以是 Visio 類型連結庫中 VisDocCleanActions 中所定義常數值的任何組合,如下表所述。

常數 描述
visDocCleanActLocalFormulas &H1 偵測不必要的本機覆寫
visDocCleanActEmptyRowsAndSects &H2 偵測空的本機列及區段
visDocCleanActNonDefaultFonts &H4 偵測非預設字型設定
visDocCleanActStaleResults &H8 偵測與公式不相符的結果
visDocCleanActMissingSubs &H10 偵測遺失的訂閱 (儲存格相依性)
visDocCleanActConstantFormulas &H20 偵測可從結果產生的公式
visDocCleanActNearZero &H40 偵測幾乎為零的結果並將它們變更為零
visDocCleanActDuplicateSubs &H80 偵測重複的訂閱 (儲存格相依性)
visDocCleanActBadDisplayLists &H100 偵測無效的顯示清單連結
visDocCleanActDeletedFields &H400 偵測刪除的欄位
visDocCleanActBadFieldFormulas &H800 偵測遺失公式或公式不標準的欄位
visDocCleanActBadFieldMarks &H1000 偵測計數及標記值不同步的欄位。 變更逸出字元的位置以符合字元計數
visDocCleanActBadReferences &H2000 偵測有 #Ref() 錯誤的公式
visDocCleanActAll &H3FFF 執行所有動作
visDocCleanActDefault &H1FD8 偵測 (nActions ) 預設值的默認條件。
visDocCleanAlertDefault &H0 要報告的默認條件 (nAlerts ) 的預設值。
visDocCleanFixDefault &H3D8 修正 nFixes ) (預設值的默認條件。

範例

下列程序會示範 Clean 方法的其中一種用法。 在此例中,會以原本繼承的相同值覆寫矩形的圖樣,以形成不必要的本機覆寫。 然後執行 Clean 方法來偵測此狀況,並且顯示讓使用者選擇是否要修正此狀況的警告。

  1. 建立新的空白繪圖。

  2. 使用 [矩形] 工具在繪圖頁面上繪製矩形。 如果在 ShapeSheet 視窗中檢視這個圖形,可以看到 LinePattern 儲存格中的值 ("1") 是黑色,表示這是繼承的值。

  3. 以滑鼠右鍵按一下圖形,指向 [格式],按一下 [線條],然後在 [線條] 對話方塊中重新套用相同的線條樣式。 此舉會在圖形中建立本機值,又稱為本機覆寫。 現在如果在 ShapeSheet 視窗中檢視這個圖形,則可以看到 LinePattern 儲存格中的值是藍色,表示這是本機的值。

  4. 將下列 Clean_Example 程序插入文件的 Microsoft Visual Basic for Applications 專案中:

  5. 執行 Clean_Example 程序 (按一下 [檢視] 索引標籤上的 [巨集];然後,在 [巨集] 對話方塊的巨集清單中,選取 [ThisDocument.Clean_Example],再按一下 [執行])。

 
    Public Sub Clean_Example() 
     
        ActiveDocument.Clean, visDocCleanActLocalFormulas, _  
           visDocCleanActLocalFormulas, visDocCleanActLocalFormulas 
     
End Sub

繪圖頁面上會顯示警告,詢問您是否要移除不需要的本機覆寫。 如果您按一下 [是],然後重新開啟 ShapeSheet 視窗,則可以看到 LinePattern 儲存格中的值又變回黑色,表示已還原成繼承的值。

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應