有没有办法创建到Outlook文件夹的Excel数据连接?

时间:2018-01-06 02:09:13

标签: excel ms-access outlook

有没有办法创建与导出Outlook文件夹内容的数据连接?

目前,我使用Microsoft Access将Outlook文件夹导入数据库,然后将其导出到.csv文件。

是否可以保存几个步骤并让Excel直接导入数据?

1 个答案:

答案 0 :(得分:0)

您可以使用Access OLEDB提供程序创建记录集,然后将其导入工作表。

请参阅以下示例代码

Public Sub ADOOutlook()
    Dim conn As Object
    Set conn = CreateObject("ADODB.Connection")
    conn.Open "Provider=Microsoft.JET.OLEDB.4.0;Outlook 9.0;MAPILEVEL=%email-address%|;PROFILE=Outlook;TABLETYPE=0;TABLENAME=Inbox;COLSETVERSION=12.0;DATABASE=C:\Users\%username%\AppData\Local\Temp\"
    Dim rs As Object
    Set rs = conn.Execute("SELECT * FROM Inbox;")
    Cells(1, 1).CopyFromRecordset rs
End Sub

将%username%替换为您的用户名(或选择其他临时位置),并将%email-address%替换为您的邮件帐户。

请注意,此代码取决于您的Outlook设置。您可以通过在访问链接表时链接所需的outlook文件夹,然后使用CurrentDb.TableDefs("MyLinkedTable").Connect打印连接字符串(将Provider=Microsoft.JET.OLEDB.4.0;附加到其开头)来生成您自己的连接字符串。