使用Outlook VBA向Excel工作表添加超链接

时间:2013-09-28 22:19:33

标签: vba excel-vba outlook excel

我收到大量带附件的电子邮件。需要保存附件,编辑以添加引用(以编程方式),记录新的引用号,并将保存的附件转发给各种收件人。我已经在outlook vba中使用了所有这些工作但是,为了使审计更容易,我需要在包含新添加的参考编号的日志中的单元格中添加超链接,以便我可以快速导航到新保存的文件。

我彻底搜查但没有快乐,并尝试过:

        With LogObj.Sheets("Log")
        .Hyperlinks.Add Anchor:=LogObj.Sheets("Log").Cells(LastOrderRow, 3), Address:="",   SubAddress:= _
            "SavePath", TextToDisplay:=LogObj.Sheets("Log").Cells(LastOrderRow, 3)
        End With

我试过了:

        LogObj.Sheets("Log").Cells(LastOrderRow, 3) = _
        WorksheetFunction.Hyperlink(savePath, LogObj.Sheets("Log").Cells(LastOrderRow, 3))

绝望中我试着写文字:

        OrderRef = "LogObj.Sheets("Log").Cells(LastOrderRow, 3)"
        LogObj.Sheets("Log").Cells(LastOrderRow, 3) = _
        WorksheetFunction.Hyperlink(""" & SavePath & """, OrderRef)

以及上面的许多变化,包括添加application.worksheetfunction。

如果有人知道使用outlook vba在excel中执行此操作的正确语法,我将非常感激,如果他们分享它。

非常感谢。

涅瓦

1 个答案:

答案 0 :(得分:1)

文件的路径应该放在地址中。这对我有用。确保你的路径有效。

With LogObj.Sheets("Log")
    Set rNext = .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
    rNext.Value = lReference
    .Hyperlinks.Add Anchor:=rNext, Address:=sSavePath, TextToDisplay:=CStr(lReference)
End With