对象“范围”的方法“插入”失败错误

时间:2018-11-22 03:04:34

标签: excel vba excel-vba

我写了一段简短的代码,打算双击电子表格上的“ +”号,它应该复制“ +”号所在的整行,并在该行的正下方插入新行。完全一样

如果在将任何文本添加到工作表之前尝试添加一行,则没有问题。但是,如果我添加文本,甚至没有添加到我要复制的行,然后尝试添加一行,我都会得到

  

“对象'Range'的方法'Insert'失败”

错误,即使我在复制前已删除了文本。插入本身似乎确实发生了,但是只是触发了一个错误。但是,如果我先使用Delete行,甚至不删除带有文本的行,代码就可以正常工作。调试Cells(Target.Row + 1, 1).EntireRow.Insert部分似乎是问题所在。

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

ActiveSheet.Unprotect Password:=strPwd

If ActiveCell.Column = 3 And Target.Value = "+" Then
    Target.EntireRow.Copy
    Cells(Target.Row + 1, 1).EntireRow.Insert
    Cells(Target.Row + 1, 1).EntireRow.Select

    For Each Cell In Selection
        If Cell.Interior.Color = 13434879 Then
            Cell.ClearContents
        ElseIf Cell.Interior.Color = Black Then
            Cell.ClearContents
        End If
    Next

    Cells(Target.Row + 1, 4).Select
    Application.CutCopyMode = False

ElseIf ActiveCell.Column = 2 And Target.Value = "-" Then

    Target.EntireRow.Select
    Target.EntireRow.Delete
    Cells(3, 4).Select

End If

ActiveSheet.Protect Password:=strPwd, UserInterfaceOnly:=True

End Sub

任何帮助将不胜感激。乐意在需要时提供更多信息。

0 个答案:

没有答案