Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 6121|回复: 16

vba 获取指定word内容(在不打开word的情况下)

[复制链接]
发表于 2013-10-8 22:16 | 显示全部楼层 |阅读模式
在excel编写vba  获取d:\1.doc 内容   将第一个表格table(1) 整体复制到 剪切板clipboard 下,方便后续使用  (在不打开word的情况下){:091:}

1.jpg
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-10-8 23:11 | 显示全部楼层
  1. Sub test()
  2.     Dim objWord As Object
  3.     Set objWord = CreateObject("C:\Users\bb\Desktop\doc1.docx")
  4.     With objWord
  5.         .tables(1).Range.Copy
  6.         Range("a3").Activate
  7.         ActiveSheet.Paste
  8.         .Close False
  9.     End With
  10.     Set objWord = Nothing
  11.     MsgBox "ok"
  12. End Sub
复制代码
回复

使用道具 举报

发表于 2013-10-8 23:11 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2013-10-9 15:58 | 显示全部楼层
hwc2ycy 发表于 2013-10-8 23:11

运行到“ .tables(1).Range.Copy” 的时候报错了~~ 1.jpg

这是为什么呢?
1.jpg
回复

使用道具 举报

发表于 2013-10-9 16:16 | 显示全部楼层
你把你用的代码和WORD文档打包上来我看看。
我用2010测试的,没问题。
回复

使用道具 举报

 楼主| 发表于 2013-10-9 20:54 | 显示全部楼层
hwc2ycy 发表于 2013-10-9 16:16
你把你用的代码和WORD文档打包上来我看看。
我用2010测试的,没问题。

上传了  我用的是office2003   多谢  麻烦您了!!{:021:}

Desktop.rar

12.08 KB, 下载次数: 7

回复

使用道具 举报

发表于 2013-10-9 21:22 | 显示全部楼层
cjg2010 发表于 2013-10-9 20:54
上传了  我用的是office2003   多谢  麻烦您了!!
  1. Private Sub CommandButton1_Click()

  2.     Dim objWord As Object

  3.     On Error Resume Next
  4.    
  5.     Set objWord = CreateObject("d:\1.doc")
  6.     If Err.Number = 0 Then
  7.         Debug.Print "DOC 对象 创建完成"
  8.     Else
  9.         Debug.Print "Doc 对象 错误"
  10.         Exit Sub
  11.     End If

  12.     With objWord
  13.         Debug.Print "DOC中表格的数量:" & .Tables.Count
  14.         .Tables(1).Range.Copy
  15.         
  16.         If Err.Number = 0 Then
  17.             Debug.Print "表格复制完成"
  18.         Else
  19.             Debug.Print "表格访问失败"
  20.             .Close False
  21.             Exit Sub
  22.         End If

  23.         Range("a3").Activate
  24.         ActiveSheet.Paste
  25.         .Close False
  26.     End With
  27.    
  28.     Set objWord = Nothing
  29.     MsgBox "ok"
  30. End Sub
复制代码
你运行完后,把立即窗口截图传上来看看。
回复

使用道具 举报

 楼主| 发表于 2013-10-9 21:36 | 显示全部楼层
hwc2ycy 发表于 2013-10-9 21:22
你运行完后,把立即窗口截图传上来看看。

单步运行了 其中2个IF分支是这样运行的
1.JPG



2.JPG
回复

使用道具 举报

 楼主| 发表于 2013-10-9 21:56 | 显示全部楼层
hwc2ycy 发表于 2013-10-9 21:22
你运行完后,把立即窗口截图传上来看看。

3.JPG
回复

使用道具 举报

发表于 2013-10-9 22:23 | 显示全部楼层
Debug.Print "DOC中表格的数量:" & .Tables.Count
这步的没有反应了。
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 23:56 , Processed in 0.323837 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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