Vba 循环以在用户窗体中创建选项按钮不起作用

Vba 循环以在用户窗体中创建选项按钮不起作用,vba,userform,radio-button,Vba,Userform,Radio Button,我需要在Userform中创建几个选项按钮(每个按钮对应一个数组元素) 我是不是遗漏了什么?因为它返回一个错误 DefaultTop = 60 For X = 0 To UBound(ArrPlants) Set Jonas(x) = SAPPlants.Controls.Add("Forms.optionbutton.1", Y, True) 'Error on the above line ^^^ With Jonas(x)

我需要在Userform中创建几个选项按钮(每个按钮对应一个数组元素)

我是不是遗漏了什么?因为它返回一个错误

DefaultTop = 60

For X = 0 To UBound(ArrPlants)

    Set Jonas(x) = SAPPlants.Controls.Add("Forms.optionbutton.1", Y, True)
      'Error on the above line ^^^

        With Jonas(x)
            .Top = DefaultTop + 20
            .Left = 12
            .Caption = ArrPlants(x)
        End With

 Next X
错误:

错误预期子程序或过程


您需要将
X
传递到选项按钮的名称中,而不是使用
Jonas(X)
。试试下面的方法,看看它是如何为您服务的:

DefaultTop = 60

Dim Jonas as OptionButton

For X = 0 To UBound(ArrPlants)

    Set Jonas = SAPPlants.Controls.Add("Forms.optionbutton." & X + 1, Y, True)

        With Jonas
            .Top = DefaultTop + 20
            .Left = 12
            .Caption = ArrPlants(X)
        End With

 Next X
进一步解释:


哪一行抛出错误以及错误是什么?行集合Jonas(x)=SAPPlants.Controls.Add(“Forms.optionbutton.1”,Y,True)错误预期子或过程如何定义变量类型方面的Jonas?