Foxtable(狐表)用户栏目专家坐堂 → [求助]绘制单元格颜色导出exlce


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

主题:[求助]绘制单元格颜色导出exlce

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
[求助]绘制单元格颜色导出exlce  发帖心情 Post By:2018/12/14 10:24:00 [只看该作者]

 如题,下面代码导不出 绘制单元格的颜色,
要导出绘制单元格颜色,求助


Dim tt As Table = Tables("员工资料")
Dim file As String = "d:\内部通讯录.xls"
Dim flg As New SaveExcelFlags
flg.CellStyle = True
tt.SaveExcel(file ,tt.name,flg)

Dim Book As New XLS.Book(file)
Dim Sheet1 As XLS.Sheet = Book.Sheets(0)
Dim Style As XLS.Style = Book.NewStyle() '定义新样式
Style.ForeColor = Color.Crimson '设置样式的字体颜色
'Style.ForeColor = Color.Blue '设置样式的字体颜色
Style.FontBold = True
'Style.BackColor = Color.Cyan
'Style.BackColor = Color.LightCyan
Style.BackColor = Color.LightGray

Style.BorderTop = XLS.LineStyleEnum.None
Style.BorderBottom = XLS.LineStyleEnum.None
Style.BorderLeft = XLS.LineStyleEnum.None
Style.BorderRight = XLS.LineStyleEnum.None
style.AlignVert = XLS.AlignVertEnum.Center

For n As Integer = 0 To Sheet1.Rows.Count -1

''导出逻辑列 打钩
    'If Sheet1(n,6).Value = "1" Then
        'Sheet1(n,6).Value = "√"
    'Else
        'Sheet1(n,6).Value = ""
    'End If
''导出逻辑列 打钩

    If Sheet1(n,0).Value.contains("_") Then
        If n > 2 Then
            For c As Integer = 0 To 39
                Sheet1 (n,c).Style = Style
            Next
        End If
    Else
        For c As Integer = 0 To 39
            try
                'If Sheet1(n,c).Style.BackColor.G <> 255 Then
If Sheet1(n,c).Style.BackColor.G <> 255 OrElse Sheet1(n,c).Style.BackColor.R <> 255 OrElse Sheet1(n,c).Style.BackColor.B <> 255 Then
                Else
                    Sheet1(n,c).Style = book.NewStyle
                End If
               
            catch ex As exception
                Sheet1(n,c).Style = book.NewStyle
               
            End try
            Sheet1(n,c).Style.BorderTop = XLS.LineStyleEnum.Thin
            Sheet1(n,c).Style.BorderBottom = XLS.LineStyleEnum.Thin
            Sheet1(n,c).Style.BorderLeft = XLS.LineStyleEnum.Thin
            Sheet1(n,c).Style.BorderRight = XLS.LineStyleEnum.Thin
            Sheet1(n,c).Style.BorderColorTop = Color.Gray
            Sheet1(n,c).Style.BorderColorBottom = Color.Gray
            Sheet1(n,c).Style.BorderColorLeft = Color.Gray
            Sheet1(n,c).Style.BorderColorRight = Color.Gray
            Sheet1(n,c).Style.AlignVert = XLS.AlignVertEnum.Center
            Sheet1(n,c).Style.AlignHorz = XLS.AlignHorzEnum.Center
           
        Next
    End If
Next


Book.Save(file)
Dim Proc As New Process
Proc.File = file
Proc.Start()

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/14 10:34:00 [只看该作者]

1、单独执行这个代码,能否导出?

 

Dim tt As Table = Tables("员工资料")
Dim file As String = "d:\内部通讯录.xls"
Dim flg As New SaveExcelFlags
flg.CellStyle = True
tt.SaveExcel(file ,tt.name,flg)

 

2、是不是这个问题?

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=125505&authorid=0&page=0&star=2

 

3、实例发上来测试

 


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)1、单独执行这个代码,能否导出?&...  发帖心情 Post By:2018/12/14 11:40:00 [只看该作者]

大师,执行上楼代码

1 导出绘制单元格颜色失败

2 可能是分组统计颜色的问题————之前的求助帖子

3、辛苦调试下面项目:

 

加密狗不能升级了,高于2018-07-09版本打不开,不会意思哈

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:2.foxdb


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/14 12:21:00 [只看该作者]

更换颜色即可。换一种可以正常的颜色

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=125505&authorid=0&page=0&star=2

[此贴子已经被作者于2018/12/14 12:22:43编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/14 12:24:00 [只看该作者]

我测试例子,没问题,导出的数据有颜色的。

 

Dim tt As Table = Tables("室内设计项目")
Dim file As String = "d:\内部通讯录.xls"
Dim flg As New SaveExcelFlags
flg.CellStyle = True
tt.SaveExcel(file ,tt.name,flg)


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)我测试例子,没问题,导出的数据有颜...  发帖心情 Post By:2018/12/14 14:04:00 [只看该作者]

大师,上楼代码,导出excle  进度列,单元格绘制的颜色失败

 


图片点击可在新窗口打开查看此主题相关图片如下:进度列颜色导不出来.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2018/12/14 14:04:45编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/14 15:26:00 [只看该作者]

对于直接绘制的内容,导出的时候,不会绘制的。

 

你可以直接在excel里面设置进度条,如

 

https://jingyan.baidu.com/article/8cdccae931aa10315413cdd3.html

 

https://jingyan.baidu.com/article/495ba841b15beb38b30edeac.html

 


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)对于直接绘制的内容,导出的时候,不...  发帖心情 Post By:2018/12/14 15:43:00 [只看该作者]

 大师,因为导出的 进度列 颜色是每天动态且多种色彩的,在excle里设置实在是不方便,辛苦有空帮帮了
或者有参考的例子,可以参考嘛?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/12/14 17:04:00 [只看该作者]

以下是引用湛江智在2018/12/14 15:43:00的发言:
 大师,因为导出的 进度列 颜色是每天动态且多种色彩的,在excle里设置实在是不方便,辛苦有空帮帮了
或者有参考的例子,可以参考嘛?

 

没办法,这个没办法。你可以学习vba,录制宏看代码,然后改写成foxtable,动态操作excel动态设置颜色

 

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

 

 


 回到顶部