在Outlook正文中插入超链接

时间:2016-03-08 23:28:15

标签: vba hyperlink outlook outlook-vba outlook-2010

所以我试图创建一个代码来加速在Outlook中插入超链接。

我试图让它如果我已经复制了一个路径,我可以进入并输入Ctrl W,它将在这里插入单词的超链接。我对代码的尝试是:

Sub InsertHyperlink()
'
'
'
On Error Resume Next
ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _
    "U:\plot.log", _
    SubAddress:="", ScreenTip:="", TextToDisplay:="here"
End Sub

我遇到了如何更新代码以便在Outlook中工作(我在Word中编程)以及“U:\ plot.log”实际上是复制路径(而不是复制路径时)的问题我记录了宏)。

有人有任何建议吗?

2 个答案:

答案 0 :(得分:2)

设置对Word对象库的引用

<强> function recursive(n) { if(n <= 2) { return 1; } else { return recursive(n - 1) + recursive(n - 2); } }; console.log(1); console.log(recursive(42)) console.log(2);

Tools > References > add Word object Library

答案 1 :(得分:1)

非常感谢你的帮助,我真的很感激!所以我对你的代码稍作修改,试着让它粘贴到剪贴板上的任何内容。

我的新代码如下。我是否需要添加任何错误捕获?此外,明确的选项究竟做了什么?

Option Explicit
Sub Add_Hyperlinks()
   Dim olNameSpace As Outlook.NameSpace
   Dim wDoc As Word.Document
   Dim rngSel As Word.Selection
   Dim DataObj As MSForms.DataObject
   Set DataObj = New MSForms.DataObject
   DataObj.GetFromClipboard
If Application.ActiveInspector.EditorType = olEditorWord Then
    Set wDoc = Application.ActiveInspector.WordEditor ' use WordEditor
    Set olNameSpace = Application.Session
    Set rngSel = wDoc.Windows(1).Selection ' Current selection
    wDoc.Hyperlinks.Add rngSel.Range, _
    Address:=DataObj.GetText(1), TextToDisplay:="here"
End If
Set wDoc = Nothing
Set olNameSpace = Nothing
End Sub