以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]颜色转换问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70162)

--  作者:pcxjxjhkw
--  发布时间:2015/6/16 17:16:00
--  [求助]颜色转换问题
 VBA中的颜色用的是:ColorIndex
FT中的颜色用的是:Color.xxx
保存颜色的值为一整数。即颜色标签.value
还有RGB值

问题:三者之间如何转换,特别是一与二、三之间的换算。

[此贴子已经被作者于2015/6/16 17:19:08编辑过]

--  作者:大红袍
--  发布时间:2015/6/16 17:18:00
--  

app.ActiveWindow.Selection.Font.Color = Color.F romARGB(0,10,10,10).ToARGB

 

app.ActiveWindow.Selection.Font.Color = Color.Red.ToARGB


--  作者:pcxjxjhkw
--  发布时间:2015/6/16 17:28:00
--  
app.ActiveWindow.Selection.Font.Color = Color.Red.ToARGB

老师,报错:参数超出范围!

--  作者:大红袍
--  发布时间:2015/6/16 17:31:00
--  
app.ActiveWindow.Selection.Font.Color = Color.F romARGB(0,Color.Red.R,Color.Red.G,Color.Red.B).ToARGB
--  作者:pcxjxjhkw
--  发布时间:2015/6/16 17:37:00
--  
老师,是这样的。
我将一颜色标签设置后的颜色值(一整数)保存到表中,现要将word中的文本设置为该颜色(保存在表中的整数)。

--  作者:大红袍
--  发布时间:2015/6/16 17:45:00
--  

 一样的意思,只是word中的,A参数透明度,是0,而不是255而已

 

 所以要处理一下

 

Dim c As Color = Color.Red

app.ActiveWindow.Selection.Font.Color = Color.F romARGB(0,c.R,c.G,c.B).ToARGB


--  作者:pcxjxjhkw
--  发布时间:2015/6/16 17:47:00
--  
试试
--  作者:pcxjxjhkw
--  发布时间:2015/6/16 18:06:00
--  
老师,未达到预期效果,字体未设为红色。
--  作者:大红袍
--  发布时间:2015/6/16 18:18:00
--  

搞错了,要换过来

 

Dim c As Color = Color.Red

app.ActiveWindow.Selection.Font.Color = Color.F romARGB(0,c.B,c.G,c.R).ToARGB


--  作者:pcxjxjhkw
--  发布时间:2015/6/16 18:28:00
--  
仍无效果哟!