3.2 引用默认文件夹
在 TestDefaultFldr()
中,我将 Fldr
设置为默认收件箱。常量 olFolderInbox
可以被其他值替换,从而可以访问任何默认文件夹。如果键入 Set Fldr = Session.GetDefaultFolder(
,VB 编辑器将显示所有可能值的下拉列表。
Sub TestDefaultFldr()
Dim Fldr As Folder
Set Fldr = Session.GetDefaultFolder(olFolderInbox)
Debug.Print Join(GetFldrNames(Fldr), "|")
End Sub
在我的笔记本电脑上,TestDefaultFldr()
显示了 Outlook data file|Inbox
,令人惊讶。我写了 GetFldrNames(Fldr)
以确保我引用的文件夹是我想要的文件夹。我访问了默认的收件箱,发现它是空的! 存储输出数据文件附带默认安装,我忽略了它,因为 Outlook 为我的每个电子邮件帐户创建了一个商店。只有在发现我的空默认收件箱之后,才考虑 Outlook 如何知道我的哪个电子邮件帐户是我想要的帐户作为默认帐户。在标准 Outlook 文件夹中,没有默认值或默认值在输出数据文件中。有可能更改哪个收件箱是默认收件箱但我没有调查,因为我不确定如果我更改了我的哪个电子邮件帐户我会默认。请记住所有日历项目,
大多数 Outlook 对象都具有 Parent
属性。GetFldrNames(Fldr)
在尝试访问其父级之前记录数组中文件夹的名称。它循环将名称添加到数组的末尾,直到它到达商店。商店没有父母,因此访问它的尝试失败。数组中的名称序列相反,然后返回给调用者。我使用 Join
将名字数组转换为可显示的字符串。