从word文档中检索书签ID值

时间:2011-09-14 16:27:07

标签: c# vba ms-word office-interop

我想创建一个包含许多书签的word文档。书签包含一些需要每年更新的价格信息。我需要根据特定顺序的数据库中的值更新它们。 如何使用书签ID或特定顺序创建书签?什么保证当我使用word对象模型从c#读取书签时,它将按照创建它的相同顺序检索?

已编辑:word文档的内容按列细分,每列都有许多书签。我可以通过bm1c1,bm2c1 ..,bm1c2,bm2c2等命名书签...但是当从C#读取书签时,它从bm1c1,bm1c2..etc .....读取,其中c1和c2表示列信息...我想按特定列的顺序读取书签,因为我要替换的数据来自具有特定订单的查询。如果我可以将书签与特定ID相关联,那么我认为它可能帮助...我找不到添加具有特定ID的书签的方法......

进一步的想法..我想我可以做这样的事情。找到相关的书签并更新它..

                Object name = bmrk.Name; //this could be bm1c1 or whatever appropriate

                Microsoft.Office.Interop.Word.Range rng = doc.Bookmarks.get_Item(ref name).Range;
                rng.Text = "197.00";
                Object range = rng;
                doc.Bookmarks.Add(bmrk.Name, ref range);

但问题是,如果明天我需要在两个其他现有书签之间添加一个新书签,它会搞砸订单..如果我可以指定一个ID,那么我可能会用它来维护为了

由于

1 个答案:

答案 0 :(得分:0)

单词帮助系统告诉您如何在单词内创建书签,或者,您是否要从c#创建书签?

我没有关注你的订单,如果你找到其中一个,你把它称为bm1它将永远存在,如果你循环所有它们并得到它你可以分配或渲染一些文本无论在你到那个订单。你编辑你的问题更详细,我编辑我的答案:-)