gpt4 book ai didi

excel - VBA 架构技巧 - 宏封装

转载 作者:行者123 更新时间:2023-12-04 20:47:59 27 4
gpt4 key购买 nike

我为 Excel 编写了一个概念证明以从数据库中获取数据,并且需要将其打包以便分发给我们的客户。我的第一次尝试只是将我所有的代码放入一个代码模块中,但是在 Excel 中我可以看到宏列表中的所有模块,而我真的只想要列表中的主要模块。我猜我需要将不直接运行的子例程移动到类模块中,以便隐藏它们。是否有其他关于如何打包宏代码以便更简单、更安全地提供给客户的提示?

最佳答案

Sub 是否隐藏在宏列表中取决于它的范围(例如公共(public)、私有(private))。如果您将 Sub 设为私有(private),它将不会列在 Macros 列表中。

'This sub is public
Public Sub myPublicSub()
MsgBox "hello world"
End Sub

'This sub is also public
Sub mySub()
MsgBox "hello world"
End Sub

'This sub is private
Private Sub myPrivateSub()
MsgBox "hello world"
End Sub

类模块用于创建类,这些类可能对您的解决方案没有用处或没有必要(如果代码按照您现在想要的方式运行)。

如果这是针对客户的,我强烈建议将其打包为 .xlam(Excel 2007+ 插件)并学习如何自定义功能区以包含宏按钮。宏列表不是特别有用。 (参见 http://openxmldeveloper.org/archive/2006/05/25/CustomUIeditor.aspx 获取文章底部的免费功能区 xml 编辑器“附件”。参见 http://www.rondebruin.nl/ribbon.htm 获取一些教程)

为了保护您的代码不被查看/窃取,可以对 VBA 项目进行密码保护,但这不应被视为坚如磐石的保护。

关于excel - VBA 架构技巧 - 宏封装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5236814/

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