700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 通过VBA将word中的表格导入到excel中

通过VBA将word中的表格导入到excel中

时间:2023-03-24 13:21:44

相关推荐

通过VBA将word中的表格导入到excel中

通过VBA将word中的表格导入到excel中

由于项目需要,需要将word中的表格按照格式导入到excel中,所以通过在word中写VBA程序的方式将word的内容导出到excel中。

1、添加“开发工具”选项卡

打开word(我的是office),点击左上角“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、示例

有一个例子,可以去以下网址 /download/bailang_zhizun/10336439 下载

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。