0

如何有条件地为单元格分配颜色?

我有以下函数,应该根据 if 语句为单元格分配不同的颜色:

 Function .....
    ..........
    If (IsNumeric(x)  Then
    .Color = 65344                  // does not work
    Else
    ...........
    End If
    End Function

如何以正确的方式做到这一点?

4

1 回答 1

2

我不确定您在这里使用什么颜色,因为 65344 不是十六进制值,但您可以像这样使用 RGB:

Function .....
    ..........
    Dim c As Range
    Dim report As Worksheet

    Set report = Excel.ActiveSheet
    Set c = report.Cells(1, 1)

    If IsNumeric(c.Value) Then
       c.Interior.Color = RGB(110, 110, 100)
    End If
End Function

这是一个更好的例子,可能会有所帮助。(仅供参考,这是免费的,因此请仔细检查语法错误)

Sub changeColor()

Dim report as Worksheet

set report = Excel.ActiveSheet

dim i as integer

for i = 0 to 100
    if IsNumeric(report.cells(i,1).value) then
        report.cells(i,1).interior.color = rgb(220,230,241)
    else
        report.cells(i,1).interior.color = xlNone
    end if
next i
end sub
于 2013-10-09T14:44:15.633 回答