这是我正在尝试的代码。但是它显示类型不匹配错误。 我不想使用for循环为单个单元格设置颜色。
Function bgColor()
Dim MyArray(1, 3) As Variant
MyArray(0, 0) = 37
MyArray(0, 1) = 12
MyArray(0, 2) = 15
MyArray(0, 3) = 18
Sheets("Data").Range("A1:D1").Interior.ColorIndex = MyArray
End Function
答案 0 :(得分:3)
遍历5000种颜色的数组并将它们写入单元格所需的时间远远少于一秒钟,即使启用了屏幕更新也是如此。您还有其他原因无法使用For
循环吗?
Sub Test()
Dim MyArray(0, 4999) As Variant
Dim i As Long
For i = 0 To 4999
MyArray(0, i) = WorksheetFunction.RandBetween(1, 40)
Next i
For i = 0 To 4999
Sheets("Data").Cells(i + 1, 1).Interior.ColorIndex = MyArray(0, i)
Next i
End Sub