excel - 复制一行,然后在其上方插入新行

标签 excel vba error-handling

我有一个宏填充工作簿,该工作簿已经工作了好几个月,现在当用户使用一个宏时,我得到了错误(excel无法使用可用资源完成此任务)。一旦退出错误,我就会收到错误(运行时错误“1004”:范围类的插入方法失败)

我应该补充一件事。在我收到此错误之前,给另一个用户该错误(没有足够的内存来完成此操作。请尝试使用较少的数据或关闭其他应用程序。要增加内存的可用性,请考虑...。)

宏的基础是在第6行的上方插入一行。我在网上看了一下,但找不到有效的解决方案。我认为这不是导致问题的代码,因为如果不使用宏就无法插入行。

Sub NewData()

    Worksheets("Log").Rows(6).Select
    Selection.Copy
    Selection.Insert Shift:=xlUp

    Application.CutCopyMode = False
    Selection.ClearContents

    Application.Worksheets("Log").Range("N6").Select


End Sub

最佳答案

设置范围,然后使用offset(-1,0)在其上方插入一行。尝试这样的事情:

Sub insertaboverow()

    Dim rng As Range
    Set rng = Range("N6")

    If Not rng.Cells(1, 1) Is Nothing Then
        rng.Cells(1, 1).Offset(-1, 0).Rows.Insert   
    End If
End Sub

关于excel - 复制一行,然后在其上方插入新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58071060/

相关文章:

excel - 插件 - 此工作簿当前被另一个工作簿引用,无法关闭

Excel 宏 - 过多的行延续

vba - 将多行文本框值与 Excel 行值进行比较,然后在 textbox2 中输出相同的值

php - 面对文件获取html错误

java - 如何使用jsp浏览mysql数据库表中的文件存储excel的数据

html - 复制粘贴下拉数据从excel到 Angular Material 表(或导入excel)并将其转换为下拉

windows - 安装 32 位和 64 位客户端时,获取 MS Office 2013(32 位)Excel 和 Access 以连接到 Oracle 数据库

r - R : Leaving out undefined columns when subsetting a dataframe

for-loop - 为什么此代码卡住了并且不起作用(javascript)

php - 如何在php phpspreadsheet中使用excel sum公式?