10个用户需要能够在Excel中运行相同的macros

我有一个服务器驻留在Excelmacros

在10个不同的工作站上将有大约10个用户需要在自己的工作表上运行这个macros。

我如何从多个用户谁想要在自己的工作表上运行它从一个集中的位置运行macros?

我需要它集中的原因是因为macros需要不断更新,我们不能让它驻留在本地,因为那样会有10个不同的实例

作为下面的答案之一,也许一个插件是要走的路? 如果我创build一个加载项,它将如何知道有一个macros更新? 我需要每次更新macros时分发加载项吗?

如果用户打开其工作簿并打开“服务器工作簿”,则在“打开macros进入”下拉列表中select“所有打开的工作簿”后,在“视图” – >“macros”对话框中可以使用macros。

但是,我认为有三个潜在的问题:

1-如果两个工作簿在两个不同的Excel实例中打开,则每个工作簿将不显示其他macros。

2-服务器工作簿中的macros需要足够聪明才能在其他工作簿上操作。 很可能需要提示用户input正确的工作簿和/或工作表。

3-您可能会收到远程macros执行的安全警告。 (不知道这个)

我可能会创build一个加载macros封装我的macros,并将其安装在远程用户的机器上,以便他们可以单击button执行本地。

根据编辑进行更新
您的加载项应能够远程获取新代码以更新其执行的macros。 例如,像这样的东西。 这可能是一个矫枉过正的解决scheme。

我会考虑让每个用户的工作簿包含您需要它们运行的​​macros,然后每个用户可以在他们的机器上本地调用它。

否则,只需创build一个共享工作簿,并让所有用户使用该工作簿。

这实际上取决于工作簿将被使用的情况以及你想要完成的工作。 如果你能提供更多的细节,我可以更具体地帮助你。

如果您的问题是确保人们使用最新的macros,您可能需要查看VSTO。 其中一个好处是您可以使用ClickOnce进行部署,其中包括允许您在一个位置发布代码,并在发生更改时自动下载和更新用户的代码。