您如何使用vba插件并进行安装?

Cam*_*ziz 4 vb6 excel vba excel-vba

我已经编写了一个vba模块,该模块安装了一个插件按钮以实现excel。我想将其尽可能容易地部署在许多计算机上。目前,这些是我的步骤。

  1. 将Excel保存为* .xlsm
  2. 在我要安装的计算机上打开文档
  3. 将文档另存为扩展名(* .xlam),将其放置在addin文件夹中
  4. 转到选项>加载项>管理/转到>
  5. 单击我的添加复选框

有没有办法使这个过程自动化?在vb中写东西吗?

小智 5

您可以使用高级安装程序(免费版)之类的工具构建exe或msi安装程序。您可以做的一件事是将文件复制到特定位置,如果将其放在XLSTART文件夹中,则在启动Excel时该加载项将自动为用户加载。Excel程序文件目录中有一个免费文件夹,通常是这样的

C:\ Program Files(x86)\ Microsoft Office \ Office15 \ XLSTART

如果将xlam文件拖放到该文件夹​​中,它们也会默认加载。用户特定的选项是

C:\ Users [用户名] \ AppData \ Roaming \ Microsoft \ Excel \ XLSTART

两种型号都有优点/缺点。一种是所有用户都可以访问,或者仅安装用户即可。用户特定选项的好处是安装要求权限有限(无管理员权限)


var*_*bas 1

使用 VBA,您必须依赖 Office 文件(在本例中为 Excel 文件),并且无法移动到可执行文件/安装包。您可以创建一个程序(或宏)以自动方式执行您想要的步骤。但是,如果您想要依赖于用户可能执行的标准安装包(像往常一样,在安装程序时),则必须迁移到 VB.NET。

VB.NET 和 VBA 并没有太大的不同(嗯......实际上,VB.NET 包含更多的东西,但是“理解”大部分 VBA 代码)并且 VB.NET 对程序员非常友好;因此从 VBA 到 VB.NET 的转换不会花费您太长时间。在 VB.NET 中,您可以通过不同的方式与 Excel 进行交互;从您的问题中,我了解到您想要外接程序替代方案:它会生成一个自定义“安装包”,单击该包后,将在目标计算机中安装给定的 Excel 外接程序。依赖此选项很简单:在 Visual Studio 中(您需要 VS 才能使用 VB.NET),打开“新项目”,然后在 Visual Basic 模板中选择 Office(您的版本)和 Excel 加载项。

注意:我的 Mehow 提供了有用的链接:它指的是旧的 VS (2008),但从那时起事情并没有发生太大变化。

注 2:上述建议适用于 2008 年以来的任何收费 VS 版本。不确定免费版本(Express 版本)的支持。