我有一个VBA脚本,用于在Outlook中的选定文件夹中记录未读电子邮件 . 目前,帐户和文件夹名称已硬编码到脚本中,但我想使其可以从其中一个Excel工作表进行配置 .
目前变量设置在这里:
Set inboxselect = GetObject(, "Outlook.Application").GetNameSpace("MAPI").Folders("mailbox@companyname.com").Folders("Inbox").Folders("SubInbox")
理想情况下,我想要一张名为Config的工作表,其数据如下:
Account: mailbox@companyname.com
Folder: Inbox
Subfolder: Subfolder
然后在VBA脚本中引用它,但是我无法理解如何将单元格引用传递给变量 . 我试过了:
inboxselect = GetObject(, "Outlook.Application").GetNameSpace("MAPI").Folders(Worksheets("Config").Range("B1")).Folders("Inbox").Folders("SubInbox")
但它给出了类型错误匹配错误 .
是否有人能够提供有关如何做到这一点的任何信息?
1 回答
您尝试传递给GetObject()函数的变量是字符串 .
您可以在Excel工作表上使用命名单元格,例如如果单元格A1包含“mailbox@company.com”这个单元格的名称(使用名称管理器或只是覆盖窗口左上角的单元格引用) .
在vba中,您可以使用引用您的命名单元格
同样适用于其他变量 .