以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]报表事件根据excel单元格内容有条件设置单元格格式  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=129729)

--  作者:倪远歌
--  发布时间:2019/1/4 17:29:00
--  [求助]报表事件根据excel单元格内容有条件设置单元格格式

BuildDetail事件:

目的是让模板“报告”工作表的第三列根据

显示文本的不同显示不同的背景颜色


无影响=绿色

一般影响=黄色

严重影响=红色


代码如下


Select e.Book.TempLate
    Case "报告模板"  \'模板名
        Dim sheet As xls.sheet = e.book.sheets("报告") \'引用工作表
        Dim Style1 As XLS.Style = e.Book.NewStyle()  \'定义样式
        Dim Style2 As XLS.Style = e.Book.NewStyle()
        Dim Style3 As XLS.Style = e.Book.NewStyle()
        Style1.BackColor = Color.Red \'设置背景颜色
        Style2.BackColor = Color.Yellow
        Style3.BackColor = Color.Green
        Style1.AlignHorz = XLS.AlignHorzEnum.Center \'设置对齐方式
        Style1.AlignVert = XLS.AlignVertEnum.Center
        Style2.AlignHorz = XLS.AlignHorzEnum.Center
        Style2.AlignVert = XLS.AlignVertEnum.Center
        Style3.AlignHorz = XLS.AlignHorzEnum.Center
        Style3.AlignVert = XLS.AlignVertEnum.Center
        For i As Integer = 0 To 20
            If  Sheet(i,2).text = "无影响" Then
                Sheet(i,2).Style =Style3 \'设置单元格样式
            ElseIf Sheet(i,2).text = "一般影响" Then
                Sheet(i,2).Style =Style2 \'
            ElseIf Sheet(i,2).text = "严重影响" Then
                Sheet(i,2).style =Style1 \'
            End If
        Next
End Select

结果完全没反应,
请问问题出在哪里?

或者有其他办法可以实现根据excel单元格内容有条件设置格式吗?

--  作者:有点甜
--  发布时间:2019/1/4 17:41:00
--  

afterbuild事件,循环每一行,设置样式

 

http://www.foxtable.com/webhelp/scr/1960.htm

 


--  作者:倪远歌
--  发布时间:2019/1/7 14:27:00
--  
多谢