Excel什么时候在标签上使用白色字体?

时间:2017-11-09 14:09:08

标签: excel vba colors tabs

Excel默认情况下使用黑色作为选项卡上的字体颜色。更改选项卡颜色时,如果选项卡颜色较浅,字体颜色将保持黑色,但选择较暗颜色时,字体颜色将更改为白色。

我想模仿这种行为。对于哪种RGB组合,Excel会更改为白色字体颜色?

非常感谢!

3 个答案:

答案 0 :(得分:2)

它与字体颜色和背景颜色之间的颜色对比有关。

您可以在此处找到用户定义的函数,用于计算字体和背景之间的颜色对比: http://www.EXCELGAARD.dk/Lib/COLORCONTRAST/

这将允许您模仿行为 - 只需测试黑色和白色字体颜色与实际背景颜色的颜色对比,并选择黑色或白色字体颜色,具体取决于哪一个获得最佳颜色对比度分数。

答案 1 :(得分:0)

标签的可能颜色为256^3。亲自尝试一下:

Public Sub TestMe()

    Dim cnt As Long

    For cnt = 1 To 256 ^ 3 Step 10
        ActiveSheet.Tab.Color = cnt
    Next cnt

End Sub

答案 2 :(得分:0)

我遵循@Vityata建议的方法。 Excel行为不是直接复制,但我找到了一个符合我目的的近似值:

将颜色立方体视为: http://matlab.izmiran.ru/help/toolbox/images/colorcube.jpg

Excel 大约

时使用白色字体颜色
R * 20132 + G * 64005 + B * 6630 <= 11675430

这会在某些边缘情况下失败(例如:RGB(255,102,3)),但我仍然希望有人觉得这很有用。如果有人找到确切的公式,我会把问题留待。

感谢您的回复。