vba - 在Word中删除页面

标签 vba ms-office ms-word

我需要 VBA 代码来删除 Word 文档中除第一个部分之外的所有部分(页面)

为此,我使用下面的代码。

For Each oSec In ActiveDocument.Sections
    If oSec.Index <> 1 Then
        oSec.Range.Delete
    End If   
Next oSec

这有效,但不会删除第二部分,仅删除其内容。 如果我删除代码中的 if 条件,它将删除第一页的内容。

我想保留第一页的内容。

请告诉我哪里出错了。

最佳答案

删除时需要包含分节符。尝试更改此行:

oSec.Range.Delete

进入这个:

ActiveDocument.Range(oSec.Range.Start - 1, oSec.Range.End).Delete

顺便说一句,您不应该认为 page=section,它们是不同类型的文档单元。

关于vba - 在Word中删除页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22032569/

相关文章:

c# - 如何在 Word 共享加载项中挂接按键事件?

java - Apache POI : find characters in Word document without spaces

excel - 在 VBA 中引用 Windows 可移植设备文件时遇到问题?

c++ - 从 Excel VBA 使用 C++ dll 时出现 "Bad DLL calling convention"- 如何解决?

wcf - 如何将大文件从 MS Word 插件 (VBA) 传输到 Web 服务器?

Excel自定义格式: What does [$€-2] mean?

python - 如何使用Python从outlook获取突出显示(选定)的邮件?

javascript - 如何在Word加载项启动时加载模板文件