For循环运行时错误13

时间:2018-02-02 10:00:36

标签: excel vba excel-vba user-interface for-loop

我正在尝试在我的用户界面中使用组合框,但是如果没有任何选项对用户有好处,他们可以输入但是如果他们输入了我要保存的内容,那么下次它出现在名单。我尝试了以下方法:

For i = Range("O3") To Range("O3").End(xlDown)
    If Not i.Value = ComboType.Value Then
        Range("O3").End(xlDown) = ComboType.Value
    End If
Next i

但这会在第一行产生上述错误。我不太熟悉VBA中的For循环,所以我希望有人可以帮助我。

1 个答案:

答案 0 :(得分:1)

这是for-each循环从O3O3之后带有值的最后一个单元格的方法:

Public Sub TestMe()    
    Dim myCell  As Range  
    Dim ws      As Worksheet

    Set ws = Worsheets(1)
    With ws
        For Each myCell In .Range("O3", .Range("O3").End(xlDown))
            Debug.Print myCell.Address
        Next myCell    
    End with

End Sub

同样声明工作表也是一种好习惯,因为否则您将始终使用ActiveSheet的{​​{1}}。