我有几千个word,里面包含有表格,如何批量提取我想要的数据?
如果是一个word中的,复制粘贴;如果是多个word中的,需要写个代码(如下),或者在网上找一下相关的工具。
此方法适用于多个word文档里面的所有表格:1、将多个含有表格的word文档放入一个目录;2、在该目录中新建一个空的excel表格;3、在excel表格中运行以下宏命令,即可。
Sub WordTabletoExcel()Dim WordApp As Object, DOC, mTable, Fn$, Str$On Error Resume Next '设置容错代码CreateObject("wscript.shell").Run "cmd.exe /c dir """ & ThisWorkbook.Path & "\*.doc"" /s/b>""" & ThisWorkbook.Path & "\list.txt""", False, True '取得指定目录下的word文档清单Set WordApp = CreateObject("word.application") '创建word程序项目(用于操作word文档)WordApp.Visible = True '设定word程序项目可见Open ThisWorkbook.Path & "\list.txt" For Input As #1 '打开清单文件并读取内容While Not EOF(1) '循环读取清单文件各行内容Input #1, Str '输入一行文本到变量str中If Trim(Str) "" Then '如果文本有效则Set DOC = WordApp.documents.Open(Trim(Str)) '利用word程序项目打开对应的word文档With DOCFor Each mTable In .Tables '循环文档中的各个表格WordApp.Activate '激活word程序,使之窗体前置mTable.Range.Copy '复制表格区域With Windows(1) '激活excel程序窗体,使之前置.ActivateWith ThisWorkbook.ActiveSheet '选中当前使用区A列下面的第一个单元格,并粘贴复制的word中的表格数据.Cells(.Cells.SpecialCells(xlCellTypeLastCell).Row + 1, 1).Select.PasteEnd WithEnd WithNext mTable.Close False '关闭word文档End WithEnd IfWendClose #1 '关闭清单文件If Dir(ThisWorkbook.Path & "\list.txt") "" Then Kill ThisWorkbook.Path & "\list.txt" '删除清单文件WordApp.Quit 'word程序项目关闭Set DOC = Nothing '清空对应项目变量Set WordApp = NothingEnd Sub满意请采纳哟~~~~~~
多个word文件中的表格批量提取至一个Excel表格中
展开全部 这个可以有;如果不多的话可以通过将Word另存为html格式,然后用excel打开就可以在excel处理了。
excel里面的处理方法就很多;如果你的文件多少20+以上;可以用VBA来解决,这个嘛,填下没有免费的开发,需要付费完成;代码我有,需要针对你的表格特殊定制修改;如果需要进一步请私信我...
如何从EXCEL中提取相应数据批量生成WORD文档
展开全部 准备好将生成文档的数据(excel格式)。
将制式的文档的打开,按照文档每一项的顺序依次插入数据源(下面会用简单的数据作为例子)。
首先点击word工具栏中的引用,然后点击邮件。
3.此时,工具栏中显示是邮件合并,然后点击打开数据源,查找你需要导入的数据表格,点击打开即可。
4.光标落到任意项即可,不分先后顺序,但最好按顺序依次插入。
文档上的项必须和插入域中选中的项一致,然后点击插入,然后点击关闭,依次插完合并域,注:每项插完后必须点击关闭,要不然就是重复插入呦,(注:操作正确的话,默认为数据库域)如果一不小心,在插入合并域时不小心点到工具栏中的其他选项,不要着急,直接点引用-邮件可以继续插入呢 5.全部合并域插完后,是这个样子滴,提醒小伙伴们,一定要再三检查完插入是否正确呦 6.检查无误后,点击工具栏中的合并到新文档 7.最后生成就是这个样子啦 ...
请问如何将多个word表格里的内容批量提取到一张excel表中?
展开全部 Sub 自动把word表格转换到Excel()On Error Resume Next ''''''出错继续(应对不规范的表格)''''''重命名所有WORD文件为大写“A”。
如 A (1).docx。
''maxcolumn(xex)Dim maxrowend2Dim wdAppFor w3 = 1 To 2 想合并多少个文档?maxrowend2 = Sheets("sheet1").[a65536].End(xlUp).RowSet wdApp = CreateObject("word.application")path_ = ThisWorkbook.PathwdApp.Documents.Open (path_ & "\" & "A (" & w3 & ")" & ".docx")wdApp.Visible = Truen = wdApp.ActiveDocument.Tables.Count ''''有多少个表格'x = 0x = maxrowend2 + 1 ''''初始行号y = 0For i = 1 To nrs = wdApp.ActiveDocument.Tables(i).Rows.Count ''''有多少个行cs = wdApp.ActiveDocument.Tables(i).Columns.Count ''''有多少个列''''''ghg = MsgBox(rs & "行列" & cs) '''''''''''''''''''''''''''''''提示For m = 1 To rsx = x + 1y = 1ThisWorkbook.Sheets("Sheet1").Cells(x, 1) = "源自A (" & w3 & ")" & ".docx" & "; 第" & i & " 表 " ''''''''''9999999999999999999For n = 1 To csvv = wdApp.ActiveDocument.Tables(i).Cell(m, n)ThisWorkbook.Sheets("Sheet1").Cells(x, y + 1) = Mid(vv, 1, Len(vv) - 1) '''空第一列y = y + 1NextNextNextwdApp.Application.Quit '关闭word文档Set wdApp = Nothing '释放对象变量的内存NextEnd Sub
我有几百个word,里面包含有表格,如何批量提取我想要的第一个表格...
展开全部 如果是一个word中的,复制粘贴;如果是多个word中的,需要写个代码(如下),或者在网上找一下相关的工具。
此方法适用于多个word文档里面的所有表格:1、将多个含有表格的word文档放入一个目录;2、在该目录中新建一个空的excel表格;3、在excel表格中运行以下宏命令,即可。
Sub WordTabletoExcel()Dim WordApp As Object, DOC, mTable, Fn$, Str$On Error Resume Next '设置容错代码CreateObject("wscript.shell").Run "cmd.exe /c dir """ & ThisWorkbook.Path & "\*.doc"" /s/b>""" & ThisWorkbook.Path & "\list.txt""", False, True '取得指定目录下的word文档清单Set WordApp = CreateObject("word.application") '创建word程序项目(用于操作word文档)WordApp.Visible = True '设定word程序项目可见Open ThisWorkbook.Path & "\list.txt" For Input As #1 '打开清单文件并读取内容While Not EOF(1) '循环读取清单文件各行内容Input #1, Str '输入一行文本到变量str中If Trim(Str) "" Then '如果文本有效则Set DOC = WordApp.documents.Open(Trim(Str)) '利用word程序项目打开对应的word文档With DOCFor Each mTable In .Tables '循环文档中的各个表格WordApp.Activate '激活word程序,使之窗体前置mTable.Range.Copy '复制表格区域With Windows(1) '激活excel程序窗体,使之前置.ActivateWith ThisWorkbook.ActiveSheet '选中当前使用区A列下面的第一个单元格,并粘贴复制的word中的表格数据.Cells(.Cells.SpecialCells(xlCellTypeLastCell).Row + 1, 1).Select.PasteEnd WithEnd WithNext mTable.Close False '关闭word文档End WithEnd IfWendClose #1 '关闭清单文件If Dir(ThisWorkbook.Path & "\list.txt") "" Then Kill ThisWorkbook.Path & "\list.txt" '删除清单文件WordApp.Quit 'word程序项目关闭Set DOC = Nothing '清空对应项目变量Set WordApp = NothingEnd Sub
如何提取excel里的数据到word里批量打印?
展开全部 1、点击【开始】在【搜索程序和文件】中输入“regedit”打开注册表,然后展开到“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer”下,在右键选择新建一个“DWORD32位”,重命名为“MultipleInvokePromptMinimum”,然后双击它,把它的值修改为你想要同时打开的文件数就可以了。
2、此时在系统里就可以一次性选择多个文档一次单击右键选择打印了,如图所示: 3、设置系统默认打印设备、在开始菜单右边点击【设备和打印机】,选择要批量打印文档的默认打印设备并设为默认打印机。
4、如需要批量打印双面(A3、A4)则需设置【打印机首选项】,在里面设置你需要打印的纸张大小及双面打印设置。
5、设置将多个文档同时打印多份、先将文档排序方式设置成以【名称】排序;然后我们将要打印多份的文档选择后按【Ctrl+C】的方式复制,再以【Ctrl+V】的方式粘贴。
...
转载请注明出处51数据库 » word批量提取数据 软件