gpt4 book ai didi

excel - 为 Excel VBA 创建常量库的理想方法是什么?

转载 作者:行者123 更新时间:2023-12-04 19:55:12 26 4
gpt4 key购买 nike

我正在寻找创建用于结构计算的函数集合。我的想法是拥有一个模块或类似的模块,我可以导入到 Excel 工作簿中,并开始使用 VBA 中的函数来满足我可能需要的功能。

我最初需要做的事情是用数据常量定义一些标准变量。例如管道数据的集合:商业名称、内径、外径、每米重量等。这是一个常量库:工业管道都是相同的,并且不会随着时间的推移而发生太大变化。

在 VBA 中执行此操作的最佳方法是什么?最初我认为常规的旧公共(public)数组或字典可以做到这一点。有了字典,我可以做一些事情:

pipe_diameter = pipes("HSS100x100x3")

但是存在初始化问题。我会将管道数据放在模块内的代码中,但我必须记住在每段代码的开头调用 init_pipes 子函数,以便将数据加载到数组中并使其可用。

另外,我想我必须为每个管道参数创建一个字典:pipes_diameter、pipes_unitweight、pipes_sectionarea 等。编码听起来不太有趣。

所以继续前进,我想我可以上一堂管道课。然后做类似的事情:

Dim pipedata as pipes
pipe_diameter = pipes.innerdiam("HSS100x100x3")

所有相关数据都将存储在类模块内。加载模块,创建对象,然后您就可以获得可用的数据。我必须考虑如何组织类以使其能够实际检索并更新数据,但到目前为止,它看起来是最有前途的选择。

我是对的吗,还是有一种更简单的方法可以完成此任务,而不涉及 VBA 中的自定义类?

最佳答案

共享库工作簿的最佳方式是 Excel 的内置功能,称为“个人工作簿”。这是存储在 XLSTART 文件夹中的工作簿。

有一个计算机级 XLSTART 文件夹可供任何用户打开,这需要管理员来安装工作簿。对于普通用户,您只需将工作簿共享到其他用户的个人工作簿区域。

模式是这样的:

C:\Users\$USERNAME\AppData\Local\Microsoft\Excel\XLStart

既然您知道如何共享在 Excel 启动时自动打开的个人工作簿,您就可以设计您的解决方案了。

我建议将管道数据放入工作簿中工作表的表格中。然后,您可以将数据提取到您将向用户公开的任何 VBA 函数中。

这样,一旦代码稳定,就可以在不修改代码的情况下更改sheet中的底层数据。始终建议将数据和代码分开。

字典仅适用于键/值对。您想要为管道创建自定义类对象,其中包含需要从电子表格填充的所有字段。然后,您可以动态地将数据从工作表拉入管道对象的集合中。

Official Documentation

关于excel - 为 Excel VBA 创建常量库的理想方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66180330/

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