Foxtable(狐表)用户栏目专家坐堂 → 专业报表联打无法按选中打印如何处理?


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

主题:专业报表联打无法按选中打印如何处理?

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 8:26:00 [显示全部帖子]

代码本来就是按所有行打印的。如果要按鼠标拖选,参考:http://www.foxtable.com/webhelp/topics/1597.htm

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 10:08:00 [显示全部帖子]

不要只会抄,能不能先理解一下帮助的代码?帮助是遍历锁定行的?

With Tables("销售主表")
    If .TopPosition > -1 Then '如果选定区域包括数据行
        For i As Integer = .TopPosition To .BottomPosition
           原来遍历所有行的代码改为放到这里
        Next
    End If
End With

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 10:44:00 [显示全部帖子]

把下面代码去掉
For Each pr As Row In tbl.Rows  

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 10:51:00 [显示全部帖子]

写代码,建议还是要努力理解代码,不然连自己写的代码都看不懂,更不用说改进了

For i As Integer = .TopPosition To .BottomPosition
dim pr as row = .rows(i)

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 11:26:00 [显示全部帖子]

把换页的代码放到生成数据前面

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 11:44:00 [显示全部帖子]

完整代码发上来

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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 13:56:00 [显示全部帖子]

……
                    Dim cnt = rt.Rows.Count              
                    doc.Body.Children.Add(rt)
                    rx = New prt.RenderText
                    rx.Style.FontBold = True
                    rx.Style.Spacing.Top = 3
                    rx.Text = "销售明细数目: " & Rows.Count
                    rx.Style.TextAlignHorz = prt.AlignHorzEnum.Right
                If i < .BottomPosition OrElse (i = .BottomPosition AndAlso p < math.Ceiling(Rows.Count / prs) - 1) Then
                    rx.BreakAfter = prt.BreakEnum.Page '否则换页   
                End If
                    
                    doc.Body.Children.Add(rx)

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


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


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


加好友 发短信
等级:超级版主 帖子:109489 积分:557107 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/2 17:09:00 [显示全部帖子]

有空不如先看看帮助,专业报表都有哪些功能呗:http://www.foxtable.com/webhelp/topics/1200.htm

 回到顶部