通过HEX或RGB定义Excel自定义数字格式颜色

问题描述:

是否可以通过HEX或RGB定义自定义数字格式,如下所示?通过HEX或RGB定义Excel自定义数字格式颜色

[Black][>5]0.0;[Red][<0]-0.0;[Color34]0.0 

我正在寻找深橙色(#FF9900),而[Orange]不起作用。

我已经尝试了全部56种颜色的光谱,正如this articlefew built in by name所建议的,但没有一个甚至接近正确的橙色阴影。

为数不多的Excel已建成不包括橙色:

有关使用
[BLACK][GREEN][RED][BLUE][CYAN][MAGENTA][WHITE][YELLOW] 
+0

您使用的是什么Excel版本?对我来说(Excel 2016)'[Black] [> 5] 0.0; [Red] [

+0

有趣 - 我使用Excel for Mac 14.7.1(161129),并在home(mac)和work(Win 7)之间移动工作表文件。我尽了一切努力,远离技术和功能(集合是我的项目的显着示例),这是不通用的。思考? –

+0

想法?:询问微软为什么在Windows Excel和Mac Excel之间使用不同的颜色索引?也许它是关于不同的一般颜色系统RGB与CYMK?顺便说一句:我只用苹果作为水果;-)。但Excel和OpenOffice/Libreoffice Calc之间的颜色指数也不同。最好的橙色相似的颜色是64位Ubuntu中的[COLOR36]和32位Windows中的[COLOR29]。 –

作出评论一个答案:

唯一的方法,我知道实现不同的字体颜色取决于值:

  1. 指定数字格式的颜色 - 对于这个微软本身只记录8个命名的[Black] ... [Red],即使[ColorNN]是一个未记录的黑客。

  2. 有条件格式。

  3. 使用VBA。

要指定数字格式的颜色,需要知道guidelines for customizing a number format。只记录了8种指定颜色[黑色],[绿色],[白色],[蓝色],[洋红色],[黄色],[青色],[红色]。但对于56种索引颜色,使用[ColorNN]和NN作为颜色索引也是可能的。要确定哪些颜色与索引进行索引,人们可以使用以下VBA宏:

Sub UDColorNumberFormats() 
With ActiveSheet 

    For i = 1 To 56 
    sNumberFormat = "[Color" & i & "]0" 
    .Cells(i, 1).Value = sNumberFormat 
    .Cells(i, 2).NumberFormat = sNumberFormat 
    .Cells(i, 2).Value = 888888 
    .Cells(i, 3).Interior.ColorIndex = i 
    Next 

End With 
End Sub 

运行在Excel这个宏的Windows(2007年增长到2016年测试版本)将显示,将[Color45]例如,对于是橙色的。但是如果我们看一下Microsoft的文档ColorIndex Property,我们必须看到,即使是微软也显示了不同的索引颜色。也许根本没有更新自早期版本?

由于@Zephyr Mays必须认识到,Excel for Mac也使用不同的索引颜色。因此,对于Mac的Excel和Windows的Excel在这一点上不是100%兼容的。但宏也应该在Mac版Excel中运行。因此,可以检查用于Mac的Excel的索引颜色是否在ColorIndex属性的文档中显示。如果是这样,则Excel for Mac使用早期版本的默认调色板,而不是Windows使用的Excel。这在我看来可能被称为错误,并且可能会向微软报告。

正如我在上面的评论中指出的那样,[COLORNN]中使用的颜色索引在Libreoffice/Openoffice Calc中也是不同的。在那里他们甚至不同于内部颜色指数。它们也依赖于平台(64位或32位)。对我来说,64位Ubuntu中的Libreoffice有64种颜色索引(1-64),而32位Windows中的Libreoffice只有32种颜色索引(1-32)可用。但是这种行为并不是一个错误,因为Libreoffice/Openoffice Calc不是Excel兼容的Excel,并且不需要它。

什么:

Cells(1, 1).Interior.Color = RGB(&HFF, &H99, &H0) 
+0

这实际上是我目前这样做的方式,但是我已经为此表定义了大约6000个条件格式,我试图通过性能原因来减少数量。我想以数字格式设置文本颜色,但似乎没有任何合理的橙色近似值。 –