Excel 加载项配置变量并保存

Excel Add-In Configure Variables and Save

有人要求我创建一个 Excel 加载项,以便人们将一系列 xml 文档从 Excel 加载到 Excel 电子表格中。我会写一个加载项并发布它的位置,供人们下载自己的本地副本使用。理想情况下,我希望每个最终用户都可以为 VBA 配置一些常量,以自定义他们的体验和功能。

我认为最好有一个按钮 运行 插件和另一个名为 "Configure" 之类的按钮,它可以编辑 VBA,并保存新值,以便下次用户打开 Excel 时,加载项仍为它们配置。这样的事情有可能吗?您对我到达那里应该遵循的路径有什么建议吗?

有没有办法让变量持久化?我想我需要将这些值保存在插件的本地版本中的某处,但如果是这样,存储一组参数的最佳方式是什么?

非常欢迎任何一般性建议;我还没有真正编写插件,还在设计阶段。

我不建议使用单元格来存储设置,因为用户可能会自行设置。

但是 VBA 支持注册表编辑。

SaveSetting "Macro name", "Settings", "Username", "John Doe"

以上代码将在名为 Macro name 的应用程序名称和 Settings 部分中保存名为 Username 的设置或注册表项,名称为 John Doe

所以简而言之,您只需在保存新设置时更改最后两个字符串即可。前两个应该(为了方便您)始终保持相同。

密钥将存储在:HCU\Software\VB 和 VBA 程序 Settings\Your 应用名称\

要获取您使用的设置:

GetSetting("Macro name", "Settings", "Username")

另一个解决方案是使用 txt 文件。
它仍然比细胞好,但不如上面提到的注册表。

settings = "Username=John Doe, Worktitle=Janitor"
MyFile = "C:\myapp\settings.txt"
fnum = FreeFile()
Open MyFile For Output As #fnum
Print #fnum, settings
Close #fnum

现在您有一个包含您可以读取和解析的设置的 txt 文件。