Foxtable(狐表)用户栏目专家坐堂 → excel模板中 如何实现第一列是统计总数列 接下来的列是将统计的数据逐行显示呢?


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

主题:excel模板中 如何实现第一列是统计总数列 接下来的列是将统计的数据逐行显示呢?

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/14 16:10:00 [显示全部帖子]

模板实现不了这种。

1、使用代码手工导出数据,比如:http://www.foxtable.com/webhelp/topics/1148.htm
2、使用专业报表

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/14 17:38:00 [显示全部帖子]

这里没有办法使用条件。

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/14 17:51:00 [显示全部帖子]

就是自己遍历新增行,然后手工给对应单元格填入需要的数据。上面就已经是完整的实现代码

做专业报表先把专业报表这章内容全部看一遍:http://www.foxtable.com/webhelp/topics/1166.htm

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/15 8:47:00 [显示全部帖子]

1、在第一行录入标题,数据从第2行开始填充
For c As Integer = 0 To dt.Cols.Count -1 '添加列标题
    Sheet(1, c).Value = dt.Cols(c).Name
Next
For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
    For c As Integer = 0 To dt.Cols.Count-1
    Sheet(r +2, c).Value = dt.rows(r)(c)
……
2、列名单元格也加上样式
3、事件列单独添加样式,原因:
Style设置行的样式。行、列、单元格都可以设置样式,优先顺序是:单元格>行>列
Dim St2 As XLS.Style = Book.NewStyle
St2.Format = "yyyy-MM-dd"
St2.BorderTop = XLS.LineStyleEnum.Thin
St2.BorderBottom = XLS.LineStyleEnum.Thin
St2.BorderLeft = XLS.LineStyleEnum.Thin
St2.BorderRight = XLS.LineStyleEnum.Thin
St2.BorderColorTop = Color.Black
St2.BorderColorBottom = Color.Black
St2.BorderColorLeft = Color.Black
St2.BorderColorRight = Color.Black

For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
    For c As Integer = 0 To dt.Cols.Count-1
        Sheet(r +1, c).Value = dt.rows(r)(c)
if dt.Cols(c).IsDate
        Sheet(r+1,c).Style = St2
else
        Sheet(r+1,c).Style = Style
end if
    Next
Next
4、比如函数名称是第一个列,只给第一个列赋值
dim cnt as integer = Sheet.rows.count
For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
        Sheet(cnt +r, 0).Value = dt.rows(r)(c)
        Sheet(cnt+r,0).Style = Style
Next

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


加好友 发短信
等级:超级版主 帖子:110790 积分:563882 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/15 11:47:00 [显示全部帖子]

合并单元格:http://www.foxtable.com/webhelp/topics/1153.htm

遍历的时候给指定列赋值索引,如:Sheet(r1+2, 5).Value =r1

没有遍历到这些单元格赋值,自然就没有设置边框

 回到顶部