首页 > 解决方案 > Do While 循环运行时错误 1004 在第二次通过

问题描述

我正在尝试遍历 activex 复选框。如果选中该复选框,则需要将信息从该行移动到不同的工作表(子 COMPLETE),然后将下面的行向上移动。我在 Set cb 中第二次收到运行时错误 1004。我怎样才能解决这个问题?

Private Sub cmbupdate_Click()
Dim i As Long
Dim cb As Object


i = 1
Do While i < 99
    Set cb = ActiveSheet.OLEObjects("CheckBox" & i).Object
    If cb.Value = True Then
        Range("A" & (i + 3), "K" & (i + 3)).Select
        Selection.Copy
        COMPLETE
        Selection.ClearContents
        Range("A" & (i + 3)).Select

        ActiveCell.Offset(1).Select
        Orders.Range(Selection, Selection.Offset(, 10)).Select
        Orders.Range(Selection, Selection.End(xlDown)).Select
        Selection.Cut Range("A" & (i + 3))
        Range("A5", "K101").Select
        AddBorder
        Range("A4").Select
        cb.Value = False
        i = i
    Else
        i = i + 1
    End If
Loop

End Sub

标签: excelvba

解决方案


推荐阅读