Excel VBA 实例(23) - 一键批量提取word表格内容

今天的这个实例来自公号的一位粉丝,如下图:

这里有若干份同样表格,但是不同内容的word文档。需求是:将所有的word里面表格的内容全部汇总到一个excel表格当中,如下图:

没错,word里面同样也是可以用vba代码的

思路也是很简单:遍历读取每个word文档,提取指定的表格内容到excel表中即可,源代码如下,大部分网上都有现成的,永恒君做了一些修改而言。

Sub提取word表格()

mypath = ThisWorkbook.Path &"\"

myname = Dir(mypath &"*.docx")

m =1

DoWhilemyname <>""

Setmydoc =GetObject(mypath & myname)

Withmydoc

m = m +1

With.Tables(1)

Cells(m,1) = m -1'序号

Range("A1:F1") =Array("序号","姓名","性别","身份证号","住址","联系方式")

Cells(m,2) =Replace(.cell(1,2).Range.Text,"","")

Cells(m,3) =Replace(.cell(2,2).Range.Text,"","")

Cells(m,4) =Replace(.cell(3,2).Range.Text,"","")

Cells(m,5) =Replace(.cell(4,2).Range.Text,"","")

Cells(m,6) =Replace(.cell(5,2).Range.Text,"","")

EndWith

.CloseFalse

EndWith

myname = Dir()

Loop

Setmydoc =Nothing

MsgBox"提取完成"

EndSub

看一下效果:

是不是很神奇?

如果你在操作过程中有疑问,欢迎来交流。源文件准备好,需要的话再后台回复「word表格」即可。

相关阅读:

Excel VBA 实例(22) - 一键筛选其他工作表或工作簿的数据

Excel vba 实例(21) - 如何快速准确录入数据

Excel vba 实例(20) - 一键填充每月员工拜访地区

欢迎加入我的知识星球,为您提供更多VBA、python等效率提升服务和资源!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • VBA订制工具栏 http://club.excelhome.net/thread-1047254-1-1.htm...
    大海一滴写字的地方阅读 2,272评论 0 0
  • 自从2014年开通[完美Excel]微信公众号以来,坚持分享已经学习到的Excel和VBA知识和心得,目前已分享文...
    完美Excel阅读 8,342评论 6 69
  • 1.1 VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得...
    浮浮尘尘阅读 21,849评论 6 49
  • 转自链接 目录 1.认识NPOI 2.使用NPOI生成xls文件 2.1创建基本内容 2.1.1创建Workboo...
    腿毛裤阅读 10,685评论 1 3
  • 前几日遇到一个将几十个商品二维码数据文件导入到EXCEL中,做格式转换再导入数据库的问题。拿到的原始表格是将近10...
    乾行者阅读 13,691评论 1 1