2013-05-14 282 views
0

我一直在寻找一个解决方案,这一点现在。获取Word文档的所有书签

我需要从word文档中提取所有书签,以便我可以随心所欲地操作它们。所以我想我只需要对他们的引用而不是实际的书签。

到目前为止,我发现的只是解决方案,您需要搜索书签的名称,但我只想获得对所有书签的引用。我可能在任何时候都不知道他们的名字。我认为我可以通过调用MyDocument.Bookmarks来获得书签,但到目前为止我还没有想出如何工作该属性。

如果我从模板中提取书签,名称不会改变。但是,如果我从一个未知的文档中提取书签,我不知道如何获取参考文献。

任何帮助?

+0

我不明白,你有一个书签的集合。您可以通过Name属性获取他们的名字。你可以用内容替换它,移动它,删除它......缺少什么? – 2013-05-14 08:13:22

+0

@Adriano我不明白如何获取文档中的所有书签,然后通过C#处理它们。迄今为止,这些文件并没有帮助。 – OmniOwl 2013-05-14 08:14:18

+1

从VBA中,您可以使用集合(您提到的)'Document.Bookmarks'轻松获取所有书签。为了获得它们,你可以像这样运行简单的循环(VBA编码):'对于MyDocument.Bookmarks中的每个BM'...你在C#中运行这样的东西时缺少什么。你有什么异常吗? – 2013-05-14 08:22:07

回答

5
foreach (Bookmark bookmark in document.Bookmarks) 
{ 
    // Do whatever you want with the bookmark. 
} 
+0

非常感谢你:) – Ashan 2016-06-09 06:53:57