如何在Word中提取指定页的内容

发布网友 发布时间:2022-02-28 04:58

我来回答

5个回答

热心网友 时间:2022-02-28 06:28

一:利用Word里面的“索引”功能。

1、选中需要提取的文字,执行菜单命令“插入-引用-索引和目录”;
2、在“索引”选项页里面选择单击按钮“标记索引项”;
3、指定“选项”为“当前页”,根据需要可以指定提取之后显示的页码格式为加粗或者倾斜,单击“标记”;
4、此时标记索引项窗口并不会关闭,而且你还能在文档中找到并选中下一个需要提取的文字,重复步骤3;
5、如果没有其它需要提取的文字了,单击“关闭”;
6、在需要插入索引表的地方,执行菜单命令“插入-引用-索引和目录”,根据需要设置索引表的格式(比如分栏、对齐、缩进等风格),然后单击“确定”。

这样所有标记过索引的文字以及它们所在的页码就都提取出来了。

如果需要提取的文字有很多,那么或许也可以用VBA宏来自动标记索引(即相当于自动完成上面的1-5步骤)。但是前提是这些文字必须都有非常特定的格式,即可以保证当前文档中凡是具有这个格式的文本,都是需要提取索引的文本。

二:下列VBA代码可以自动为当前文档中的所有红色文字建立索引条目,并在当前光标位置处插入带文字条目以及对应页码的索引表:

Option Explicit

Sub AutoMarkIndexForAllRedText()

Dim oSaveSelection As Range

Set oSaveSelection = Selection.Range

Selection.StartOf wdStory
Selection.Find.ClearFormatting
Selection.Find.Font.Color = wdColorRed ' 在这里可以设置更多的匹配格式,如字体、字号等
While Selection.Find.Execute(FindText:="", Forward:=True, Format:=True)
ActiveDocument.Indexes.MarkEntry(Selection.Range, Selection.Range.Text).Select
Selection.Collapse wdCollapseEnd
Wend

oSaveSelection.Select
ActiveDocument.Indexes.Add Selection.Range

MsgBox "完成!"

End Sub

如果楼主对于这个代码生成的索引表样式不太满意,也没关系。因为现在所有索引条目已经建好,所以只需把自动生成的索引表删除后用Word自己的“插入-引用-索引和目录”命令来重新生成符合自己要求样式的索引表即可。

热心网友 时间:2022-02-28 07:46

一:利用Word里面的“索引”功能。

1、选中需要提取的文字,执行菜单命令“插入-引用-索引和目录”;
2、在“索引”选项页里面选择单击按钮“标记索引项”;
3、指定“选项”为“当前页”,根据需要可以指定提取之后显示的页码格式为加粗或者倾斜,单击“标记”;
4、此时标记索引项窗口并不会关闭,而且你还能在文档中找到并选中下一个需要提取的文字,重复步骤3;
5、如果没有其它需要提取的文字了,单击“关闭”;
6、在需要插入索引表的地方,执行菜单命令“插入-引用-索引和目录”,根据需要设置索引表的格式(比如分栏、对齐、缩进等风格),然后单击“确定”。

这样所有标记过索引的文字以及它们所在的页码就都提取出来了。

如果需要提取的文字有很多,那么或许也可以用VBA宏来自动标记索引(即相当于自动完成上面的1-5步骤)。但是前提是这些文字必须都有非常特定的格式,即可以保证当前文档中凡是具有这个格式的文本,都是需要提取索引的文本。

二:下列VBA代码可以自动为当前文档中的所有红色文字建立索引条目,并在当前光标位置处插入带文字条目以及对应页码的索引表:

Option Explicit

Sub AutoMarkIndexForAllRedText()

Dim oSaveSelection As Range

Set oSaveSelection = Selection.Range

Selection.StartOf wdStory
Selection.Find.ClearFormatting
Selection.Find.Font.Color = wdColorRed ' 在这里可以设置更多的匹配格式,如字体、字号等
While Selection.Find.Execute(FindText:="", Forward:=True, Format:=True)
ActiveDocument.Indexes.MarkEntry(Selection.Range, Selection.Range.Text).Select
Selection.Collapse wdCollapseEnd
Wend

oSaveSelection.Select
ActiveDocument.Indexes.Add Selection.Range

MsgBox "完成!"

End Sub

如果楼主对于这个代码生成的索引表样式不太满意,也没关系。因为现在所有索引条目已经建好,所以只需把自动生成的索引表删除后用Word自己的“插入-引用-索引和目录”命令来重新生成符合自己要求样式的索引表即可。

热心网友 时间:2022-02-28 09:20

付费内容限时免费查看回答您好,您的问题我已经看到了,正在整理答案,请稍等一会儿~

您好,很高兴为您服务,打开我要转换的Word文档,小编的这篇文档总管有5页的内容,里面的内容是百度经验的帮助信息,下面小编就来演示将第2页到底4页转换成pdf文件

在打开的word系统设置菜单中默认为“信息”,在这里我们选择“导出”,之后一次选择“创建PDF/XPS文档”-----“创建PDF/XPS”

之后会打开“发布为 PDF或XPS”对话框,在对话框中选择“选项”按钮,这里面有我们需要设置的内容

点击“选项”按钮后,就打开“选项”对话框,我们主要的操作是在“页范围”里面,默认是“全部”

选择“页”,然后再“从”和“到”之间输入选择我们要转换为pdf文件的页的范围,最后点击右下方的“确定”按钮,完成设置

所有的设置都已经完成,现在我们只要点击右下方的“保存”按钮,就可以将我们指定范围的2到4页输出保存为pdf格式的文件了

热心网友 时间:2022-02-28 11:12

下面的代码是复制第2页的内容,使用时对应使用.past方法就可以了。

Dim lngSpePg&, lngEndPg&, lngBgn&, lngEnd&
lngSpePg = 2
lngEndPg = Selection.Information(wdNumberOfPagesInDocument)
With ActiveDocument
Select Case lngEndPg - lngSpePg
Case 0
.GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:=Format(lngSpePg)).Select '跳至第n页
lngBgn = Selection.Start '获取n页第一个字符的位置
lngEnd = Selection.EndKey(unit:=wdStory)
'lngEnd = Selection.Information(wdActiveEndPageNumber) '返回当前页码(忽略用户页码设置)
Case Is > 0
lngBgn = .GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:=Format(lngSpePg)).Start
lngEnd = .GoTo(What:=wdGoToPage, Which:=wdGoToNext, Name:=Format(lngSpePg + 1)).Start
Case Is < 0
MsgBox "指定页码超出总页码!"
End Select
.Range(lngBgn, lngEnd).Copy'复制第n页内容
End With

热心网友 时间:2022-02-28 13:20

工具-自动编写摘要,可能不够精确,需要人工再检查下

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com