为VBA中的多个子例程设置等于0的变量

时间:2016-07-18 19:45:09

标签: vba excel-vba variables subroutine excel

我试图在每次运行sub之前使用一个集合来设置等于0的变量。我有一堆指标作为单独的子程序,对于每个子程序,我将变量声明为long,然后将它们全部设置为等于0,然后让它们从他们需要的任何数据中提取。我希望每次都不必将它们设置为等于0,而是在开始时将它们设置为相等,或者不必将它们放在每个子程序中,但我是不清楚如何做到这一点。我尝试了这段代码,但我不知道它是否是远程正确的或者放在哪里:

Dim myVars As Collection
Set myVars = New Collection
Dim j As Variant
myVars.Add a
myVars.Add b
myVars.Add c
myVars.Add d
myVars.Add e


For j = 1 To myVars.Count
myVars(j) = 0
Next j

1 个答案:

答案 0 :(得分:3)

如果您将变量声明为数字类型(例如LongIntegerByteDoubleSingle),那么它们就是自动分配值为0。

在任何情况下,你最好使用强类型变量,这样就可以避免使用集合或使变量在范围内变为全局变量。