2017-09-26 3 views
0

간단한 답을해야하지만 느낌이 들지 않습니다. 수백 개의 단어 문서를 일반 HTML로 변환하려는 노력의 일환으로 vba를 사용하여 문서를 크롤링하고 적절한 태그를 추가합니다. 목록 문단은 각 목록이 첫 번째 줄에 태그를 삽입하기 전에 태그를 삽입하기 때문에 (즉 항목 # 1이 아래로 튀어 나오고 새 항목은 '1'이므로) 문제가 발생합니다. insert after 메쏘드는리스트의 끝 부분에서 잘 작동합니다. 아래에 VBA가 붙여 넣어집니다. 어떤 아이디어? 감사합니다Word VBA : 번호 매기기 목록 단락 앞과 항목 1 앞에 삽입하십시오.

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 

답변

0

음, 늦게 파티에 조금하지만이 갈 :

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 
제공