Foxtable(狐表)用户栏目专家坐堂 → 求助:如何将已筛选出的数据为导出为报表


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

主题:求助:如何将已筛选出的数据为导出为报表

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


加好友 发短信
等级:幼狐 帖子:68 积分:543 威望:0 精华:0 注册:2019/8/25 11:09:00
求助:如何将已筛选出的数据为导出为报表  发帖心情 Post By:2019/9/16 15:00:00 [只看该作者]

1.大检查记录表里面有很多问题,通过系统菜单筛选出了某一个项目,希望只导出当前筛选项目的罚款单,但是单击导出罚款单按钮后,还是把整个表里面的罚款问题都导出来了。


图片点击可在新窗口打开查看此主题相关图片如下:筛选出项目.jpg
图片点击可在新窗口打开查看

单击代码如下:
Forms("提示窗口").open
Application.DoEvents()'显示正在执行,请稍后

Dim tm As String  = ProjectPath & "Attachments\处罚通知单.doc" '指定模板文件
Dim fl As String = ProjectPath & "Reports\处罚通知单.doc" '指定目标文件
Dim wrt As New WordReport(Tables("季度大检查记录表"),tm,fl) '定义一个WordReport
Dim str As String = ""
Dim drs As List(of DataRow) = DataTables("季度大检查记录表").Select("[经济处罚] = '是'") '筛选出符合条件的行
If drs.Count > 0 Then '如果存在符合条件的行
    For Each r As DataRow In drs '逐行生成报表
        str = str & vbcrlf & r("存在问题")
    Next
    str = str.Trim(vbcr).Trim(vblf)
End If
wrt.Replace("[存在问题]",str)
wrt.BuildOne(Tables("季度大检查记录表").current)
wrt.Show() '显示报表

Forms("提示窗口").Close

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


加好友 发短信
等级:幼狐 帖子:68 积分:543 威望:0 精华:0 注册:2019/8/25 11:09:00
  发帖心情 Post By:2019/9/16 15:04:00 [只看该作者]

示例如下:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:安全管理标准化平台.table




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


加好友 发短信
等级:幼狐 帖子:68 积分:543 威望:0 精华:0 注册:2019/8/25 11:09:00
  发帖心情 Post By:2019/9/16 15:05:00 [只看该作者]

报表模板如下:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:处罚通知单.zip


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


加好友 发短信
等级:超级版主 帖子:110810 积分:563988 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/16 15:14:00 [只看该作者]

……
Dim str As String = ""
    For Each r As Row In Tables("季度大检查记录表").rows '逐行生成报表
        str = str & vbcrlf & r("存在问题")
    Next
    str = str.Trim(vbcr).Trim(vblf)
wrt.Replace("[存在问题]",str)
……

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


加好友 发短信
等级:幼狐 帖子:68 积分:543 威望:0 精华:0 注册:2019/8/25 11:09:00
回复:(有点蓝)……Dim str As String = ""  &...  发帖心情 Post By:2019/9/16 16:54:00 [只看该作者]

不行啊,这样就把所有的问题都显示出来了。一是通过菜单筛选出某个项目。 二是筛选出[经济处罚]=是 的问题,代码中已经筛选。问题是不管我是不是通过菜单筛选出某个项目,单击导出时把所有项目 [经济处罚]=是 的问题都导出来了。
替换了老师的代码后,是实现了导出当前筛选出的项目,但是把所有的问题都导出来了,没有把[经济处罚]=是 的问题筛选出来。
能不能筛选出某个项目后,导出[经济处罚]=是 的问题???

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


加好友 发短信
等级:超级版主 帖子:110810 积分:563988 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/16 17:07:00 [只看该作者]

……
Dim str As String = ""
    For Each r As Row In Tables("季度大检查记录表").rows '逐行生成报表
if r("经济处罚") = true
        str = str & vbcrlf & r("存在问题")
end if
    Next
    str = str.Trim(vbcr).Trim(vblf)
wrt.Replace("[存在问题]",str)
……

 回到顶部