Arrays 声明数组中多个元素的属性
因此,在初始化阵列时,可以使用:Arrays 声明数组中多个元素的属性,arrays,vba,excel,variable-declaration,Arrays,Vba,Excel,Variable Declaration,因此,在初始化阵列时,可以使用: Dim array(0 to 9) As Integer 我想做的是能够这样声明值: array(0 to 4) = 1 array(0) = 1 array(1) = 1 array(2) = 1 array(3) = 1 array(4) = 1 Dim a As Variant a = Array(1, 1, 1, 1, 1, 1, 1, 1, 1) 但这是错误的。那么,有没有简单的方法可以做到这一点,而不必为每个元素编写声明行,如下所示: arr
Dim array(0 to 9) As Integer
我想做的是能够这样声明值:
array(0 to 4) = 1
array(0) = 1
array(1) = 1
array(2) = 1
array(3) = 1
array(4) = 1
Dim a As Variant
a = Array(1, 1, 1, 1, 1, 1, 1, 1, 1)
但这是错误的。那么,有没有简单的方法可以做到这一点,而不必为每个元素编写声明行,如下所示:
array(0 to 4) = 1
array(0) = 1
array(1) = 1
array(2) = 1
array(3) = 1
array(4) = 1
Dim a As Variant
a = Array(1, 1, 1, 1, 1, 1, 1, 1, 1)
这只是一个一般性的查询,是否存在简化此类过程的语法。
我的具体需求大致如下:
Sub test()
Dim cb(0 to 74) As CheckBox
Dim I As Integer
For I = 0 To UBound(cb)
cb(I) = Worksheets("SheetName").CheckBoxes(I)
Next I
cb(0 to 6).Enabled = True
cb(7 to 74).Enabled = False
End Sub
我将使用此代码启用/禁用表单上的不同复选框组,我不希望每次都单独声明所有75个复选框组。不,我不认为要避免循环
for i=0 to 4
array(i)=1
next i
不,我不认为要避免一个循环
for i=0 to 4
array(i)=1
next i
Dim作为变量,然后按如下方式为其分配数组:
array(0 to 4) = 1
array(0) = 1
array(1) = 1
array(2) = 1
array(3) = 1
array(4) = 1
Dim a As Variant
a = Array(1, 1, 1, 1, 1, 1, 1, 1, 1)
Dim作为变量,然后按如下方式为其分配数组:
array(0 to 4) = 1
array(0) = 1
array(1) = 1
array(2) = 1
array(3) = 1
array(4) = 1
Dim a As Variant
a = Array(1, 1, 1, 1, 1, 1, 1, 1, 1)
循环是必要的,但只需在实例化对象数组时处理布尔计算:
For I = 0 To UBound(cb)
Set cb(I) = Worksheets("SheetName").CheckBoxes(I)
cb(I).Enabled = (I <= 6)
Next I
I=0至UBound(cb)的
设置cb(I)=工作表(“图纸名称”)。复选框(I)
cb(I).Enabled=(I循环是必需的,但只需在实例化对象数组时处理布尔计算:
For I = 0 To UBound(cb)
Set cb(I) = Worksheets("SheetName").CheckBoxes(I)
cb(I).Enabled = (I <= 6)
Next I
I=0至UBound(cb)的
设置cb(I)=工作表(“图纸名称”)。复选框(I)
cb(I).已启用=(仅供参考:Dim array
是一个编译错误。是的,它只是一个用于任何数组名称的泛化器。仅供参考:Dim array
是一个编译错误。是的,它只是一个用于任何数组名称的泛化器。是的,for循环足够小和简单,这可能是我必须做的。我只希望vb的语法更灵活。for循环很小很简单,这可能是我必须要做的。我只是希望vb的语法更灵活。非常好,我忽略了这么简单的解决方案,真是太愚蠢了。非常感谢。非常好,我忽略了这么简单的解决方案,真是太愚蠢了。非常感谢。