Vba Visual Basic-变量名称自动递增/循环

Vba Visual Basic-变量名称自动递增/循环,vba,variables,Vba,Variables,当我想这样做时,有没有办法: textbox1.text = x + i textbox2.text = x + i textbox3.text = x + i 比如这样做 for l = 0 to 2 textbox(l) = x + i next 假设这些控件位于userform中,请执行以下操作: Private Sub FillTextboxes() Dim i As Long Dim x As Long x = 10

当我想这样做时,有没有办法:

textbox1.text = x + i  
textbox2.text = x + i  
textbox3.text = x + i  
比如这样做

for l = 0 to 2   
  textbox(l) = x + i  
next  

假设这些控件位于userform中,请执行以下操作:

Private Sub FillTextboxes()
    Dim i As Long
    Dim x As Long

    x = 10
    For i = 0 To 2
        Me.Controls("textbox" & i + 1).Text = x + i
    Next i
End Sub

欢迎来到堆栈溢出。请不要在回答部分询问后续问题。编辑您的问题或在我的答案中添加注释。我很高兴我的回答对你原来的问题有用。我没有使用PictureBox控件,因此不确定问题出在哪里。我注意到的一件事是,在
ImagemPictureBox
中有一个额外的“m”,我想。我想它应该是
ImagePictureBox.Picture
。是的,我有一个“m”,因为这是一个变量,因为我是葡萄牙语,所以->Imagem=Image xd为什么要使用
Long
s?那似乎。。。过度的。(你也不必事先申报
i
。@minitech根据:VBA将所有整数值转换为Long类型,即使它们被声明为integer类型。因此,使用整数变量不再有性能优势;事实上,长变量可能会稍微快一些,因为VBA不必转换它们,“除非你认为这是.Net。你为什么要缩进我的代码。那似乎。。。挑剔的。2在
中对于i=0到2来说意味着什么?它通常的意思是:1到3之间的整数。想详细说明一下吗?假设我有5个文本框,我应该用5个替换2个吗?很抱歉让你感到困惑。。。