单词VBA:如何引用没有编号的章节?

单词VBA:如何引用没有编号的章节?,vba,ms-word,Vba,Ms Word,我正在处理一个文档,我想在其中的一个特定部分设置一个保护 我有6个部分,第5部分是应该保护的部分 稍后,我想创建一个只能在第5节中使用的宏,输入宏的条件如下: If ActiveDocument.Range(0, Selection.Sections(1).Range.End).Sections.Count = 5 Then ... Else: MsgBox "Not in the right section" End If 但是,如果用户在文档中插入一节,则第5节将变为第6节(总共7节)

我正在处理一个文档,我想在其中的一个特定部分设置一个保护

我有6个部分,第5部分是应该保护的部分

稍后,我想创建一个只能在第5节中使用的宏,输入宏的条件如下:

If ActiveDocument.Range(0, Selection.Sections(1).Range.End).Sections.Count = 5 Then ...

Else: MsgBox "Not in the right section"

End If
但是,如果用户在文档中插入一节,则第5节将变为第6节(总共7节),依此类推

Sub TestSections()




Dim myDoc As Word.Document
Set myDoc = ActiveDocument

Dim rngSec1 As Word.Range
Dim rngSec2 As Word.Range
Dim rngSec3 As Word.Range
Dim rngSec4 As Word.Range
Dim rngSec5 As Word.Range



Set rngSec1 = myDoc.Sections(1).Range
Set rngSec2 = myDoc.Sections(2).Range
Set rngSec3 = myDoc.Sections(3).Range
Set rngSec4 = myDoc.Sections(4).Range
Set rngSec6 = myDoc.Sections(6).Range


rngSec1.Editors.Add wdEditorEveryone
rngSec2.Editors.Add wdEditorEveryone
rngSec3.Editors.Add wdEditorEveryone
rngSec4.Editors.Add wdEditorEveryone
rngSec6.Editors.Add wdEditorEveryone

myDoc.Protect wdAllowOnlyReading

End Sub
在这段代码中,我保护了整个文档,并允许访问除5之外的每个部分

我的问题是:即使第5节不再是第5节,如何能够参考第5节


谢谢你

我在我的分区的开头放了一个书签(选择将其命名为“section5”)(插入->书签)来识别我的分区

然后,每当我需要获取要使用的节的当前编号时,我都会运行以下代码:

Public Sub GetBookmrkSection()

Dim bookmrk As Range
Dim bookmrk_section As String

Set bookmrk = ActiveDocument.Bookmarks("Section6").Range
bookmrk_section = CStr(bookmrk.Information(wdActiveEndSectionNumber))
MsgBox bookmrk_section
Set bookmrk = Nothing

End Sub

你需要在这一部分有一些东西来识别它。它是否包含特定的标题文本?还是图形?它一定有什么特别的/独特的。。。?如果没有,你可以插入一个书签并使用它。谢谢你的回答,我用书签做到了,所以你现在都准备好了吗?是的,这很好