Vba 部署Outlook用户表单

Vba 部署Outlook用户表单,vba,outlook,Vba,Outlook,我制作了一个用户表单分发给同事 安装过程大致如下: 允许未签名的宏 打开VB编辑器 通过手动导航到.ocx/.tlb文件添加2个引用(Treeview控件需要) 进口表格 创建一个新模块 将过程复制到该模块中(按钮的钩子,基本上包含MyForm.Show) 运行另一个过程来创建工具栏按钮 保存,重新启动 我的计划是制作一个安装脚本;但我发现Outlook的VBProject是密封的,不允许任何自动访问 如何使安装过程更简单?如microsoft在此处所述: 如果您正在开发一个要分发给多人的

我制作了一个用户表单分发给同事

安装过程大致如下:

  • 允许未签名的宏
  • 打开VB编辑器
  • 通过手动导航到.ocx/.tlb文件添加2个引用(Treeview控件需要)
  • 进口表格
  • 创建一个新模块
  • 将过程复制到该模块中(按钮的钩子,基本上包含MyForm.Show)
  • 运行另一个过程来创建工具栏按钮
  • 保存,重新启动
我的计划是制作一个安装脚本;但我发现Outlook的VBProject是密封的,不允许任何自动访问


如何使安装过程更简单?

如microsoft在此处所述:

如果您正在开发一个要分发给多人的解决方案,则应将VBA代码转换为Outlook COM或VSTO加载项或Outlook Office加载项

Outlook宏不是为部署而设计的,因此将它们部署到用户时总会遇到问题,因为用户需要执行过多的操作(如您所述)

为了避免这种情况,我建议您查看VSTO加载项并单击一次。以下是链接:

VSTO

单击一次部署


VB6 COM加载项可能会解决您的问题,而且安装起来肯定会更容易。哇,您是如何遇到我多年来的问题的?无论如何,这正是我最终得到的结果(COM addin是用C#编写的)。从那以后一直运行良好。哈哈,我自己正在从VBA转向VSTO加载项,所以我遵循您的步骤!我以为有一天它会帮助某人。。。我可以问您如何部署解决方案吗?ClickOnce?.exe文件驻留在网络共享上。。。。刚开始时,它会显示“独立”的形式。有一个命令行开关“/install”、“/uninstall”使其能够(取消)自行安装(即复制到AppData并写入注册表项)。。。非常感谢。