我总是读到,一旦我完成它们,建议将对象设置为空.但我通常只在表单内的函数中使用它们.
在保留功能范围时,是否丢失了引用并释放了内存,而不管将对象设置为Nothing?
即是否真的有必要这样做:
Set db = Nothing
Set record_set = Nothing
Run Code Online (Sandbox Code Playgroud) 我从VB中学到的很多东西都是从静态代码分析(特别是Aivosto的项目分析器)中学到的.它检查的一件事是你是否清除了所有对象和数组.我曾经盲目地这样做,因为PA这么说.但是现在我对VB释放资源的方式了解得更多,在我看来,这些事情应该自动发生.这是VB6之前的遗留功能,还是有理由将对象显式设置为空,并在阵列上使用Erase?
我正在尝试编写一个宏,该宏的一部分的反应有所不同,具体取决于它是直接从工作表中的按钮调用还是从另一个宏间接调用。我还希望能够让它根据其他宏的调用而做出不同的反应
在这种情况下,如果宏是通过按钮手动激活的,或者如果它已由特定的其他宏运行,则会弹出一个消息框,让用户知道它已成功完成,但如果相同的宏由另一个宏,那么我想跳过这一步。
有办法做到这一点吗?
我有一些遗留的Excel文件,包含大量对存储过程和数据库连接的调用,所有这些都是以记录集的旧方式完成的...
因为在VBA中没有try-catch的概念 - 最终在.NET中有什么最佳实践可以应用于拥有更加可靠的数据访问层?我想有一个很好的例子,说明如何打开连接,执行需要一些参数的存储过程,然后在任何情况下成功或错误,关闭连接并释放资源.
我没有读过太多关于它的内容,但是下面链接的作者建议我不要使用"冒泡"来集中VBA中的错误处理.
但我不确定他为什么这么推荐,而且他没有真正解释.
有人能告诉我为什么我应该在每个程序中使用错误处理而不是使用"冒泡"吗?或者至少,你知道为什么作者说不?
谢谢.