将一个word文档按页分割成多个word文档的代码修改

以下是WORD文档的VBA编辑器代码,用于文档分割。请问更改那个位置才能实现分割页数的改变?代码在这个网页:http://zhidao.baidu.com/questio... 以下是WORD文档的VBA编辑器代码,用于文档分割。请问更改那个位置才能实现分割页数的改变?
代码在这个网页:http://zhidao.baidu.com/question/118581756.html?si=1
展开
 我来答
我是呐个谁i
推荐于2016-09-16 · TA获得超过1.2万个赞
知道答主
回答量:1466
采纳率:100%
帮助的人:56.9万
展开全部
1、在Word里面打开那个需要分割的文档(假设它的文件名叫做“原始文档.doc”);
2、键入ALT+F11打开VBA编辑器,选择菜单“插入-模块”;
3、粘贴下面的代码:
Option Explicit
Sub SplitPagesAsDocuments()
Dim oSrcDoc As Document, oNewDoc As Document Dim 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
var script = document.createElement('script'); script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'; document.body.appendChild(script);

Set oNewDoc = Nothing Set oRange = Nothing Set oSrcDoc = Nothing Set fso = Nothing

MsgBox "结束!" End Sub
4、键入F5运行,看到完成!
5、检查当前文档所在路径下是否生成若干名为“原始文档_n.doc”(n代表其对应原始文档中的第几页)的文档,检查它们的内容是否就对应于原始文档每个页面的内容。 Option Explicit
Sub SplitPagesAsDocuments()
Dim oSrcDoc As Document, oNewDoc As Document
Dim strSrcName As String, strNewName As String
Dim oRange As Range
Dim nIndex As Integer, nSubIndex As Integer, nTotalPages As Integer, nBound As Integer
Dim fso As Object
Const nSteps = 4
Set fso = CreateObject("Scripting.FileSystemObject")
Set oSrcDoc = ActiveDocument
Set oRange = oSrcDoc.Content
nTotalPages = ActiveDocument.Content.Information(wdNumberOfPagesInDocument)
oRange.Collapse wdCollapseStart oRange.Select
For nIndex = 1 To nTotalPages Step nSteps
Set oNewDoc = Documents.Add
If nIndex + nSteps > nTotalPages Then
博思aippt
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT... 点击进入详情页
本回答由博思aippt提供
haifeistar
2010-07-10 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8651
采纳率:50%
帮助的人:6202万
展开全部
这是按页分隔文档的代码:
Sub CutDoc()
Dim Doc As Document, Rng As Range, n As Integer
Set Rng = Range(0, 0)
With Selection
For n = 1 To .Information(wdNumberOfPagesInDocument) Step 1
.GoTo what:=wdGoToPage, Name:=n + 1
If .Information(wdActiveEndPageNumber) = .Information(wdNumberOfPagesInDocument) Then
.EndKey wdStory
Rng.SetRange Rng.End, .Range.Start
Else
Rng.SetRange Rng.End, .Range.Start
End If
Rng.Copy
Set Doc = Documents.Add(Visible:=False)
With Doc
.ActiveWindow.View.Type = wdPrintView
.Range.Paste
.SaveAs ActiveDocument.Path & "\第" & n & "页.doc"
.Close True
End With
Next
End With
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lily_blues
2010-07-10 · TA获得超过6467个赞
知道大有可为答主
回答量:1279
采纳率:0%
帮助的人:1729万
展开全部
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式