2013-03-30 46 views
0

我想在VBA中为excel编写几行代码,这里是VB.Net版本的代码。VBA数组和操作符

  ThisVariable <<= 8 

     Variable.Add(ThisVariable) 

如何在VBA中编写这些代码行? VBA没有“< < =”运算符,并且没有数组的.Add属性。任何帮助将不胜感激。

回答

2

对于第一个问题,VBA没有内置位移功能,但是您可以添加一个可以帮您实现的功能。 Try this one.

对于第二个问题,要增加数组大小,必须使用ReDim命令。 Here's the info on that.

此外,您可以使用集合而不是数组。使用集合,您可以随意添加&删除项目。

好运

1

<<=左移位8位二进制数,即由256乘以数量增加一些到一个数组,你可以重新调暗阵列:

ThisVariable = ThisVariable * 256 
Dim U As Long 
Dim L As Long 
L = LBound (Variable) 
U = UBound (Variable) 
ReDim Preserve Variable (L To U+1) 
Variable (U+1) = ThisVariable 

注为了添加元素而重新设置数组效率并不高。您应该尝试找到另一种方法(例如,使用更大的数组并将“有效”元素的数量存储在计数器变量中 - 或者为此创建类模块)。