Applies ToExcel 2010 SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Web

Microsoft 發佈 Microsoft SQL Server 2008、Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2012 以一個可下載的檔案修正。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2008 (SQL Server 2008 R2or SQL Server 2012 修正版本)中所包含的所有修復程式及所有安全性修正程式。

徵狀

請考慮下列情況。 您使用 Microsoft SQL Server 2008 Reporting Services (SSRS 2008)、Microsoft SQL Server 2008 R2 Reporting Services (SSRS 2008 R2)或 Microsoft SQL Server 2012 Reporting Services (SSRS 2012),將報表匯出為 Microsoft Excel 活頁簿檔案。 接著,您可以使用 Microsoft Excel 2010 來開啟 Excel 活頁簿檔案。 在這種情況下,您會在對話方塊中收到下列錯誤訊息:

檔案錯誤:資料可能已遺失。

注意事項

  • 如果您使用 Microsoft Office Excel 2003 或 Microsoft Office Excel 2007 來開啟活頁簿檔案,就不會發生這個問題。

  • 如果您將檔案儲存為 Excel 2010 活頁簿檔案,就不會發生這個問題。

原因

發生這個問題的原因是,在您匯出報表時,ssrs 2008、SSRS 2008 R2 或 SSRS 2012 將負零(-0)值寫入 Excel 活頁簿。 當您開啟 Excel 活頁簿時,Excel 2010 會檢查值,並在找到值後產生錯誤訊息。

解決方案

累積更新資訊

SQL Server 2008 R2 Service Pack 2

此問題的修正程式是在 SQL Server 2008 R2 Service Pack 2 的累積更新1中第一次發行。如需如何取得此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2720425 SQL Server 2008 R2 Service Pack 2 的累積式更新套件1注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2730301 在發行 SQL Server 2008 R2 Service Pack 2 之後發行的 SQL Server 2008 R2 組建

SQL Server 2012

此問題的修正程式是在 SQL Server 2012 的累積更新2中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2703275 SQL Server 2012 的累積更新套件2注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 Microsoft 建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建 您必須將 SQL Server 2012 修補程式套用至 SQL Server 2012 的安裝。

SQL Server 2008 R2 Service Pack 1

此問題的修正程式是在 SQL Server 2008 R2 Service Pack 1 的累積更新6中第一次發行。如需如何取得此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2679367 SQL Server 2008 R2 Service Pack 1 的累積更新套件6注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2567616 在發行 SQL Server 2008 R2 Service Pack 1 之後發行的 SQL Server 2008 R2 組建

SQL Server 2008 R2

此問題的修正程式是在累積更新13中第一次發行。如需有關如何取得 SQL Server 2008 R2 累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2679366 SQL Server 2008 R2 的累積更新套件13 注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2008 R2 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

981356 在發行 SQL Server 2008 R2 之後發行的 SQL Server 2008 R2 組建

SQL Server 2008 Service Pack 3

此問題的修正程式是以 SQL Server 2008 的累積更新4(Service Pack 3)第一次發行。如需如何取得此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2673383 SQL Server 2008 的累積更新套件 4 Service Pack 3注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2629969 在發行 SQL Server 2008 Service Pack 3 之後發行的 SQL Server 2008 組建

因應措施

若要解決此問題,請不要使用負零。 例如,當您在 SSRS 2008 中計算文字方塊的值時,您可以使用類似下列的運算式:

=IIf(Sum(Fields!Amount.Value) = -0, 0, Sum(Fields!Amount.Value))

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。