有用过word中bookmark的请进,200分,不够可再开帖(200分)

  • 主题发起人 主题发起人 upingking
  • 开始时间 开始时间
U

upingking

Unregistered / Unconfirmed
GUEST, unregistred user!
我用word的替换功能,worddocument1.range().find.execute(...)函数替换有字数限制,用bookmark没有字数限制,但是,bookmark怎么在指定位置动态创建啊!还有bookmark怎么删除??
我的部分源码:
//动态创建
worddocument1.Bookmarks.Add('mark1',EmptyParam);//书签名为mark1,用EmptyParam参数只会在word文档的开头创建bookmark,这个参数怎么赋值才能在指定的位置创建啊,比方说某个特别的字符串之前。
//字符在bookmark处插入
bookmark:=mark1;
WordApplication1.ActiveDocument.Bookmarks.Item(BookMark).Range.InsertAfter(str);
//bookmark怎么删除啊,因为如不删除bookmark,程序每执行一次,就会在bookmark处插入一回。
 
插入书签:Bookmarks.Add
删除标签
Application.Selection.goto(What := wdGoToBookmark, Name := l_Book_Mark_Name);
Application.Selection.Text := '';
你转换成Service可以人事的就可以了。
 
你的意思是我给你发代码还是你给我发代码?
我这里没有现成的代码。
 
删除我已解决,多谢你的代码。可我怎么加入呢。加入我怎么定位??
 
插入:
Application.Selection.Text := l_text;
Bookmarks.Add(Range := Application.Selection.Range, Name := l_Book_Mark_Name);

定位的代码,删除部分就有呀
Application.Selection.goto(What := wdGoToBookmark, Name := l_Book_Mark_Name);
 
我说的定位不是找到bookmark而是,我怎么给Range赋值,才能实现 比方说在某个特别的字符串之前或之后插入书签。
 
你可以给书签的显示内容赋值
 
你理解错了我的意思,我是说有一篇文档,已经些好了,而这篇文档中没有书签,我想在文档的某处添加书签,而要添加书签的地方有特殊的字符#name,我怎么在这个地方添加书签呢,我怎么获得#name所在的位置,
 
这个问题是不是就转换成查找一篇文档中包含特定字符了?
如果是,就很容易啦。只需要使用Find了。
 
使用Find了,有没有类似的源码啊,我再转换成Service可以认识的就可以了。
 
后退
顶部