Foxtable(狐表)用户栏目专家坐堂 → 请问如何提取当前单元格的背景颜色为一个整数或是RGB格式值


  共有3814人关注过本帖树形打印复制链接

主题:请问如何提取当前单元格的背景颜色为一个整数或是RGB格式值

帅哥哟,离线,有人找我吗?
wcs
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1042 积分:7475 威望:0 精华:0 注册:2008/8/31 22:52:00
请问如何提取当前单元格的背景颜色为一个整数或是RGB格式值  发帖心情 Post By:2021/10/29 22:40:00 [只看该作者]

有时需要针对.XLS工作表中的单元格,按颜色计算
但是,从帮助文件中看,只能设置某单元格的颜色,或是根据一个整数生成颜色,或是根据COLOR.PINK这样的颜色生成一个整数。

无法读取某单元格的颜色并生成一个整数。

求教了。

另,颜色类型Color,是不是可以用于.XLS对象,这与VBA中单元格的颜色整数值1-56这样的整数颜色一样吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/10/30 9:34:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/topics/0496.htm

Dim Book As New XLS.Book("D:\问题\test.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Style As XLS.Style = Sheet(0,0).Style
Output.Show(Style.ForeColor.tostring)
Output.Show(Style.ForeColor.ToARGB)

 回到顶部
帅哥哟,离线,有人找我吗?
wcs
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1042 积分:7475 威望:0 精华:0 注册:2008/8/31 22:52:00
  发帖心情 Post By:2021/10/31 14:22:00 [只看该作者]

谢谢,这个代码是有效的。
现在我是想解决这个问题:
在窗口的某个标签的背景色,设置为与这个EXCEL单元格一样的背景色。
一直不成功(标签背景色不显示)。我的代码是这样的,能帮看下吗?(已事先定义:_app1 = New MSExcel.Application '定义一个EXCEL对象)

Dim r As Integer = _app1.ActiveCell.Row '定义行号
Dim l As Integer = _app1.ActiveCell.Column '定义列号
Dim dz As String  = e.Form.Controls("Label4").text  ‘这个文件的地址是有的。
Dim Book As New xls.Book(dz) ' 定义一个XLS对象
Dim Sheet As xls.Sheet = Book.Sheets(e.Form.Controls("Label12").text) '定义一个sheet表
Dim Style As xls.Style = Sheet(r,l).Style '确定当前单元格的样式

Dim ys As String = Style.BackColor.toARGB 
Dim ysbj As WinForm.Label = e.Form.Controls("Label01")
Dim clr As Color = Color.FromARGB(ys)
ysbj.BackColor = clr  ’ 显示标签背景色



 回到顶部
帅哥哟,离线,有人找我吗?
wcs
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1042 积分:7475 威望:0 精华:0 注册:2008/8/31 22:52:00
  发帖心情 Post By:2021/10/31 15:25:00 [只看该作者]

已解决,标签名称写错了!

 回到顶部