Foxtable(狐表)用户栏目专家坐堂 → [求助]导出excle分组统计字体颜色和加粗


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

主题:[求助]导出excle分组统计字体颜色和加粗

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)改为自己的文件路径啊,这种代码还看...  发帖心情 Post By:2018/9/30 17:02:00 [只看该作者]

小白基础,大师多多指教

 

问题:

现在按钮2  填充的颜色是列,不是分组行

按钮1、按钮2 的代码要合并一个按钮,也不会,求助

导出的单元格里面文字靠下有问题,要设置 垂直居中

 

 


图片点击可在新窗口打开查看此主题相关图片如下:想实现 下面的效果.png
图片点击可在新窗口打开查看


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


 


图片点击可在新窗口打开查看此主题相关图片如下:按钮2 颜色丢失.png
图片点击可在新窗口打开查看

按钮2执行后, 单元格绘制的颜色丢失,怎么解决?

[此贴子已经被作者于2018/9/30 17:11:06编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

Dim tt As Table = Tables("室内设计项目")
Dim file As String = "E:\问题\我的项目.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.Red '设置样式的字体颜色
Style.FontBold = True

Style.BackColor = Color.DodgerBlue
Style.BorderTop = XLS.LineStyleEnum.None
Style.BorderBottom = XLS.LineStyleEnum.None
Style.BorderLeft = XLS.LineStyleEnum.None
Style.BorderRight = XLS.LineStyleEnum.None

Dim Style2 As XLS.Style = Book.NewStyle() '定义新样式
Style2.BorderTop = XLS.LineStyleEnum.Thin
Style2.BorderBottom = XLS.LineStyleEnum.Thin
Style2.BorderLeft = XLS.LineStyleEnum.Thin
Style2.BorderRight = XLS.LineStyleEnum.Thin
Style2.BorderColorTop = Color.red
Style2.BorderColorBottom = Color.red
Style2.BorderColorLeft = Color.red
Style2.BorderColorRight = Color.red


For n As Integer = 1 To Sheet1.Rows.Count -1
    Output.Show(Sheet1(n,6).Value)
    If Sheet1(n,6).Value = "1" Then
        Sheet1(n,6).Value = "√"
    Else
        Sheet1(n,6).Value = ""
    End If
    If Sheet1(n,1).Value.contains("地址") Then
        If n > 2 Then
            For c As Integer = 0 To 9
                Sheet1 (n,c).Style = Style
            Next
        End If
    Else
        For c As Integer = 0 To 9
            Sheet1 (n,c).Style = Style2
        Next
        'Sheet1(n,0).Style = Style2
    End If
Next

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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)Dim tt As Table = Tables("室内设计...  发帖心情 Post By:2018/9/30 17:54:00 [只看该作者]

大师,上面代码,导出单元格的颜色丢失!!——————下图红色圈的位置, 11楼图红色圈的位置

还有导出单元格里的文字不居中,靠下

怎么完善上面的问题呢?

 

祝国庆快乐,辛苦了

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:单元格背景色丢失.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/9/30 18:12:15编辑过]

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


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

Dim tt As Table = Tables("室内设计项目")
Dim file As String = "d:\我的项目.xls"
Dim flg As New SaveExcelFlags
flg.CellStyle = True
For Each c As Col In tt.Cols
    c.TextAlign = TextAlignEnum.Center
Next
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.Red '设置样式的字体颜色
Style.FontBold = True

Style.BackColor = Color.DodgerBlue
Style.BorderTop = XLS.LineStyleEnum.None
Style.BorderBottom = XLS.LineStyleEnum.None
Style.BorderLeft = XLS.LineStyleEnum.None
Style.BorderRight = XLS.LineStyleEnum.None


Dim Style2 As XLS.Style = Book.NewStyle() '定义新样式
Style2.BorderTop = XLS.LineStyleEnum.Thin
Style2.BorderBottom = XLS.LineStyleEnum.Thin
Style2.BorderLeft = XLS.LineStyleEnum.Thin
Style2.BorderRight = XLS.LineStyleEnum.Thin
Style2.BorderColorTop = Color.red
Style2.BorderColorBottom = Color.red
Style2.BorderColorLeft = Color.red
Style2.BorderColorRight = Color.red

For n As Integer = 1 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,1).Value.contains("地址") Then
        If n > 2 Then
            For c As Integer = 0 To 9
                Sheet1 (n,c).Style = Style
            Next
        End If
    Else
        For c As Integer = 0 To 9
            'Sheet1 (n,c).Style = Style2
        Next
        'Sheet1(n,0).Style = Style2
    End If
Next


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


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)Dim tt As Table = Tables("室内设计...  发帖心情 Post By:2018/10/8 9:58:00 [只看该作者]

大师,上面代码导出单元格没红色线框

1、要实现导出excle单元格实现图示红色线框代码怎么增加呢?

2、蓝色背景,红色字靠下有问题,要实现上下居中代码怎么修改呢?

 


图片点击可在新窗口打开查看此主题相关图片如下:单元格红色线框.png
图片点击可在新窗口打开查看

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

[此贴子已经被作者于2018/10/8 10:12:20编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/10/8 10:43: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.Red '设置样式的字体颜色
Style.FontBold = True

Style.BackColor = Color.DodgerBlue
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,1).Value.contains("地址:") Then
        If n > 2 Then
            For c As Integer = 0 To 9
                Sheet1 (n,c).Style = Style
            Next
        End If
    Else
        For c As Integer = 0 To 9
            try
                If Sheet1(n,c).Style.BackColor.G <> 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.red
            Sheet1(n,c).Style.BorderColorBottom = Color.red
            Sheet1(n,c).Style.BorderColorLeft = Color.red
            Sheet1(n,c).Style.BorderColorRight = Color.red
            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()


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)Dim tt As Table = Tables("室内设计...  发帖心情 Post By:2018/10/9 18:35:00 [只看该作者]

大师,浅黄和浅蓝色导出excle丢失怎么解决?

浅颜色换成很深颜色就不会出现什么导出excle颜色丢失的问题

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:单元格浅色背景导出.foxdb


图片点击可在新窗口打开查看此主题相关图片如下:浅黄和浅蓝色导出excle丢失怎么解决?.png
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

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


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6676 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)If Sheet1(n,c).Style.BackColor.G &...  发帖心情 Post By:2018/10/10 10:15:00 [只看该作者]

导出颜色偏差很大

下图系统里面左边2种颜色,导出excle只有1种颜色

 


图片点击可在新窗口打开查看此主题相关图片如下:导出颜色有问题.png
图片点击可在新窗口打开查看


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


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

1、你可以修改你drawcell里面的样式,对比度大一些。

 

2、如果还有问题,实例发上来测试。


 回到顶部
总数 25 上一页 1 2 3 下一页