Excel VBA,运行时错误'-2147417848(80010108)和#x27;:方法';插入';对象的';范围';失败
我有一个非常简单的代码,只需复制一列并插入它。但偶尔运行宏会导致上述运行时错误和Excel崩溃 我希望有人能告诉我我做错了什么Excel VBA,运行时错误'-2147417848(80010108)和#x27;:方法';插入';对象的';范围';失败,excel,vba,Excel,Vba,我有一个非常简单的代码,只需复制一列并插入它。但偶尔运行宏会导致上述运行时错误和Excel崩溃 我希望有人能告诉我我做错了什么 Sub PushOutAWeek() Dim ws As Worksheet Dim rng As Range Set ws = ThisWorkbook.ActiveSheet With ws Set rng = .Columns(ActiveCell.Column) rng.Copy
Sub PushOutAWeek()
Dim ws As Worksheet
Dim rng As Range
Set ws = ThisWorkbook.ActiveSheet
With ws
Set rng = .Columns(ActiveCell.Column)
rng.Copy
rng.Insert xlShiftToRight
End With
Application.Calculate
End Sub
当我单击“调试”时,它会突出显示问题所在的以下行:
rng.Insert xlShiftToRight
我正在插入新列的数据的屏幕截图:
我认为这可能有效:设置范围时可能出现错误,此代码将避免它
Sub PushOutAWeek()
With ThisWorkbook.ActiveSheet
.Columns(ActiveCell.Column).Copy
.Columns(ActiveCell.Column).Insert xlShiftToRight
End With
Application.Calculate
End Sub
我认为这可能会起作用:在设置范围时可能会出现错误,此代码将避免它
Sub PushOutAWeek()
With ThisWorkbook.ActiveSheet
.Columns(ActiveCell.Column).Copy
.Columns(ActiveCell.Column).Insert xlShiftToRight
End With
Application.Calculate
End Sub
您能否将数据的屏幕截图粘贴到您遇到此错误的位置,因为代码本身应该可以正常工作。@Mikku我已添加了上面屏幕截图的链接。您在哪一列上收到错误?是否有错误。没有一致性。宏可以正常运行几天,然后它会给我一个运行时错误,我必须重新启动Excel才能使事情再次正常工作。我认为这与类似,但我的VBA不够好,无法知道如何修复代码。你能在遇到此错误的地方粘贴数据的屏幕截图吗,因为代码是,它应该可以正常工作。@Mikku我在上面的截图中添加了一个链接。你在哪一列上得到了错误?任何一列。没有一致性。宏可以完美地运行几天,然后它会给我一个运行时错误,我将不得不重新启动Excel以使事情再次正常工作。我认为它与类似,但我的VBA不够好,无法知道如何修复代码。这一切都可以工作,但由于我无法控制运行时错误何时发生,我无法确定。如果有任何变化,我将更新此线程。再次感谢@Mikku!当然没有问题。。。。如果您在一段时间内没有遇到任何错误,请接受它作为答案:)恐怕它又发生了,运行时错误。Debug说这是
.Columns(ActiveCell.Column)。插入xlShiftToRight
行然后您需要共享工作表并告诉我它发生在哪一行。否则,我看不出如何识别问题。这一切都是可行的,但由于我无法控制运行时错误何时发生,我无法确定。如果有任何变化,我将更新此线程。再次感谢@Mikku!当然没有问题。。。。如果您在一段时间内没有遇到任何错误,请接受它作为答案:)恐怕它又发生了,运行时错误。Debug说这是.Columns(ActiveCell.Column)。插入xlShiftToRight
行然后您需要共享工作表并告诉我它发生在哪一行。否则,我看不出如何识别问题。