冒着将这个问题视为遗忘或被关闭为“太本地化”的风险,我想我会发布这个问题,因为我的老板经常抱怨它而且让我摸不着头脑。
我们使用Infragistics NetAdvantage Excel control即时创建Excel报告。有些单元格,我们添加填充颜色,如下所示:
sheet.Rows[i].Cells[0].CellFormat.FillPattern = FillPatternStyle.Solid;
sheet.Rows[i].Cells[0].CellFormat.FillPatternForegroundColor = Color.FromArgb(127, 127, 127);
这很有效,报告看起来很好:
但是,如果我的经理选择Excel中的所有单元格,将数据复制到剪贴板,然后将那些单元格粘贴到另一个Excel文件中,所有颜色都会转换为一些奇怪的3位调色板:< / p>
现在,每种填充颜色都是纯红色(#FF0000),纯绿色(#00FF00),纯蓝色(#0000FF)或黄色(#FFFF00)。这是任何给定颜色的全部或全部。那个深灰色的标题甚至变成了白色。
有一件有趣的事情是,如果我去Excel中手动更改其中一个单元格的填充颜色,然后复制并粘贴它,我手动设置的颜色将被完美复制,同时Infragistics生成的单元格将被抖动。
仅在Excel文件之间复制时才会发生这种情况,而不是在Excel文档中的工作表之间复制。有没有人遇到这个问题,或者从技术的角度来看,任何Excel专家都知道可能导致这种情况的原因吗?
这是Excel 2007,Infragistics Build 8.2.20082.1000。
答案 0 :(得分:1)
这在NetAdvantage 2012第1卷中得到了解决,其中对excel引擎使用的颜色模型进行了更改。迈克对Infragistics forums的回复也提到了这一点。
解决此问题的最佳方法是使用NetAdvantage 2012第1卷中的excel引擎。
答案 1 :(得分:1)
所以我遇到了同样的问题,无法弄清楚为什么复制的格式不会延续到另一个工作表中。所以,没有正式的“修复”,但是我意识到它没有延续,因为我在一个完全独立的Excel文档中。基本上,您必须将复制和粘贴文档放在同一Excel工作表中。因此,当您要打开要复制的项目时,请从您的副本表打开其他Excel工作表(文件,打开)。粘贴后,它将保留所有格式。希望这有帮助!
答案 2 :(得分:0)
不同的版本会以不同的方式呈现颜色,这似乎就是你所看到的
对此进行了详细解释有一个用于创建自定义调色板的工具,应该比创建自己的调色板更容易解决这个问题。
http://excelcampus.com/tools/color-palette-conversion
Excel保存首选项允许您更改或保留使用的颜色
答案 3 :(得分:0)
我还为那些不想(或无力负担)升级的人找到了解决方案。简单地创建这样的工作簿:
Workbook b = new Workbook(WorkbookPaletteMode.StandardPalette);
将解决问题。但是,显然你将无法使用任何完全自定义的颜色。它们将四舍五入到最接近的标准颜色,在我们的情况下完全没问题。
答案 4 :(得分:0)
好的我想我在这里和其他地方描述了同样的问题后想出了这个问题.......检查出来!首先转到您粘贴的页面并突出显示整个页面,转到打印区域和&#34;清除打印区域&#34;。然后去粘贴区域并删除细胞,即使那里没有任何东西!突出显示行(即使没有任何内容)。删除行。现在从头开始复制和粘贴,你应该能够粘贴所有原始颜色和公式!