设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3522|回复: 6

[Access本身] 关于将access表里数据逐行导入word表格里的问题(已解决)

[复制链接]

点击这里给我发消息

发表于 2015-3-3 08:53:02 | 显示全部楼层 |阅读模式
本帖最后由 zhidao 于 2015-7-12 08:29 编辑

如题,我想将数据库“人员信息表”里的数据导入一个word模板表格里,这个问题我研究了几天就是找不到思路,所以请版友帮帮忙
谢过!

本帖子中包含更多资源

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

x
发表于 2015-3-3 09:25:09 | 显示全部楼层
应该是导出到word吧?供参考
http://www.office-cn.net/forum.php?mod=viewthread&tid=113919
如果是从word导入到access,应该建立word组件再进行读取数据

点击这里给我发消息

 楼主| 发表于 2015-3-3 09:58:43 | 显示全部楼层
roych 发表于 2015-3-3 09:25
应该是导出到word吧?供参考
http://www.office-cn.net/forum.php?mod=viewthread&tid=113919
如果是从wo ...

其实我也没想过那么复杂就是把数据到处去,之前我是用导入excel里的思路来的,但是还是没头绪,我上传了附件,版主有空指点一下思路吧。
发表于 2015-3-3 10:41:03 | 显示全部楼层
发表于 2015-3-3 11:06:34 | 显示全部楼层
本帖最后由 roych 于 2015-3-3 11:09 编辑

1、请先行引用 Microsoft Word 库。2、打开模块后按F5执行即可生成word表格(不做窗体按钮了,如有需要,请自行创建按钮,然后把代码复制到按钮的单击事件上)。
3、注意,不要删除模板。
4、其它说明见注释。
  1. Sub ExpDoc()
  2. Dim rst As New ADODB.Recordset
  3. '定义word组件、文档、表、单元格
  4. Dim wd As New Word.Application
  5. Dim doc As Word.Document
  6. Dim tbl As Table
  7. Dim cel As Cell
  8. Dim i As Long
  9. Dim j As Long
  10. '打开模板,模板只保留表头。这样的话,每次增加数据时只需要新增一行即可,以避免数据超出原表而不方便写入。
  11. Set doc = wd.Documents.Add(CurrentProject.Path & "\模板.doc")
  12. '打开记录集
  13. rst.Open "人员信息", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  14. 'Null值无法写入。跳转处理比较麻烦,直接忽略掉。
  15. On Error Resume Next
  16. 'Word文档里的table序号、行列序号都是从1开始的哦。
  17. Set tbl = doc.Tables(1)
  18. For i = 1 To rst.RecordCount
  19. '新增一行,然后写入数据
  20.     tbl.Rows.Add
  21.     For j = 0 To rst.Fields.Count - 1
  22.         Set cel = tbl.Cell(i + 1, j + 1)
  23.         cel.Range = rst(j)
  24.     Next
  25.         rst.MoveNext
  26. Next
  27. rst.Close
  28. Set rst = Nothing
  29. '删除旧文件,并保存新文件,然后退出word程序。
  30. If Len(Dir(CurrentProject.Path & "\人员信息.doc")) > 0 Then Kill CurrentProject.Path & "\人员信息.doc"
  31. doc.SaveAs2 (CurrentProject.Path & "\人员信息.doc")
  32. doc.Close
  33. wd.Quit
  34. End Sub
复制代码

本帖子中包含更多资源

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

x

点击这里给我发消息

 楼主| 发表于 2015-3-3 14:37:57 | 显示全部楼层
roych 发表于 2015-3-3 11:06
1、请先行引用 Microsoft Word 库。2、打开模块后按F5执行即可生成word表格(不做窗体按钮了,如有需要,请 ...

谢谢roych 版主的详细解答
发表于 2015-12-5 11:39:53 | 显示全部楼层
qqqqqqqqqqqqqqqqq
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-16 18:48 , Processed in 0.105396 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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