在循环VBA中创建组合框

在循环VBA中创建组合框,vba,Vba,嘿,伙计们,我想在按下命令按钮时创建一定数量的组合框。我不知道怎么做,所以我真的很感激你的帮助。这是我创建的代码: Private Sub CommandButton1_Click() Dim AttPoints As Integer, Result As String Range("E1:Z4").ClearContents AttPoints = Range("B2").Value If AttPoints = 0 Then Result =

嘿,伙计们,我想在按下命令按钮时创建一定数量的组合框。我不知道怎么做,所以我真的很感激你的帮助。这是我创建的代码:

Private Sub CommandButton1_Click()
    Dim AttPoints As Integer, Result As String
    Range("E1:Z4").ClearContents
    AttPoints = Range("B2").Value

    If AttPoints = 0 Then
        Result = "You have selected 0 AttPoints!"

    ElseIf AttPoints < 0 Then
        Result = "You have selected a negative amount of AttPoints!"

    ElseIf AttPoints > 0 Then
        Dim i As Integer
        For i = 5 To (AttPoints + 4)
        Cells(1, i).Value = "Attachment point:" & (i - 4)
        Next i

    End If
    Range("A1") = Result
End Sub
Private子命令按钮1\u单击()
Dim AttPoints为整数,结果为字符串
范围(“E1:Z4”).ClearContents
AttPoints=范围(“B2”).值
如果AttPoints=0,则
结果=“您已选择0个加分!”
如果其他ATTEIF点小于0,则
结果=“您选择了负值的点数!”
否则,如果AttPoints>0,则
作为整数的Dim i
对于i=5至(加点+4)
单元格(1,i).Value=“附着点:”&(i-4)
接下来我
如果结束
范围(“A1”)=结果
端接头
在for循环中,我创建了一行单元格,其中放置了文本附着点。 在这些文本下,我想要与图片中相同数量的组合框


在循环中添加以下代码

Private Sub CommandButton1_Click()

    ...

    Shapes.AddOLEObject ClassType:="Forms.Combobox.1", _
    Left:=Cells(2, i).Left, Top:=Cells(2, i).Top, _
    Width:=Cells(2, i).Width, Height:=Cells(2, i).Height * 2

    ...

End Sub

这将产生您想要的结果。

谢谢!我还应该包括私有子命令-ButnOn1CLIKE()部分?不,只需要在循环中的中间包含3行即可。如果您的问题得到解决,请接受上述答案作为解决方案。