[Office | Excel | C#] 如何透過程式不彈出相容性檢查 ... - - 點部落

文章推薦指數: 80 %
投票人數:10人

最近有需要寫到Excel程式,在Excel中透過automation駔唷些操作,而其中原本是xlsx格式的檔案患有需要轉為xls格式,此時便會有一些相容性的問題. 最近有需要寫到Excel程式,在Excel中透過automation駔唷些操作,而其中原本是xlsx格式的檔案患有需要轉為xls格式,此時便會有一些相容性的問題出現,例如頁首頁尾的類型等等… 但是,此時會彈出「相容性檢查程式」的警告對話框視窗,一般會由我們使用者互動,按下繼續或取消,但是透過程式時,因為要做自動化,自堧不會意識到視窗的出現,所以,到底要怎麼關閉他?或是預設不讓相容性檢查程式彈出呢? 其實很容易,只需要簡單的幾行Code就可以,讓我們來試試看! 前言     最近有需要寫到Excel程式,在Excel中透過automation駔唷些操作,而其中原本是xlsx格式的檔案患有需要轉為xls格式,此時便會有一些相容性的問題出現,例如頁首頁尾的類型等等… 但是,此時會彈出「相容性檢查程式」的警告對話框視窗,一般會由我們使用者互動,按下繼續或取消,但是透過程式時,因為要做自動化,自堧不會意識到視窗的出現,所以,到底要怎麼關閉他?或是預設不讓相容性檢查程式彈出呢? 其實很容易,只需要簡單的幾行Code就可以,讓我們來試試看!   解決辦法     首先,相容性檢查程式的圖案是如下圖:   而關閉的方式只需要在存檔前已就是SaveAs前,補上以下程式碼即可 //關閉相容性檢查的對話框 theWorkBook.CheckCompatibility=false; 就可以相容性檢查程式視窗不在出現了 如果此方法仍不行,代表你的文件可能是更早以前的版本2007之前,那麼還需要再加入另一行試試看: theWorkBook.DoNotPromptForConvert=true 以上希望有協助到:)     參考資料     Workbook.CheckCompatibility屬性 Workbook.DoNotPromptForConvert屬性 howtodisablecompatibilitycheckinexcelwhileautomatingthroughc# 希望有幫助到。

    文章中的敘述如有觀念不正確錯誤的部分,歡迎告知指正 謝謝 =) 另外要轉載請附上出處感謝   C#OfficeExcel 回首頁



請為這篇文章評分?