我在过去一小时左右的时间内对此进行了调查,并且无法弄明白。
Sub Paste1()
Dim NextRow As Range
Set NextRow = Range("A" & Sheets("AMCurrent").UsedRange.Rows.Count + 1)
AMPaste.Range("A3:F3").Copy
AMCurrent.Activate
NextRow.PasteSpecial Paste:=xlValues, Transpose:=False
Application.CutCopyMode = False
Set NextRow = Nothing
End Sub
获取"对象错误"在第4行," AMPaste.Range(" A3:F3")。复制"。不确定该怎么做。
任何帮助都将不胜感激。
谢谢。
答案 0 :(得分:0)
我假设您没有声明您的工作表,并且您使用了他们的名字而不是表格(" SheetName"),但我相信这可能是您的解决方案:
Sub Paste1()
Dim NextRow As Long
Dim wsPaste As Worksheet: Set wsPaste = Sheets("AMPaste")
Dim wsCurrent As Worksheet: Set wsCurrent = Sheets("AMCurrent")
NextRow = wsCurrent.Cells(wsCurrent.Rows.Count, "A").End(xlUp).Row + 1
wsPaste.Range("A3:F3").Copy
wsCurrent.Range("A" & NextRow).PasteSpecial Paste:=xlValues, Transpose:=False
Application.CutCopyMode = False
End Sub
答案 1 :(得分:0)
我有同样的问题。我的工作表名为“ tagsListSheet”,在脚本中,我有一个工作表变量也称为“ tagsListSheet”。我的产生您的错误的代码行看起来像:
Set wwTags = Range(tagsListSheet.Cells(2, 2), tagsListSheet.Cells(lastTagRow, 2))
当我更改工作表变量的名称时,它起作用了。
Set wwTags = Range(tagSheet.Cells(2, 2), tagSheet.Cells(lastTagRow, 2))