[英]vba macro for word : delete sub section
我想根據自定義用戶界面中的用戶輸入刪除Word文檔中的子節。
例如:我想刪除第3節下的3.1.1節
我使用了以下代碼,但它刪除了整個部分,但我只想刪除特定的子部分:
ActiveDocument.Sections(x).Range.Delete
在這里,我無法給出x = 3.1.1,它僅接受整數值(如3),並刪除整個部分。
Word沒有嵌套的部分,因此您可能需要循環瀏覽這些部分,直到找到滿足您需求的部分為止。 因此,假設您有一個如下所示的Word文檔:
Title___[continuous section break]
Stuff
Section 1___[continuous section break]
Stuff
Section 1.1___[continuous section break]
Stuff
您可以遍歷各節並檢查每節的第一段:
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
當然,這意味着如果要刪除第1節,則需要將其連同所有子節一起刪除。
如果您真正想要的是導航窗格所提供的功能,那么我不知道VBA是否支持該功能。 似乎沒有任何方法可以模仿“導航窗格刪除”選項。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.