Excel VBA代码返回一个运行时错误;这赢得了';因为它会移动工作表上表格中的单元格,所以不起作用;
我正在编写一些VBA代码。我正在尝试复制行并将其插入所选行的下方。不幸的是,它一直在提示: 运行时错误1004:这不起作用,因为它会移动工作表中的单元格 代码:Excel VBA代码返回一个运行时错误;这赢得了';因为它会移动工作表上表格中的单元格,所以不起作用;,excel,vba,Excel,Vba,我正在编写一些VBA代码。我正在尝试复制行并将其插入所选行的下方。不幸的是,它一直在提示: 运行时错误1004:这不起作用,因为它会移动工作表中的单元格 代码: 我可以尝试解决什么问题?Ret.Insert Shift:=xlDown应该是Ret.EntireRow.Insert Shift:=xlDown。您正在复制行,但未插入行。您也可以按如下所示使用梅花 If Not Ret Is Nothing Then With Ret.EntireRow .Copy
我可以尝试解决什么问题?
Ret.Insert Shift:=xlDown
应该是Ret.EntireRow.Insert Shift:=xlDown
。您正在复制行,但未插入行。您也可以按如下所示使用梅花
If Not Ret Is Nothing Then
With Ret.EntireRow
.Copy
DoEvents '<~~ Give excel time (If reqd by Excel) to copy and place it in clipboard
.Insert Shift:=xlDown
End With
End If
在行动中
嗨,西德哈特,谢谢你的建议。不幸的是,在应用代码之后,问题仍然存在。问题在于。插入移位:=xlDown。VBA似乎不允许excel添加行。另外,这是一张受保护的纸。我不确定这是否重要。我已经用截图和新代码更新了我的帖子。您可能需要刷新页面才能看到它。我理解问题所在。请稍等,编辑我的答案
If Not Ret Is Nothing Then
With Ret.EntireRow
.Copy
DoEvents '<~~ Give excel time (If reqd by Excel) to copy and place it in clipboard
.Insert Shift:=xlDown
End With
End If
If Not Ret Is Nothing Then
Ret.Offset(1).Insert
Ret.EntireRow.Copy Ret.Offset(1)
End If