Outlook从超链接下载文件

时间:2015-07-20 12:54:35

标签: vba hyperlink outlook outlook-vba outlook-2013

我正在寻找一些帮助来自动完成我每天要做几次的任务。

我收到来自某个地址的电子邮件,我会自动将其(使用规则)排序到专用文件夹中。

这些电子邮件包含指向要从网上下载的文档的超链接;但是链接不是作为URL写的,而是有一个链接说"下载所有文件"。

我单击此链接,它会打开URL,该URL是所有文档的zip文件。然后我将这个zip文件以某种命名格式保存到某个文件夹中。

我希望自动化这个过程。这是一个非常繁琐的任务,因为我收到了很多这样的电子邮件,并且重命名它们需要时间,因为默认名称包含非法字符。

我以前做过一些编程,但在VBA(Excel)中只做了一点,从不用于Outlook。

我已经在论坛中搜索了类似的问题,看来我可以使用URLDownloadToFile函数(例如UrlDownloadToFile in Access 2010 - Sub or Function not Defined);但是我需要将URL传递给该功能,而且我不知道如何将其从电子邮件中删除,因为它不包含在电子邮件正文中。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

网址位于超链接中。 https://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.hyperlink_members.aspx

Sub HyperlinkAddress()

Dim msg As Object
Dim oDoc As Object
Dim h As Object

Set msg = ActiveInspector.currentItem

If msg.GetInspector.EditorType = olEditorWord Then

    Set oDoc = msg.GetInspector.WordEditor

    For Each h In oDoc.Hyperlinks
        Debug.Print "Displayed text: " & h.TextToDisplay & vbCr & " - Address: " & h.Address
        'h.Follow
    Next

End If

Set msg = Nothing
Set oDoc = Nothing
Set h = Nothing

End Sub