我应该何时将VBA代码从表单模块移动到单独的模块?

Che*_*lle 5 ms-access ms-access-2007 access-vba

我有很多实例,我从一个基本子表单开始,然后我有3个其他子表单构建在它上面,每个子表单添加一些不同的基本子元素.这意味着我有一个每个子表单的代码页,有很多重复.是否可以将公共元素放入单独的模块中,并且只在其代码页上留下与每个子表单相关的附加代码?这有什么性能问题吗?

Han*_*sUp 1

关于你问题的最后一部分,“这有性能问题吗?

我知道有两个后果:

  1. 表单加载时间
  2. 内存使用

作为一个假设的示例,假设您有一个带有选项卡控件的表单。该选项卡控件包含 10 个页面,每个页面包含一个子窗体。如果这些子窗体包含相同 VBA 代码的副本,则必须为每个子窗体再次加载该公共代码。这需要时间并增加内存使用。

如果将公共代码移至标准模块并从子表单引用它,则只需加载一次......减少表单加载时间和内存消耗。

因此,最终结果是您正在考虑的方法可以使您的应用程序响应更快......这可能会导致更满意的用户。

然而,即使这种方法没有产生明显的性能改进,我仍然会这样做,因为这意味着您只需要维护通用代码的一份副本。