word办公技巧活动窗口拆分(Word按页拆分成多个独立文档,同事1天的工作量,你只要半分钟)
- 办公技巧
- 2023-07-11 04:58:01
- 0
前言|职场实例
今天遇到了这样的一个Word文档问题:
如何将一个Word文档按页拆分成多个独立文档?
假设我们的这个Word文档内含有1000页,然后将这1000页文档按页批量拆分成1000个单独的Word文档。如果在页数数量少的情况下,我们完全可以通过手动一个一个新建Word文档,然后将总文档中的每页内容复制粘贴到新建的一个一个的Word文档中。但是如果页数数据量大的话,再这样无技巧的傻傻的工作,那效率就太低了。
下面小编就通过模拟一个简单的例子来说明这个问题。
如下图所示:
我们将含有2页的名称为“Excel情报局”的总Word文档放在一个新建的文件夹内。
这个名称为“Excel情报局”的Word文档中的2页内容如下图所示:第一页为一首词“将进酒”,第二页同样为一首词“水调歌头”。
最终实现的效果是:
将名称为“Excel情报局”的Word文档中的2页内容按页批量拆分成2个单独的文档,两首词分别放在两个单独的文档中,如下图所示:
解决方案|解题步骤
在文件夹内打开那个需要按页拆分的文档(本例中它的文件名叫做“Excel情报局”)
键入ALT F11打开VBA编辑器(或者点击“开发工具”选项卡,点击"visual basic,进入VBA编辑器)。
点击“插入-模块”,将下面一段VBA代码复制粘贴到该新建的模块中。
代码如下:
Option ExplicitSub SplitPagesAsDocuments()Dim oSrcDoc As Document, oNewDoc As DocumentDim strSrcName As String, strNewName As String Dim oRange As Range Dim nIndex As Integer Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") Set oSrcDoc = ActiveDocument Set oRange = oSrcDoc.Content oRange.Collapse wdCollapseStart oRange.Select For nIndex = 1 To ActiveDocument.Content.Information(wdNumberOfPagesInDocument) oSrcDoc.Bookmarks("page").Range.Copy oSrcDoc.Windows(1).Activate Application.Browser.Target = wdBrowsePage Application.Browser.Next strSrcName = oSrcDoc.FullName strNewName = fso.BuildPath(fso.GetParentFolderName(strSrcName), _ fso.GetBaseName(strSrcName) & "_" & nIndex & "." & fso.GetExtensionName(strSrcName)) Set oNewDoc = Documents.Add Selection.Paste oNewDoc.SaveAs strNewName oNewDoc.Close False Next Set oNewDoc = Nothing Set oRange = Nothing Set oSrcDoc = Nothing Set fso = Nothing MsgBox "结束!"End Sub
点击上方的“运行-运行子过程/窗体”,稍等几秒会弹出一个拆分成功结束的提示框,点击“确定”后关闭VBA窗口,打开文件夹,发现已经拆分完成了,出现2个独立的Word文档。
分别点击打开拆分好的Word文档,我们发现每首词已经分别整齐的放置到了里面。
本文由 京廊文化根据互联网搜索查询后整理发布,旨在分享有价值的内容,本站为非营利性网站,不参与任何商业性质行为,文章如有侵权请联系删除,部分文章如未署名作者来源请联系我们及时备注,感谢您的支持。
本文链接: /bangong/7689.html