2016-02-23 58 views
-4

是否有可能在vba中声明(自动)变量并且数量在增加? 我要暗淡50个变量,像VAR1直到Var50 是否有可能用VBA代码在vba中声明(自动)变量

我所有的努力(下次使用串连)没有工作

结果应该是;

Dim Var1 as integer Dim Var2 as integer 。 。 昏暗Var50作为整数

+0

你想使用一个数组设置的值。 'Dim Var(1 ro 50)as integer',那么你可以像'Var(1)= 23'那样使用它,等等。 –

+5

为了爱这个世界上最好的一切,请不要这样做。 **使用有意义的名称**,如果您需要'SomeMeaningfulName'的50个值,则使用一个数组,例如'SomeMeaningfulName(0至49)As Integer'。不要称之为'Var',给它一个名字,告诉谁在维护那个代码(将来你?)这些值用于什么。如果他们完全不相关,那么做一个'Type'并给每个人一个有意义的名字。然后再感谢你自己(例如*是Sheet4的列宽!$ A:$ F再次存储在var23或var47中?*) –

回答

3

使用

Dim Var(1 to 50) as integer 

然后,你可以为每个像这样

Var(1) = 1 
Var(2) = 2 
Var(3) = 3 
Var(4) = 4 
Var(5) = 5 
Var(6) = 6 
Var(7) = 7 
Var(8) = 8 
Var(9) = 9 
Var(10) = 10 
Var(11) = 11 
Var(12) = 12 
Var(13) = 13 
Var(14) = 14 
Var(15) = 15 
Var(16) = 16 
Var(17) = 17 
Var(18) = 18 
Var(19) = 19 
Var(20) = 20 
Var(21) = 21 
Var(22) = 22 
Var(23) = 23 
Var(24) = 24 
Var(25) = 25 
Var(26) = 26 
Var(27) = 27 
Var(28) = 28 
Var(29) = 29 
Var(30) = 30 
Var(31) = 31 
Var(32) = 32 
Var(33) = 33 
Var(34) = 34 
Var(35) = 35 
Var(36) = 36 
Var(37) = 37 
Var(38) = 38 
Var(39) = 39 
Var(40) = 40 
Var(41) = 41 
Var(42) = 42 
Var(43) = 43 
Var(44) = 44 
Var(45) = 45 
Var(46) = 46 
Var(47) = 47 
Var(48) = 48 
Var(49) = 49 
Var(50) = 50 
+0

用隐式下限声明的数组是基于零的,除非指定了Option Base 1 ,如果'Option Base 1 * *'没有被指定,这会使得显式边界'(1到50)'可能会引起混淆。 –

+0

请使用循环来指定这些! –

+0

我们该怎么做@Tim Williams? –