Foxtable(狐表)用户栏目专家坐堂 → 如何将窗体中尚未保存的记录导出到EXCEL


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

主题:如何将窗体中尚未保存的记录导出到EXCEL

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


加好友 发短信
等级:九尾狐 帖子:2180 积分:13816 威望:0 精华:2 注册:2012/2/25 10:59:00
如何将窗体中尚未保存的记录导出到EXCEL  发帖心情 Post By:2014/12/5 13:47:00 [只看该作者]

我写了如下代码:
Dim ex As New Exporter
ex.SourceTableName ="游客收支表"        '指定导出表
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.FileName="团队游客名单"
dlg.OverwritePrompt=True
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    ex.FilePath = dlg.FileName               '指定目标文件
    ex.Format = "Excel"                      '导出格式为Excel
    ex.NewTableName="游客名单"
    ex.Fields = "姓名,性别,手机号码,单位"    '指定导出字段
    ex.Filter ="[团号] = '12345678'"       '指定导出条件
    ex.Export()                              '开始导出
End If

结果发现:未保存的记录,导出是空白记录,应该如何修改这段代码?
我现在采取的办法是先保存再导出;
有没有不保存就能导出的办法?

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/12/5 14:01:00 [只看该作者]

根据代码理应没保存都能导出到.

因为取的不是数据库的里的数据,还是说你的保存指的意思不一样.

上个例子看看

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


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

 导出的记录是空的。

 

 可能性:你的表名不是窗口表的名字;或者你设置的条件 团号 = '12345678' 没有符合条件的记录


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


加好友 发短信
等级:九尾狐 帖子:2180 积分:13816 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2014/12/5 15:49:00 [只看该作者]

我检查了一下,窗体中的表是个关联表  

图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图20141205154942.png
图片点击可在新窗口打开查看

那么这个表名该怎么写? 

ex.SourceTableName ="游客收支表"        '指定导出表

我写了 预结算单.游客收支表  通不过


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


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

 这个表,写 游客收支表

 

 然后,在filter那里,要设置一下 ex.Filter = "关联列 = '" & Tables("主表").Filter("关联列") & "'"


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


加好友 发短信
等级:九尾狐 帖子:2180 积分:13816 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2014/12/9 10:49:00 [只看该作者]

我的主表是: 预结算单

所以代码如下:
Dim ex As New Exporter
ex.SourceTableName ="游客收支表"        '指定导出表
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.FileName="团队游客名单"
dlg.OverwritePrompt=True
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    ex.FilePath = dlg.FileName               '指定目标文件
    ex.Format = "Excel"                      '导出格式为Excel
    ex.NewTableName="游客名单"
    ex.Fields = "姓名,性别,手机号码,单位"    '指定导出字段
    ex.Filter ="[团号] = " & Tables("预结算单").Filter("团号") & "'"     '指定导出条件
    ex.Export()                              '开始导出
End If 
结果 出现错误提示:  从字符串“团号”到类型“Integer”的转换无效。
[此贴子已经被作者于2014-12-9 10:49:38编辑过]

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


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

ex.Filter ="[团号] = '" & Tables("预结算单").Current("团号") & "'"     '指定导出条件

 回到顶部