使用VBA粘贴时如何修复运行时错误1004

戴夫·库斯(Dave Cus)

我对VBA还是很陌生,所以这可能有点基础。我有一个宏,可从工作表“工作表”中复制一定范围的单元格,并将它们粘贴到工作表“ FCTC”中的活动行中。宏还会插入新行,因此新粘贴的信息不会覆盖任何现有数据。我认为我的问题是将范围复制到活动单元格参考粘贴,但是我不确定。我已经在下面发布了代码。任何帮助将不胜感激。

`Private Sub CommandButton1_Click()
Application.Goto ActiveWorkbook.Sheets("Working Sheet").Range("A1:AQ7")
    Selection.Copy
    Sheets("FCTC").Select
    ActiveCell.Offset(0, 7).EntireRow.Insert
    ActiveCell.Paste
End Sub

宏实际上可以工作并插入所需的数据,并根据需要将行向下移动。但是我得到了

运行时错误1004“ Range类的PasteSpecial方法失败”

结构显然存在问题,但我无法解决。

在运行宏之前

在宏后出现新的错误消息

ᴇʜ
  1. 不要使用.Select.Activate如何避免在Excel VBA中使用Select)。
  2. 例如,给红格命名PasteBeforeHere因此,用户无需手动选择此单元格。如果使用命名范围,则可以Range("PasteBeforeHere")轻松访问该单元格
  3. 然后在复制/粘贴之前先插入空行。

类似于以下内容的东西应该起作用:

Option Explicit

Private Sub CommandButton1_Click()
    Dim Source As Range
    Set Source = ThisWorkbook.Worksheets("Working Sheet").Range("A1:AQ7")

    Dim InsertBefore As Range
    Set InsertBefore = Selection 'better ThisWorkbook.Worksheets("FCTC").Range("PasteBeforeHere")
    Set InsertBefore = ThisWorkbook.Worksheets("FCTC").Range("PasteBeforeHere")

    'insert empty rows (same amount as source has)
    Application.CutCopyMode = False
    InsertBefore.Resize(RowSize:=Source.Rows.Count).EntireRow.Insert

    'copy from source to destination
    Source.Copy Destination:=InsertBefore.Offset(RowOffset:=-Source.Rows.Count)
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何修复VBA运行时错误1004或424

如何修复宏产生的运行时错误'1004'?

运行“粘贴”时,出现VBA运行时错误438

尝试插入公式时VBA运行时错误'1004'

尝试在单独的工作表中复制粘贴单元格时的VBA运行时错误1004

VBA运行时错误-粘贴值后尝试格式化或删除单元格时出现1004

Excel 使用 VBA 第二次尝试打印时出现运行时错误“1004”粘贴范围类的特殊方法失败

使用Excel-VBA宏从工作簿复制时出现运行时错误'1004'

Excel VBA运行时错误1004

VBA - 运行时错误“1004”

使用 MsgBox 时的运行时错误“1004”方法“OnTime”

使用动态数组时出现运行时错误 1004

为我的VBA复制和粘贴宏获取“运行时错误'1004'”

具有复制/粘贴功能时出现运行时错误1004

解决listobject粘贴特殊-运行时错误1004

如何修复运行时错误1004方法对象全局范围失败

如何修复运行时 1004:未找到单元格错误

VBA - 运行此代码时出现运行时错误“1004”

如何使用UIAlertController修复运行时错误

在Excel数据连接中使用VBA更改命令文本SQL时收到运行时错误(1004)

Excel VBA - 使用 .ModifyAppliesTo 和运行时错误 1004(尝试插入太长的字符串时出现问题?)

运行时错误'1004'

在单元格中插入值或公式时,Excel VBA运行时错误1004

重命名ActiveSheet时Excel VBA运行时错误1004

在Excel VBA中删除多个列时出现运行时错误1004

Excel VBA 运行时错误 1004 - ThisWorkbook.Connections

Excel VBA-运行时错误1004

Excel VBA宏出现运行时错误'1004'

在列中选择数据的VBA运行时错误1004