以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请问如何提取当前单元格的背景颜色为一个整数或是RGB格式值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172765)

--  作者:wcs
--  发布时间:2021/10/29 22:40:00
--  请问如何提取当前单元格的背景颜色为一个整数或是RGB格式值
有时需要针对.XLS工作表中的单元格,按颜色计算
但是,从帮助文件中看,只能设置某单元格的颜色,或是根据一个整数生成颜色,或是根据COLOR.PINK这样的颜色生成一个整数。

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

求教了。

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

--  作者:有点蓝
--  发布时间: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
--  发布时间: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
--  发布时间:2021/10/31 15:25:00
--  
已解决,标签名称写错了!