【发布时间】:2014-10-01 19:06:30
【问题描述】:
我希望将 RGB 颜色存储在 Excel VBA 项目中的变量中,以设置子中各种单元格/范围的背景颜色。
我想在一个变量中设置一次颜色,所以如果我决定在整个过程中更改它,我只需要在一个地方进行。
Dim clrBlue As ColorFormat
clrBlue = RGB(0, 0, 256)
Range("a2").Interior.Color = clrBlue
Range("b3").Interior.Color = clrBlue
使用上面的代码,我得到了运行时错误:
对象变量或未设置块变量
我可以编写单独的函数(SetBlue、SetRed、SetGreen)来应用每种颜色,但感觉很乱。
谁能建议我做错了什么?
【问题讨论】:
-
尝试使用
dim clrBlue as Long而不是colorFormat -
谢谢,我刚刚通过这篇文章 (stackoverflow.com/a/1427293/1448678) 找到了相同的内容 - 虽然不是完全重复。如果您作为答案发布,我会接受!
-
“我可以编写单独的函数(SetBlue、SetRed、SetGreen)来应用每种颜色”基本上替换一行代码的函数通常没有用。
-
^ 是的,我同意。正如我所说:“混乱”!