2013-09-28 184 views
0

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

我已经彻底搜查,但没有喜悦,并尝试:

 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

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

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 
+0

+1我认为OP的问题是插入一个带有空/空字符串“地址”参数的超链接。 [这是* required *参数](http://msdn.microsoft.com/en-us/library/office/ff822490.aspx),并且插入空字符串满足要求时,它不可能产生理想结果。 –

+0

谢谢迪克,它的功能就像一个魅力。并感谢@DavidZemens的建议。 – Nevasadie