【问题标题】:Word VBA: Insertbefore numbered list paragraph and before item 1Word VBA:在编号列表段落之前和第 1 项之前插入
【发布时间】:2018-03-07 21:27:20
【问题描述】:

这感觉应该有一个简单的答案,但我找不到。作为将数百个 word 文档转换为纯 HTML 的努力的一部分,我使用 vba 来抓取文档并添加适当的标签。列表段落存在问题,因为在每个列表之前插入标签会将其放在第一行(即,它会降低第 1 项,而新项目是“1.”)。 insert after 方法适用于列表末尾。 VBA 粘贴在下面。有任何想法吗?谢谢

Sub listparagraphtagging()
    Dim aList As list
    Dim rng As Range

    For Each aList In ActiveDocument.Lists
        aList.Range.InsertParagraphBefore
        aList.Range.InsertBefore "<ul>"
        aList.Range.InsertAfter "</ul>"
    Next
End Sub

【问题讨论】:

    标签: html vba ms-word


    【解决方案1】:

    好吧,聚会有点晚了,但试试看吧:)

    Sub listparagraphtagging()
        Dim aList As List
        Dim rng As Range
        Dim para As Paragraph
    
        For Each aList In ActiveDocument.Lists
            For Each para In aList.Range.Paragraphs
                Set rng = para.Range
                rng.InsertBefore "<ul>"
                rng.End = rng.End - 1
                rng.Collapse wdCollapseEnd
                rng.Text = "</ul>"
            Next
        Next
    End Sub
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-26
      • 2021-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多