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


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

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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
[求助]导出excle分组统计字体颜色和加粗  发帖心情 Post By:2018/9/29 16:14:00 [只看该作者]

要导出excle分组统计字体——红颜色和加粗,求助

 

分组模式代码如下:

'汇总模式----------------------------------------
''分组统计
Dim tt As Table = Tables("订单")
Dim gg As Subtotalgroup
tt.SubtotalGroups.Clear()
tt.GroupAboveData = True
tt.TreeVisible = False
gg = New Subtotalgroup
gg.Aggregate = AggregateEnum.Sum
gg.GroupOn = "客户"
gg.Caption = "{0}"
tt.SubtotalGroups.Add(gg)
tt.Subtotal()
tt.DataTable.SysStyles("Subtotal0").FontBold = True
tt.DataTable.SysStyles("Subtotal0").ForeColor = Color.Red

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:导出excle分组统计字体颜色和加粗.png
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:导出excle分组统计字体颜色和加粗.foxdb

[此贴子已经被作者于2018/9/29 17:40:10编辑过]

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


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

不支持这种用法。需要导出后再使用代码设置:

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)不支持这种用法。需要导出后再使用代...  发帖心情 Post By:2018/9/29 17:24:00 [只看该作者]

大师,帮忙看看,怎么改下面代码呢》

 Dim Book As New XLS.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Style As XLS.Style = Book.NewStyle() '定义新样式
'Style.ForeColor = Color.Red '设置样式的字体颜色


Dim r As Row
    If r.IsGroup '如果是分组行
Style.ForeColor = Color.Red '设置样式的字体颜色
Style.FontBold = True
    End If



Book.Save("d:\test.xls")
Dim Proc As New Process
Proc.File = "d:\test.xls"
Proc.Start()

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


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

不能这样判断,你要循环Execl表格所有行,判断这行第一个单元格是否包含“小计”这种字符,然后给这行设置样式

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)不能这样判断,你要循环Execl表格所有...  发帖心情 Post By:2018/9/29 17:36:00 [只看该作者]

 问题是
1、没有 小计 2个字——— 1楼红色位置
2、且 产品名称都是不一样的

如果一定要加共性文字 就不用小计 在前面加缀共性文字 产品名称:
代码怎么写呢?
[此贴子已经被作者于2018/9/29 18:20:31编辑过]

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


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

那就找一些共性的东西,比如“产品”单元格有内容,“客户、雇员”等单元格没有内容的基本算是汇总行

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)那就找一些共性的东西,比如“产品”...  发帖心情 Post By:2018/9/30 12:21:00 [只看该作者]

大师,辛苦再指点,怎么修改了,谢谢

1.分组统计字体加粗和红色显示

2.同时要导出excle单元格线框黑色,

 

Dim t As Table = Tables("订单")
Dim file As String = "d:\凤飞飞.xls"
Dim flg As New SaveExcelFlags
flg.CellStyle = True
t.SaveExcel(file,t.name,flg)

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Open(file)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.UsedRange

 

Dim Book As New XLS.Book
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Style As XLS.Style = Book.NewStyle() '定义新样式


Dim dr As Row = Tables("订单").Current
If dr.IsNull("客户") = True Then
'Rg.Style =Style '设置单元格样式
t.DataTable.SysStyles("Subtotal0").FontBold = True
t.DataTable.SysStyles("Subtotal0").ForeColor = Color.Crimson
End If

       
'打开工作簿
Dim Proc As New Process
Proc.File = "d:\凤飞飞.xls"
Proc.Start()

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:分组字体加粗及红色导出excle.foxdb

 

[此贴子已经被作者于2018/9/30 12:39:54编辑过]

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


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

Dim file As String = "E:\问题\aaa.xls"
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

For n As Integer = 1 To Sheet1.Rows.Count -1
    If Sheet1(n,1).Value = "" Then
        Sheet1(n,0).Style = Style
    End If
Next

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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)Dim file As String = "E:\问题\aaa....  发帖心情 Post By:2018/9/30 14:10:00 [只看该作者]

大师,上面代码报错

 


图片点击可在新窗口打开查看此主题相关图片如下:报错.jpg
图片点击可在新窗口打开查看


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


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

改为自己的文件路径啊,这种代码还看不懂?

Dim file As String = "E:\问题\aaa.xls"

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