Foxtable(狐表)用户栏目专家坐堂 → 继续请教exce报表顺序号问题


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

主题:继续请教exce报表顺序号问题

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


加好友 发短信
等级:童狐 帖子:278 积分:2915 威望:0 精华:0 注册:2013/8/28 22:21:00
继续请教exce报表顺序号问题  发帖心情 Post By:2023/8/31 19:34:00 [只看该作者]

上次请教老师excel报表中自动生成顺序号问题,以下是老师给出的代码,模板在只有一个sheet时没问题,但如果一个模板里有两个sheet表,都有序号列,那么其中有一个表的序号就会从另一个表的序号接着往下排,不能重新从1开始:
BeforeBuild事件中,将这两个标签插入到Marks集合:
Select Case e.Book.TempLate
    Case "某模板名称"
        e.Book.Marks.Add("序号",0)
        e.Book.Marks.Add("xh", 0)
End Select

BuildDetail事件中加入下面的代码:

Select Case e.Book.TempLate
    Case "某模板名称"

        e.Book.Marks("xh") = e.Book.Marks("xh") + 1
       e.Book.Marks("序号") = e.Book.Marks("xh")
End Select

我试了一下改用以下代码:
BeforeBuild事件中,将这两个标签插入到Marks集合:
Select Case e.Book.TempLate
    Case "某模板名称"
        Select Case e.Book.CurrentSheetName
            Case "统计表1"
                e.Book.Marks.Add("序号", 0)
                e.Book.Marks.Add("xh", 0)
            Case "统计表2"
                e.Book.Marks.Add("序号", 0)
                e.Book.Marks.Add("xh", 0)
        End Select
End Select

BuildDetail事件中加入下面的代码:

Select Case e.Book.TempLate
    Case "某模板名称"
Select Case e.Book.CurrentSheetName
    Case "统计表1"
        e.Book.Marks("xh") = e.Book.Marks("xh") + 1
        e.Book.Marks("序号") = e.Book.Marks("xh")
    Case "统计表2"
        e.Book.Marks("xh") = e.Book.Marks("xh") + 1
        e.Book.Marks("序号") = e.Book.Marks("xh")
End Select
End Select
结果出现”给定关键字不在字典中“,检查模板表名称、里面的sheet名称都没错。
[此贴子已经被作者于2023/8/31 19:35:41编辑过]

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


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

不同sheet使用不同的标记名称,序号1、序号2...........
[此贴子已经被作者于2023/8/31 20:11:45编辑过]

 回到顶部