+ -
当前位置:首页 → 问答吧 → 如何获取选定部分的所有上级标题?

如何获取选定部分的所有上级标题?

时间:2011-02-23

来源:互联网

/*********************************举例文档*************************************************/
1. 一级标题
1.1 二级标题
1.2 二级标题
  段落5
  段落6
/***************************************举例文档结束************************************/

问题:如何获取选定部分的所有上级标题?
例如:选定“段落5“
如何获取它的上级所有标题”1.2二级标题“和“1. 一级标题"?

作者: sandwich   发布时间: 2011-02-23

可试试如下代码(只针对标题样式段落)
复制内容到剪贴板
代码:
Sub test()
    Dim n As Byte, s As Long, info As String
    With Selection
        n = .ParagraphFormat.OutlineLevel
        Do
            .GoToPrevious wdGoToHeading
            If .Start = s Then Exit Do
            s = .Start
            If .ParagraphFormat.OutlineLevel < n Then
                info = .Range.ListFormat.ListString & .Paragraphs(1).Range.Text & vbCrLf & info
                n = .ParagraphFormat.OutlineLevel
            End If
        Loop
        MsgBox info
    End With
End Sub

作者: sylun   发布时间: 2011-02-24