首页 > 解决方案 > VSTO Word C#:删除文档中的特定章节

问题描述

我正在为 Word 做一个加载项,我需要删除特定章节及其所有内容。
例子:

这是章节的标题

这是本章的内容

我尝试了类似的方法,但它在 rngToDelete.Delete() 处引发异常。

            Document doc = Globals.ThisAddIn.Application.ActiveDocument;
            Range rngFind = doc.Content;
            object missing = Type.Missing;
            object oEnd = WdCollapseDirection.wdCollapseEnd;
            // starting point - chapter 7 needs to be deleted
            bool wasFound = rngFind.Find.Execute("7\tDefinitionen, Begriffe, Abkürzungen", ref missing, ref missing,
               ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
               ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

            if (wasFound)
            {
                Range rngToDelete = rngFind.Duplicate;
                //reset the range to Find so it moves forward
                rngFind.Collapse(ref oEnd);
                rngFind.End = doc.Content.End;
                // the deletion has to stop here at chapter 8
                wasFound = rngFind.Find.Execute("8\tMitgeltende Unterlagen", ref missing, ref missing,
                        ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
                        ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

                if (wasFound)
                {
                    rngToDelete.End = rngFind.End;
                    rngToDelete.Delete();
                }
            }

任何帮助将不胜感激,谢谢。

标签: c#vstooffice-interopoffice-addinsword

解决方案


推荐阅读