以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 合并单元格 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=185813) |
||||
-- 作者:lihe60 -- 发布时间:2023/3/18 10:17:00 -- 合并单元格 左表是数据表 此主题相关图片如下:无标题.png ,如何生成右表格式的excel报表? |
||||
-- 作者:有点蓝 -- 发布时间:2023/3/18 10:29:00 -- 手工合并:http://www.foxtable.com/webhelp/topics/1153.htm |
||||
-- 作者:lihe60 -- 发布时间:2023/3/18 14:30:00 -- Book.Build() \'生成细节区 Dim i As Integer = 7 Dim h As Integer = 0 Dim r As Integer = Tables("g_业务库").rows.count Dim k As Integer If r > 2 Then For j As Integer = Tables("g_业务库").rows.count - 1 To 1 Step - 1 Dim r1 As Row = Tables("g_业务库").rows(j) Dim r2 As Row = Tables("g_业务库").rows(j - 1) h = h + 1 If r2("箱数") <> Nothing Then Sheet.MergeCell(r + i - h, 14, h-k+1, 1) Sheet.MergeCell(r + i - h, 15, h-k+1, 1) Sheet.MergeCell(r + i - h, 16, h-k+1, 1) Sheet.MergeCell(r + i - h, 17, h-k+1, 1) k = h + 1 End If Next End If Book.Sheets("excel").Rows.RemoveAt(0) \'删除第一行,Excel报表的第一行通常是标记行 Book.Sheets.Remove("e-to-w") \'删除工作表 Book.Save(fl) \'保存工作簿 Dim Proc As New Process \'打开工作簿 Proc.File = fl Proc.Start() 这个代码有什么问题,单元格不合并的
|
||||
-- 作者:有点蓝 -- 发布时间:2023/3/18 14:39:00 -- 调试 msgbox(r + i - h & “-“ & ” h-k+1) Sheet.MergeCell(r + i - h, 14, h-k+1, 1)
|
||||
-- 作者:lihe60 -- 发布时间:2023/3/18 14:44:00 -- msgbox(r + i - h & “-“ & ” h-k+1),这个调试是对。代码位置是不是不对 |
||||
-- 作者:有点蓝 -- 发布时间:2023/3/18 14:46:00 -- 如果不合并,调试肯定是不对的。代码位置看不出什么问题 |
||||
-- 作者:lihe60 -- 发布时间:2023/3/18 15:16:00 -- 上传例子 |
||||
-- 作者:lihe60 -- 发布时间:2023/3/18 15:18:00 -- 例子 [此贴子已经被作者于2023/3/19 6:16:02编辑过]
|
||||
-- 作者:lihe60 -- 发布时间:2023/3/19 6:17:00 --
|
||||
-- 作者:有点蓝 -- 发布时间:2023/3/19 20:08:00 -- 项目里没有父表和子表这2个表,无法测试 |