以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 表按条件导出excel中 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90979) |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/27 8:32:00 -- 表按条件导出excel中
下图是导出的excel格式 [此贴子已经被作者于2016/9/27 8:32:47编辑过]
|
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/27 8:35:00 -- 实例
|
||||
-- 作者:有点蓝 -- 发布时间:2016/9/27 8:44:00 -- 用代码导出,参考:http://www.foxtable.com/webhelp/scr/1148.htm |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/28 8:46:00 -- DataTables("表B").DataRows.Clear
用上面的代码 只能填充金额,张数,备注 但【科室】、【类别】不知道如何用代码填充
如何用代码填充紫色方框里面的数据 思路是:如果" 手术室_低值金额 is not null" 则填充【科室】=“手术室”,【类别】=“低值” ,其他的数据相应的类推。 麻烦老师帮解答一下 谢谢 [此贴子已经被作者于2016/9/28 8:53:56编辑过]
|
||||
-- 作者:blackzhu -- 发布时间:2016/9/28 8:48:00 -- 打印模板,先按照条件筛选再导出 |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/28 8:56:00 -- 我是新用户 脑子有点笨 你能详细指导吗 非常谢谢 |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/28 9:00:00 -- 新的实例
|
||||
-- 作者:有点蓝 -- 发布时间:2016/9/28 11:22:00 -- Dim dt As Table = Tables("表A") Dim Book As New XLS.Book \'定义一个Excel工作簿 Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表 Dim cls() As String = {"科室","类别","金额","张数","备注"} Dim cls2() As String = {"手术室_低值","手术室_高值","外科_低值"} For c As Integer = 0 To cls.Length -1 \'添加列标题 Sheet(0, c).Value = cls(c) Next For k As Integer = 0 To dt.Rows.Count - 1 \'填入数据 Dim r As Integer = k*3 Sheet(r +1, 0).Value = "手术室" Sheet(r +1, 1).Value = "低值" Sheet(r +2, 0).Value = "手术室" Sheet(r +2, 1).Value = "高值" Sheet(r +3, 0).Value = "外科" Sheet(r +3, 1).Value = "低值" Sheet.MergeCell(r +1,0,2,1) For i As Integer = 0 To cls2.Length -1 For j As Integer = 2 To cls.Length -1 Sheet(r + i + 1, j).Value = dt.Rows(k)(cls2(i) & cls(j)) Next Next Next \'打开工作簿 Book.Save("F:\\test.xls") Dim Proc As New Process Proc.File = "F:\\test.xls" Proc.Start()
|
||||
-- 作者:蓝蚂蚁 -- 发布时间:2016/9/28 11:30:00 -- 有点蓝,终于盼到你了 先谢谢 按照你的代码得出的结果如下图,但问题是有很多重复了,麻烦老师再帮我看看。
|
||||
-- 作者:有点蓝 -- 发布时间:2016/9/28 11:55:00 -- 那是你的数据有空行,删除即可 |