通过VBA将word中的表格导入到excel中
通过VBA将word中的表格导入到excel中
由于项目需要,需要将word中的表格按照格式导入到excel中,所以通过在word中写VBA程序的方式将word的内容导出到excel中。
1、添加“开发工具”选项卡
打开word(我的是office2007),点击左上角“office 按钮”,点击“word选项”,打开如下图所示界面:
勾选“在功能区显示“开发工具”选项卡”
2、VBA编辑界面
此时,在word界面上就会出现“开发工具”选项卡,点击该选项卡,然后点击“Visual Basic”,如下图所示:
此时,会弹出,VBA编辑界面,右键点击“Project(**)”,选择插入模块:
进入模块编辑界面
3、开始编辑
关于VB的具体语法不再描述。只描述有关word和excel的相关操作
3.1、读取word中的表格
由于是在word中编写vba程序,所以不需要获取word的相关对象,直接用ActiveDocument来代替
'获取文档中表格的数量tablesCount = ActiveDocument.Tables.Count
'获取excel的目录和文件名Dim wordFileName As StringwordFileName = Left$(ActiveDocument.Name, Len(ActiveDocument.Name) - 4) '获取当前文档名称,不包括后缀名
'从Word中新建并打开一个Excel文件Dim ExcelApp As ObjectDim wk As ObjectApplication.ScreenUpdating = FalseSet ExcelApp = CreateObject("Excel.Application") '打开一个Excel程序对象With ExcelApp.Visible = True '显示文件Set wk = ExcelApp.Workbooks.Add '新建一个Excel文件wk.SaveAs FileName:=ThisDocument.path & "\" & wordFileName & "xlsx" '设置新建Excel文件的路径和文件名''导出内容''End With
另外需要注意的是。如果想要在word中操作excel文件,需要在word的VBA编辑器中引入excel的库(比如:Microsoft Excel 12.0 Object Library)。引用方式是:点击VBA界面上的 工具->引用,弹出如下界面:
选中该库即可
3.2、将内容导出到excel
要将内容导出到excel中,需要先获取word中的表格内容,然后再将内容导出到excel中。
'获取表格的行数,其中j表示第j个表格tableRowCount = ActiveDocument.Tables(j).Range.Rows.Count'读取Word表格中对应单元格中的内容,其中 Cell(row, col) 表示的是表格中的第row行,第col列string = ActiveDocument.Tables(j).Cell(row, col).Range.Text'将数据写入到excel表格中,Sheets(1)表示的是excel文件的第一个工作表,Range("A1")表示的是A1单元格,A表示列wk.Sheets(1).Range("A1").Value = string
'wk.Sheets(1).Range("A" & row).Value = tFlagValue
*****
当数据输出完成之后,通过wk.Save来保存excel文件
4、示例
有一个例子,可以去以下网址 https://download.csdn.net/download/bailang_zhizun/10336439 下载
通过VBA将word中的表格导入到excel中相关推荐
- 如何在ex表格导入php_怎么使用php把表格中的数据导入到excel中,php如何快速导入excel表格数据...
php怎么导入大量数据的excel php导出数据的Excel: PHP从数据库分多次读取100万行记录,和分将100万入文本文件都没问题 Excel可以支100万行记录,Excel 2003最大支持 ...
- 如何将word中的表格转化为excel中?
1.复制word中的表格 2.到excel中右击选择"选择性粘贴",选择"无文本格式" 3.完成
- PDF中的表格导入到Excel(分割)
PDF中的表格导入到Excel(分割) 1,把pdf打开,选择文本内容,复制,粘贴到表格中,可效果..... 2,进行分列,大家仔细看表格,发现.... 1,选中要拆分的列, 2,切换到数据菜单,点击 ...
- swing中如何将jtable中的数据导入到excel中?
参考: http://k.pconline.com.cn/question/2210578.html http://liuliang136.javaeye.com/blog/551524 最终代码:这 ...
- lisp倒入excel数据画图_如何将EXCEL中的数据导入到CAD中,绘制成曲线|
如何将EXCEL中的数据导入到CAD中,绘制成曲线 如果不用软件,只用CAD自身功能的话可以通过多段线生成你需要的曲线.你给出你的曲线函数,我给你生成曲线坐标以及CAD能自动绘制的文件格式 怎样将ca ...
- matlab将数据输出到excel中,matlab将数据保存为excel表格-怎样将MATLAB中的数据输出到excel中...
怎样将MATLAB中的数据输出到excel中? xlswrite()函数可以将matlab中数据保存到excel中,请面例子: >> data = magic(5) % 示例数据 data ...
- VBA读取html表格内容,科学网—VBA读取word文档表格中table的cell的text文本 - 付安民的博文...
VBA读取word文档表格中table的cell的text文本 已有 11546 次阅读 2010-6-4 16:40 |个人分类:学习篇|系统分类:科研笔记 Sub Readtable() Dim ...
- lisp倒入excel数据画图_Excel表格数据在cad画出图形-如何将EXCEL中的数据导入到CAD中,绘制成曲线...
如何实现excel的数据与cad图形的关联 举个例 假如根据B2单元格中的半径画一个圆 : 打开EXCEL,在B2单元格中输个圆的半径100 按快捷Alt F11打开VBA编辑器并插入一个模块 引用C ...
- 查询oracle数据库的表格数据类型,excel表格中如何查询数据库数据类型-我想把excel表格中的数据导入oracle数据库中,想在......
在excel表里,什么是:字段.记录.数据类型.多工... declare @t table(id numeric(18,2)) insert into @t SELECT col1 FROM ...
最新文章
- sqlserver创建对于job失败_创建维护计划失败创建 对于 JobStep“子计划”失败
- hdu 1404/zoj 2725 Digital Deletions 博弈论
- 装箱问题C语言报告,装包装箱问题 (C语言代码)
- 常见设备分辨率大小,响应式必备啊
- java reader_Java之字符输入流,Reader类的简单介绍
- 那些年,在nodejs上踩过的坑
- python网络模型的保存与加载
- es集群节点数和分片数关系_ES数据插入和查询流程是怎么样的?
- 小程序文章怎么导出来_宠物小程序怎么进行盈利
- [UOJ336]无限之环
- centos 安装mysql-proxy_详解在Centos 5.2下安装最新Mysql Proxy LUA教程
- numpy无法导入的问题--ModuleNotFoundError: No module named 'numpy'总结
- 在单例Bean中依赖原型Bean问题解决
- 解密中国网络游戏业的黑暗骑士:响尾马(下)
- 服务器ghost备份后无法进入系统还原,一键Ghost备份还原解决方法
- 人脸识别-特征脸方法
- element ui的upload上传视频内容
- 在Window10系统中安装Pandas并行加速库Modin的流程及效果测试
- oracle 允许级联删除,oracle系列--级联删除和级联更新
- stm32通过ESP8266连接互联网服务器,手机通过网页实现远程控制灯亮灭