Foxtable(狐表)用户栏目专家坐堂 → [求助]关于Excel导出报表页码转换的问题


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

主题:[求助]关于Excel导出报表页码转换的问题

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


加好友 发短信
等级:幼狐 帖子:125 积分:1098 威望:0 精华:0 注册:2017/2/26 17:50:00
[求助]关于Excel导出报表页码转换的问题  发帖心情 Post By:2018/7/12 15:32:00 [只看该作者]

图片点击可在新窗口打开查看我想请教老师,我在窗口的控件内对主表“表A”录入文件名称和页码。比如说我录入的第一行的第一个文件页码为3页,第二行的文件页码为6页。导出目录的时候,我想让我的目录内的页码编号为第一行对应的文件页码显示为1-3,第二行的页码显示0 4-9.请问老师这个代码要怎么写。谢谢,
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:文件录入.zip


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


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

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:文件录入.zip


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


加好友 发短信
等级:幼狐 帖子:125 积分:1098 威望:0 精华:0 注册:2017/2/26 17:50:00
  发帖心情 Post By:2018/7/12 16:51:00 [只看该作者]

意思要直接加一列呀。。。。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/12 17:29:00 [只看该作者]

以下是引用biaoai2011在2018/7/12 16:51:00的发言:
意思要直接加一列呀。。。。

 

是的,需要辅助列。这一列是自动计算得出的。


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


加好友 发短信
等级:幼狐 帖子:125 积分:1098 威望:0 精华:0 注册:2017/2/26 17:50:00
  发帖心情 Post By:2018/7/17 23:06:00 [只看该作者]

以下是引用有点蓝在2018/7/12 16:42:00的发言:
 下载信息  [文件大小:20.7 KB  下载次数:7]
图片点击可在新窗口打开查看点击浏览该文件:文件录入.zip
有点蓝老师,我想问您的是,您这个是在表内发生的事件,可是我的表的e.cancel=True,的,这样的话,我在窗口里录入值,但是实际上页码范围是没有发生变化的。这个代码要怎么改、


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/18 9:46:00 [只看该作者]

datacolchanged事件,本来的事件代码删掉。

 

If e.DataCol.Name = "页码" Then
    Dim cnt As Integer = e.DataTable.Compute("sum(页码)","_sortkey <= " & e.DataRow("_sortkey") & " and _Identify <> " & e.DataRow("_Identify"))
    e.DataRow("页码范围") = (cnt +1) & "-" & (cnt + e.DataRow("页码"))
    Dim drs = e.DataTable.Select("_sortkey >= " & e.DataRow("_sortkey"))
    For i As Integer = 0 To drs.Count - 1
        Dim r As DataRow = drs(i)
        If r.IsNull("页码") = False Then
            r("页码范围") = (cnt +1) & "-" & (cnt + r("页码"))
            cnt = cnt + r("页码")
        End If
    Next
End If


 回到顶部