為什麼儲存格格式在第二次嘗試之前無法正確顯示?

為什麼儲存格格式在第二次嘗試之前無法正確顯示?

我有一個由 SSRS 產生的 Excel 工作表,偶爾會出現奇怪的儲存格格式問題。

頂級行(A 列中的 1 行)以填滿顏色突出顯示,如下圖所示。有時,在這些行上,該行的 C 列中的儲存格會顯示白色填滿。

在此輸入影像描述

如果我右鍵單擊該單元格並選擇設定單元格格式...儘管顯示為白色,但它顯示了正確的圖案顏色。

如果我選擇單元格並使用立即視窗進行輸出ThemeColor,或者Pattern它們都返回-4142不正確的值。

Debug.Print Selection.Interior.ThemeColor

現在,如果我設定單元格填充顏色,它不會改變任何內容,包括立即視窗測試的輸出。

如果我第二次設定單元格填滿顏色,它會發生變化並且一切都會按預期工作。

所以我有兩個問題...

  1. 該單元格發生了什麼,它甚至不會響應設定屬性(第一次嘗試)?是什麼在控制它的狀態?
  2. 它是從 SSRS 還是 Excel 啟動的?

這裡有一個文件連結託管在 NoFile.io


根據 @Schlebe 的建議,我將固定工作表與原始 xml 進行了比較。原始細胞和固定細胞之間的差異就是 s 值。

原來的:<c r="C125" s="5"/>

固定的:<c r="C125" s="4"/>

答案1

這似乎是一個錯誤。

嘗試將其發佈到https://social.msdn.microsoft.com/Forums/en-US/home?ppud=4

您當然必須提供更多解釋或提交您的 Excel 文件。

但是您的 SQL Server 版本是什麼?

您的 Excel 文件類型是什麼? xls 還是 xlsx ?

如果是 xlsx,您可以嘗試使用 7z 開啟 Excel 文件,並將原始文件與您已修正的文件進行比較。

要做到這一點

  1. 您提取資料夾中的每個元素
  2. 在帶有 XML 工具的 Notepad++ 下,您可以格式化所有 XML 檔案以將每個標籤拆分為一行
  3. 使用 WinMerge,您可以比較兩個資料夾中的每個檔案。

有可能StyleId改變了,不利於比較。因此,您可能必須第一次儲存檔案而不添加任何更改,並且必須比較 2 個已儲存的檔案。

通常,我會添加評論,但我有太多東西要寫,使用答案來正確格式化大消息會更容易:-)

相關內容