delphi 操作word,怎样在word中插入超级连接
2013-08-09 · 知道合伙人数码行家
你好,其实Delphi操作Word的方法很多,通过录制Word宏操作是一种非常方便的方法。下面来具体解说一下。
【软件信息】
Delphi6,Word2010
【目标】
通过Delphi在Word中添加超链接。
【步骤】
先录制一段Word中添加超链接的宏,宏代码如下。
宏录制视频:http://v.youku.com/v_show/id_XNTkzNjc1Mzg4.html
Sub 添加超链接()
'
' 添加超链接 宏
'
'
Selection.EndKey Unit:=wdStory
Selection.TypeParagraph
Selection.TypeText Text:="测试"
Selection.MoveLeft Unit:=wdCharacter, Count:=2, Extend:=wdExtend
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _
"
", SubAddress:="", ScreenTip:="", TextToDisplay:= _
"测试"
End Sub写Delphi代码
界面
按钮事件
procedure TForm1.Button1Click(Sender: TObject);
var
WordApp, WordDoc: Variant;
begin
try
begin
WordApp := CreateOleObject('Word.Application');
WordDoc := WordApp.Documents.Open('c:\test.docx');
WordApp.Selection.EndKey($00000006); //
WordApp.Selection.TypeParagraph;
WordApp.Selection.TypeText(Edit1.Text);
WordApp.Selection.MoveLeft(1, Length(edit1.Text), 1);
WordApp.ActiveDocument.Hyperlinks.Add(WordApp.Selection.Range,
Edit2.Text, '', '', Edit1.Text);
WordDoc.saveas('c:\test.docx');
end
finally
begin
WordDoc.close;
WordApp.quit;
end
end;
end;
创建Word应用程序对象(WordApp)和Word文档对象(WordDoc).
说明:宏中的对象都是WordApp。
VBA宏中的代码Selection.EndKey Unit:=wdStory转为Delphi代码为WordApp.Selection.EndKey(wdStory);
这些VBA中wdStory等参数值,可以直接baidu查询就可以,直接写具体的值就可以了。
其中,直接将wdStory转为具体的值就可以了。百度得出wdStory=6。
1) Selection.EndKey移到文档末尾。参考MSDN文档http://msdn.microsoft.com/zh-cn/library/office/ff195593.aspx
2) Selection.TypeParagraph为新起一段。参考MSDN文档http://msdn.microsoft.com/zh-cn/library/office/ff839799.aspx
3) Selection.TypeText插入文本。参考MSDN文档http://msdn.microsoft.com/zh-cn/library/office/ff840867.aspx
4) Selection.MoveLeft选定内容。参考MSDN文档http://msdn.microsoft.com/zh-cn/library/office/ff192370.aspx
5) Hyperlinks.Add添加超链接。参考MSDN文档http://msdn.microsoft.com/zh-cn/library/office/ff837214.aspx
代码测试效果
另外,百度空间里面有篇文档,你可以看下。
http://hi.baidu.com/ke1987/item/39e43701bf702fdf93571894
上面的方法已测试过,可以使用的,如果还有什么问题,可以继续追问。
另外还有我的代码,可以参考下。
2024-07-20 广告