2014-12-08 3 views
0

사용자 정의 사용자 인터페이스에서 사용자 입력을 기반으로 삭제하려는 단어 문서에 하위 섹션이 있습니다.단어 용 VBA 매크로 : 하위 섹션 삭제

는 예를 들면 : 나는 다음과 같은 코드를 사용

3 섹션에 하위 섹션 3.1.1을 삭제하려면,하지만 전체 섹션을 삭제하지만 난 단지 특정 하위 섹션 삭제할 :

ActiveDocument.Sections(x).Range.Delete 

여기서 x = 3.1.1을 제공 할 수 없으며 3과 같은 정수 값만 허용하고 전체 섹션을 삭제합니다.

답변

0

Word에는 중첩 섹션이 없으므로 필요에 맞는 섹션을 찾을 때까지 섹션을 반복해야합니다. 물론

For each objSect in ActiveDocument.sections 
    if trim(replace(objSect.Range.Paragraphs.First.range.Text, chr(13), "")) like "* 1.1" then objSect.range.delete 
Next objSect 

, 당신이 원하는 경우에 의미

Title___[continuous section break] 
Stuff 
Section 1___[continuous section break] 
Stuff 
Section 1.1___[continuous section break] 
Stuff 

당신은 섹션을 통해 루프 및 각의 첫 번째 단락을 확인할 수 있습니다 : 그래서, 당신은 다음과 같습니다 Word 문서가 있다고 가정 해 보자 섹션 1을 삭제하려면 한 번에 하나씩 모든 하위 섹션과 함께 삭제해야합니다.

탐색 창에서 제공하는 것과 같은 것이 있다면 VBA에서 지원되는지 여부는 알 수 없습니다. 탐색 창 삭제 옵션을 모방하는 메소드가없는 것 같습니다.