请问:
1、Access中。
2、窗体中有90个TextBox控件。
3、我在VBA中想用循环来将这90个TextBox分别置值。类似如下:
for i=0 to 89
me.controls(i)=arr(i) '注:arr(90)是已定义且已赋值的数组
next i
请教如何写这段代码?(我用me.controls(i)时提示出错)
1、Access中。
2、窗体中有90个TextBox控件。
3、我在VBA中想用循环来将这90个TextBox分别置值。类似如下:
for i=0 to 89
me.controls(i)=arr(i) '注:arr(90)是已定义且已赋值的数组
next i
请教如何写这段代码?(我用me.controls(i)时提示出错)
arr(0) = "0"
arr(1) = "1"
arr(2) = "2"
Dim cc As Control
For Each cc In Me.Controls
If UCase(TypeName(cc)) = "TEXTBOX" Then
cc.Text = arr(cc.Index)
End If
Next
你有90个也是一样处理,反正你之前设好了arr数组,要确定arr数组与TEXTBOX的索引Index相对应。
Dim a(1) As String
a(0) = "myh"
a(1) = "gyp"
j = 0
For i = 0 To Me.Controls.Count - 1
If TypeName(Me.Controls(i)) = "textbox" Then
Me.Controls(i).SetFocus
Me.Controls(i).Text = a(j)
j = j + 1
End If
Next i
对象不支持该属性和方法
cc.Text = arr(cc.Index)2、用 myhgyp(也许是这样的,信不信由你) 的方法可行。不过如果要锁定数据的话就要在写数据之前先令locked=false,写完后再令locked=true进行锁定。
那么arr数组与TEXTBOX的索引Index相对应的意思就是:
TEXTBOX(0) = arr(0)
TEXTBOX(1) = arr(1)
TEXTBOX(2) = arr(2)
TEXTBOX(3) = arr(3)
TEXTBOX(4) = arr(4)
.
.
.
如果你的TEXTBOX不是一个控件数组cc.index就会出现你上面的提示