说明:
Cells.Offset(0,1).PasteSpecial
这会给Error 1004
因为Cells
指整个片范围,也没有办法为你弥补它。
Cells(hotcell).Copy
这会给你的Error 5
如果hotcell
值不是数字。
我认为Cells
只接受数字参数,如果您使用上述语法。
如何使用细胞:(Excel 2007和高达版本)
1。定义R,C的语法:将细胞(ROWNUMBER,得到columnnumber)
Cells(1,1) 'refers to Range("A1")
Cells(1,2) 'refers to Range("B1")
Cells(2,1) 'refers to Range("A2")
2.使用一个号码只
Cells(1) 'refers to Range("A1")
Cells(2) 'refers to RAnge("B1") and so on
Cells(16385) 'refers to Range("A2")
3,采用细胞仅
Cells.Copy 'copies the whole range in a sheet
Cells.Resize(1,1).Copy 'copies Range("A1")
Cells.Resize(1,1).Offset(0,1).Copy 'copies Range("B1")
Cells.Resize(2,1).Copy 'copies Range("A1:A2")
四,使用数字和字母(这只适用于单元格(RowNum,ColNum)语法)
Cells(1, "A").Copy 'obviously copies A1
Cells(1, "A").Resize(2).Copy 'copies A1:A2
现在,如何复制和粘贴。
假设你要复制A1:A5并粘贴到下一列是B.
Cells.Resize(5,1).Copy Cells.Resize(5,1).Offset(0,1)
以上会工作,因为你Resize
的Cells
首先你做Offset
之前。
A1:A5的值现在将被复制到B1:B5。
希望这可以帮助你。
来源
2013-12-10 06:00:20
L42
欢迎!这不是一个答案,只是一个评论:当一个简单的'Cells(R1,C1).Value = Cells(R2,C2).Value'可以更好,更快地完成工作时,通常初学者会尝试复制和粘贴。这对你有用吗? – stenci
当你使用'Cells'时,你指的是一张纸的整个'Range',并且你无法使用'Offset',因为没有地方可以抵消。所以你会得到错误'1004'。要了解如何复制和粘贴的方法,请参阅BK201的帖子。它应该让你开始。 – L42
另外,我很好奇你的代码中“hotcell”的值是多少。 'Cells'我认为接受数字参数。如果'hotcel'的值不是一个数值,你会得到'错误5'。看到我的帖子的完整说明 – L42