gpt4 book ai didi

excel - 打包和分发 Excel 应用程序的最佳方式是什么

转载 作者:行者123 更新时间:2023-12-02 12:53:15 25 4
gpt4 key购买 nike

我编写了一个基于 Excel 的数据库报告工具。目前,所有 VBA 代码都与单个 XLS 文件关联。用户通过单击工具栏上的按钮来生成报告。不幸的是,除非用户以其他文件名保存文件,否则所有报告的数据都会被删除。

当我在 Word 中创建类似的工具时,我可以将所有代码放入模板 (.dot) 文件中并从那里调用它。如果我将模板文件放在 Office 启动文件夹中,则每次启动 Word 时都会启动该模板文件。有没有类似的方法,在 Excel 中打包和分发我的代码?我尝试过使用加载项,但没有找到从应用程序窗口调用代码的方法。

最佳答案

只需将您的代码移至 Excel 插件 (XLA) - 该插件会在启动时加载(假设它位于 %AppData%\Microsoft\Excel\XLSTART 文件夹中),但如果它是插件,而不是工作簿,则只有您的宏并加载定义的启动函数。

如果函数依赖于电子表格本身,那么您可能需要使用模板和插件的组合。

我正在分发这样的应用程序的一部分,我们有 Word、Excel 和 Powerpoint(XLA、PPA、DOT)以及 Office 2007“功能区”版本(DOTM、XLAM 和 PPAM)的插件

插件启动代码会创建工具栏按钮(如果找不到),这意味着在任何工作簿/文档/等中,他们只需点击工具栏按钮即可运行我们的代码(我们有两个操作按钮和一个显示设置的按钮)对话框)

模板并不是 VBA 代码真正的最佳选择,插件绝对是最佳选择...

因此,为了在启动时加载工具栏,我们使用类似..(检查工具栏是否存在 - 代码将为每个打开的工作表运行,但工具栏对于用户 session 而言是持久的)

Public Sub Workbook_Open()
' startup code / add toolbar / load saved settings, etc.
End Sub

希望有帮助:)

关于excel - 打包和分发 Excel 应用程序的最佳方式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com