设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

1234下一页
返回列表 发新帖
查看: 7263|回复: 27

[窗体] [求助]请问如何才能让子窗体数据输出WORD?

[复制链接]

点击这里给我发消息

发表于 2004-6-6 18:10:00 | 显示全部楼层 |阅读模式


请问如何才能让子窗体的数据也写入WORD文件(红色部份),并在结尾写入“以下空白”。

如果能超过15行能自动分页自动写入就最好了。

还有子窗体的序号能让它自动产生吗?

高手们,麻烦你们了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

发表于 2004-6-6 18:13:00 | 显示全部楼层
子窗体的序号可以子窗体beforeinsert事件中使用Dmax或Dlast取得子窗体数据表(符合条件)的最大序号加1赋给当前序事情如果要以Word更多的控制,可以创建Word.Application对象,然后对这个对象来控件格式,也可使用DDE

点击这里给我发消息

 楼主| 发表于 2004-6-6 18:21:00 | 显示全部楼层
站长:你说的好像很复杂哎。可我不会编程,你说的“ 如果要以Word更多的控制,可以创建Word.Application对象,然后对这个对象来控件格式,也可使用DDE”好没有什么书籍可参照啊!能介绍这方面的书吗?[em06]

点击这里给我发消息

发表于 2004-6-6 18:33:00 | 显示全部楼层
看看Warmheart网友的一贴,看看能否有帮助,附带有程序。http://www.office-cn.net/forum.php?mod=viewthread&tid=14098

点击这里给我发消息

 楼主| 发表于 2004-6-6 19:00:00 | 显示全部楼层
站长,我看过了,跟输出至WORD或EXCEL无关啊,都没有输出。
发表于 2004-7-28 22:33:00 | 显示全部楼层
子窗体数据输出WORD??有人帮忙解决吗
发表于 2004-7-30 07:18:00 | 显示全部楼层
顶一下,有人解决吗
发表于 2004-8-2 17:42:00 | 显示全部楼层
把如下代码 写在按钮"生成word"的click事件中:

  DoCmd.SelectObject acForm, "你的子窗体名称", True

    DoCmd.RunCommand acCmdOutputToRTF

站长的方法很好,好像可以预先设置word中格式,然后按照事先预定的文本格式导出,可是我不会做。我的方法只是实现了简单的office链接,导出后的文件自动保存在“我的文档”

抄段帮助给你:

Microsoft Access 支持动态数据交换 (DDE) 作为一个目标(客户)应用程序或源(服务器)应用程序。例如,一个作为客户的应用程序,如 Microsoft Word,可以通过 DDE,从一个作为服务器的 Microsoft Access 数据库来请求数据。

以下示例将演示,如何将 Microsoft Access 用作为一个 DDE 服务器,以使用 Visual Basic 来创建 Microsoft Word 过程。(必须正在运行 Microsoft Access ,才能使该示例工作。)
  1. Sub AccessDDE()

  2.     Dim intChan1 As Integer, intChan2 As Integer

  3.     Dim strQueryData As String



  4.     ' 使用“系统”主题,打开“罗斯文”示例数据库。

  5.     ' 必须在使用其他 DDE 主题之前已打开数据库。

  6.     intChan1 = DDEInitiate("MSAccess", "System")

  7.     ' 可能需要将此路径更改为“罗斯文”

  8.     ' 示例数据库的路径。

  9.     DDEExecute intChan1, "[OpenDatabase C:\Access\Samples\Northwind.mdb]"



  10.     ' 从“十种最贵的产品”查询中获得所有数据。

  11.     intChan2 = DDEInitiate("MSAccess", "Northwind.mdb;" _

  12.         & "QUERY Ten Most Expensive Products")

  13.     strQueryData = DDERequest(intChan2, "All")

  14.     DDETerminate intChan2



  15.     ' 关闭数据库。

  16.     DDEExecute intChan1, "[CloseDatabase]"

  17.     DDETerminate intChan1



  18.     ' 将检索的数据印打印到“调试”窗口。

  19.     Debug.Print strQueryData

  20. End Sub
复制代码





[此贴子已经被作者于2004-8-2 9:51:18编辑过]

点击这里给我发消息

 楼主| 发表于 2004-8-3 00:37:00 | 显示全部楼层
8楼的,谢谢你。

你说的方法只能让子窗体生成WORD文件,如果能让输出的WORD只有当前子窗体显示的内容的话,好也好过我每次输出EXCEL再复制到WORD。

另还有个问题,在复制EXCEL单元格至WORD时,第一次粘贴右键上只有“粘贴”一项,先粘贴再撤消后再次看右键就多了“粘贴单元格及粘贴为嵌套表格”,可我要用的就是“粘贴单元格”,请问要怎样就能一次过找到“粘贴单元格”呢?

[此贴子已经被作者于2004-8-2 16:38:13编辑过]

发表于 2004-8-3 01:57:00 | 显示全部楼层
使用同样的方法,你也可以导出数据到excel中。用不着复制和粘贴。

DoCmd.SelectObject acForm, "你的子窗体名称", True  

DoCmd.RunCommand acCmdOutputToExcel

可是这仅仅只是实现和word和excel的链接和简单的发布,并不能按照事先预定的文格式导出。我觉得应该把word中的编程代码也写进来,比如设置页边距等等。请大家顶一顶。可惜我不会,有了结果就通知大家。使用这种方法生成报表,也是一种方法。再说报表的设计有些烦人,当然并不能取代报表。

当然,也可以导出为html格式。



[此贴子已经被作者于2004-8-2 17:59:20编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-3-28 21:32 , Processed in 0.088906 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表