导出visual basic outlook项目并添加到其他outlook账户

Export visual basic outlook project and add it to other outlook account

我在 Outlook VB 中创建了两个宏,我想将它们传递给我工作的其他人。是否可以在不将代码单独复制到每个帐户的情况下执行此操作?有没有办法导出我的项目(或我的模块)并将其导入另一个帐户,以便自动添加我编写的宏?

我的另一个选择是是否可以在使用 Outlook 命名空间的 C# 编写的小程序(即控制台应用程序)中完成。

如果您正在开发打算分发给多个人的解决方案,您应该将 VBA 代码转换为 Outlook COM 或 VSTO 加载项或 Office 加载项外表。但是,开发插件通常比创建短宏需要更多的编程知识。如果您的 VBA 项目相对简单,并且没有太多人必须使用它,您可能希望将代码连同设置说明一起分发。

最简单的解决方案是右键单击 ThisOutlookSession 并选择 Export File。您需要为 Project.

中的每个模块(如果有的话)做

与其他 Microsoft Office 程序不同,Outlook 一次仅支持一个 VBA 项目。 VBA 宏存储在名为 VbaProject.OTM 的文件中。此文件是产品存储文件,不用于分发。 Outlook 不提供管理 OTM 文件的直接方法。 Outlook VBA 代码不是为部署或分发而设计的。它专为个人宏开发环境而设计。项目 Project1 始终可用并与程序相关联。无法在 Visual Basic 编辑器中添加另一个项目。

项目 1 在您的硬盘上作为 VbaProject.otm 存储在以下文件夹中:

<Drive>:\Users\<LogonName>\AppData\Roaming\Microsoft\Outlook

如果您想开始一个新的 VBA 项目,理论上您可以导出所有现有的模块和表单。但这通常不是一种现实的方法。相反,请按照以下步骤操作:

  1. 退出 Outlook。
  2. 在指示的路径中找到您的 VbaProject.otm 文件。
  3. 将文件重命名为对您有意义的名称,例如 VbaProject-testing.otm.
  4. 重新启动 Outlook。

因为 Outlook 找不到现有的项目文件,Visual Basic 编辑器从一个新项目开始。当您保存对项目的更改时,Outlook 会在文件夹中创建一个新的 VbaProject.otm 文件。如果要在项目间切换,在上一步的基础上再增加一步(如第4步):

  1. 退出 Outlook。
  2. 找到您的 VbaProject.otm 文件。
  3. 将文件重命名为对您有意义的名称,例如 VbaProject-testing.otm.
  4. 将您现在要使用的文件的名称恢复为 VbaProject.otm
  5. 重新启动 Outlook。

如果要将 VBA 项目从一台计算机移动到另一台计算机,请首先确定 Outlook 在每台计算机上存储 VbaProject.otm 文件的位置。然后,将 OTM 文件从一台计算机复制到另一台计算机,并确保将其放入正确的文件夹中。当您重新启动 Outlook 时,程序将找到 VbaProject.otm 文件并使用它。

您可能会发现 How to backup and save your Outlook VBA macros 文章有帮助。