【发布时间】:2017-04-18 21:03:07
【问题描述】:
谁能告诉我如何使用 Excel VBA 将 Microsoft Outlook 与 Microsoft Excel 链接起来,以便过滤具有特定主题的邮件,然后在该邮件中将特定数据导入到特定的 Excel 单元格中。
【问题讨论】:
谁能告诉我如何使用 Excel VBA 将 Microsoft Outlook 与 Microsoft Excel 链接起来,以便过滤具有特定主题的邮件,然后在该邮件中将特定数据导入到特定的 Excel 单元格中。
【问题讨论】:
这是我过去使用过的代码。您需要更新一些内容,例如工作表名称和 Outlook 文件夹。请通读代码并尝试弄清楚它在做什么。
Sub PullOutlookData()
Application.ScreenUpdating = False
Dim olApp As Outlook.Application, olNs As Outlook.Namespace
Dim olItems As Outlook.Items
Dim olItem As Outlook.MailItem
Dim ws As Worksheet
Dim lrow As Long
Set olApp = New Outlook.Application
Set olNs = olApp.GetNamespace("MAPI")
Set ws = ThisWorkbook.Sheets("Complex") '<--- change to relevant worksheet
Set olItems = olNs.Folders("steven.walker@myemail.com").Folders("Inbox").Folders("Travel").Items '<---CHANGE TO RELEVANT FOLDER
rCount = 1
For Each olItem In olItems
rCount = rCount + 1
ws.Range("A" & rCount).Value = olItem.SenderName
ws.Range("B" & rCount).Value = olItem.Subject
ws.Range("C" & rCount).Value = olItem.Body
ws.Range("D" & rCount).Value = olItem.ReceivedTime
Next olItem
ws.UsedRange.WrapText = False
Application.ScreenUpdating = True
End Sub
【讨论】: