如果作为学习者,是想学习如何编写代码,那么很重要的一条是首先学会怎么样去使用函数。
RGB是VBA里面的函数,你在单元格中输入“RGB(0,1,2)”,
然后在VBA代码中:Hex([A1]),就相当于Hex("RGB(0,1,2)"),那么这个肯定是类型不匹配错误了。
在VBA里面
a = RGB(0,1,2),将执行RGB函数运行,得到的结果是一个数字。
b = "RGB(0,1,2)" 那么得到的b就只能是一个字符串。
解决方法有N种,但常规点来说,第一,另辟蹊径,将RGB三个色彩值,放置在3个单元格,比如:
a1 = 141, b1 = 180, c1 = 226
然后在VBA里面写:Hex(RGB(Cells(1,"A"),Cells(1,"B"),Cells(1,"C")))
那么这么写就可以完美的执行RGB函数,并得到你想要的结果了!
第二,如果你非要在A1里面输入RGB(141,180,226),那么只能通过函数或其他方法将数值先分离出来,得到a = 141,b=180,c=226,然后使用HEx(RGB(a,b,c))这样的方法得到想要的数值。
第三,找一个可以运行字符串的函数。 |