我們有一個第三方工具,可以建立 Excel 檔案(xls,97/2003 格式)並以不同顏色設定某些儲存格的格式。當我將一系列單元格複製到新創建的文件(xlsx、2007/2010 格式)時,這些格式化單元格的顏色完全改變- 淺黃色變成德普紫色等。 /複製到新文件中時,也會發生同樣的情況作業簿。
無法再聯絡到創建第 3 方工具的公司(可能已經關閉),因此我只能在 Excel 中修復此行為。
為什麼會發生這種情況?
答案1
右鍵 - 選擇性貼上 - 全部使用來源主題
這應該保持來源主題完整。如果這不起作用,您可以發布來源文檔的範例嗎?
答案2
我很抱歉重新打開這篇文章。我對此進行了一些故障排除,我的發現如下。
假設我們使用「選擇性貼上 - 全部使用來源主題」選項,則僅保留原始工作表中的資料和格式,不會複製浮動物件。只有當該工作表中沒有浮動物件(圖表、圖表、形狀)時,此選項才有效。程式設計語言:
Cells.Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
, SkipBlanks:=False, Transpose:=False
若要擁有與工作表相關的所有內容(包括浮動物件),必須將工作表移至新的/目標工作簿。執行此操作後,所有顏色都會變更為不同的主題,包括圖表的顏色。即使兩個工作簿的調色板相同也是如此。
我附上了一個文件給你玩。嘗試將工作表複製/移動到新工作簿,看看會發生什麼,該文件源自 Office 2010 平台。我在 Win8 上使用 Office 365,這些標準顏色變為不同深淺的黃色和灰色。
當您使用在 Office 365 中從頭建立的工作簿時,不會出現此問題,但對於使用早期版本的 Office 建立的文件,當使用更高版本的 Office 時,該問題未解決。
解決方案:頁面佈局 ---> 顏色 ---> Office 2007-2010
在 VBA 中:
ActiveWorkbook.Theme.ThemeColorScheme.Load ( _
"C:\Program Files\Microsoft Office 15\Root\Document Themes 15\Theme Colors\Office 2007 - 2010.xml" _
)
答案3
我使用 Excel 2010,在複製貼上兩個不同文件的工作表時遇到了相同的問題。
我找到了以下解決方案:
- 開啟貼上複製儲存格的新文件
- 右鍵單擊左上角的 Microsoft 圖標
- 點擊第一行“自訂快速存取...”(或在英文版本中可能稱為“選項”)
- 轉到“儲存”選項標題並點擊它
- 在視窗末尾點擊“顏色”欄(在部分錶視覺選項下)
- 帶有調色板的新視窗
答案4
Excel 2013(也許更早)。頁面佈局 -> 主題 -> 顏色。如果您的原始工作表是使用一種顏色模板建立的,而新工作表是使用不同顏色模板建立的,則傳輸時顏色將會改變。打開新工作表並將遊標懸停在顏色模板上,直到找到匹配項。