为什么我得到“运行时错误”424“:所需的对象”在Excel中使用VBA?

我正在用VBA写的一些代码。 我得到这个错误,但我不认为我错了,因为我写了一个非常相似的东西在另一个子。

Sub quicktest() Dim testrng As Range Set testrng = Sheet5.Range("J81") AddNewRecordsColumn testrng End Sub Sub AddNewRecordsColumn(bottomcell As Range) Dim copyrng, pasterng As Range Set copyrng = Sheet5.Range(Sheet5.Range("E3"), bottomcell) Set pasterng = Sheet5.Range(Sheet5.Range("D3"), bottomcell) pasterng.Value = copyrange.Value 'this is the line highlighted by debugger End Sub 

任何帮助将不胜感激!

在最后一行,突出显示的一个,复制范围不存在。 copyrng呢,差别不大。

 Dim copyrng, pasterng As Range 

由于数据types没有被指定为copyrng,所以它是一个变体。 对于变体使用Value2或使版权范围。

从Dim的帮助

type 可选 。 variables的数据types; 可以是Byte,Boolean,Integer,Long,Currency,Single,Double,Decimal(当前不支持),Date,String(对于可变长度string),String * length(对于固定长度string),Object,Variant用户定义的types或对象types。 对你声明的每个variables使用单独的Astypes子句