我有一个应用程序,它生成一个(相当大的)电子表格,其中包含需要颜色编码的用户输出。当我生成数据时,我会找到需要着色的块,但是,如果每次只对一个块进行着色,则对它们进行着色是很费时的。我想要做的是维护一大群不连续的单元格,并使用一个Excel调用对其进行着色。
现在我为每种颜色保持一个范围,每次我发现一个新的块需要那个颜色,我就把现有的范围和新的块结合起来。最后,我给这个范围涂上颜色。不幸的是,这真的很慢,而且对大型案件来说也是一种小问题。有没有更好的方法来做这件事?我觉得染色几千个细胞不应该花这么长时间。:)
编辑下面的代码用条件格式解决了它(假设B列中有正确和不正确的单词)
With new
我有一个excel工作表,其中有一个列,上面写着名称:
Name
====
X
Y
T
Y
B
Z
X
X
现在有什么Excel函数可以用颜色标记重复的值,比如"Yellow"和"Blue"。例如,在Name列中,我有一个重复的值,例如- X。现在,我希望将一个X设置为"Blue"的背景颜色,另两个设置为"Yellow"。
注意所有不重复的值(例如- T,B,Z )也需要标记为Blue。
I am using Excel-2010.
谢谢
我希望使用以下方法修改已填充Excel电子表格中某些单元格的颜色:
FlexCel.Adapter.XlsFile.SetCellFormat(int row1, int col1, int row2, int col2, int XF);
颜色并不总是正确显示,因为我修改的单元格有时受覆盖背景色和前景色的条件格式规则的约束。
在Excel中,有一种防止规则应用于特定单元格的功能。Flexcel中有这样的功能吗?
我有一个带有两个工作表的excel文件,WorkSheet和ReviewSheet
WorkSheet数据如下所示
Employee Name Project Work Status Date
------------- ------- ----------- ----------
abc 123 Holiday 01/12/2011
abc 456 Sick 02/12/2011
问题是,当我用某种颜色突出显示一行时,该行的原始颜色消失了,所以我尝试了此代码,并且再次删除了该行的原始格式和颜色
这是来自的代码
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Const cnNUMCOLS As Long = 256
Const cnHIGHLIGHTCOLOR As Long = 36 'default lt. yellow
Static rOld As Range
Static nColorIndices(1
在使用Interop和Office 2013安装创建和自定义Excel文件时,会给我一些非常慢的结果(超过5分钟)。事实上,在Excel2010Interop上,同样的事情非常有效(仅50秒,完全相同的进程)。(下面的代码片段)
很高兴知道是否有更快的方法来做到这一点。我知道有不同的库可以这样做,但是我想坚持使用Interop,因为一切都是一样的。我首先创建Excel,然后检查是否有包含特定字符串的空单元格或单元格,并更改这些单元格的颜色。为了创建Excel,我使用了对象数组并对其进行了解析,这是非常快的。把它拉下来的主要原因是搜索和改变单元颜色。
// Check for empty cel