如何复制数据到另一工作表的vba代码最好?

请教各位vba高手 :
我想将sheet1的 A1:B5 的单元格内容 复制到 sheet2的B4:E8中 如何写代码最好?
本人是新手 只知道用 = 和 for 循环 赋值 不知道 有什么好命令 可以使代码更短 和 速度更快?
感谢1楼的答案 忘记补充说明 可能由于我sheet2的格式设置和 公式的问题 用粘贴的话 会提示出错!

用vba写代码,执行的结果是sheet1表内单元格的数据被复制到了sheet2表内。

既然如此,就是说明没有公式引用的复制要求。

这样就可以用复制+选择性粘贴,
复制同平时一样,粘贴时,在B4单元格选中后,右键,有选择性粘贴,
选择数值。因为没有公式引用,故此法功能同写vba一样。

如果有格式等问题,此法不可,那么vba法亦不可。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-28
sheet1.Range("A1:B5").Copy
sheet2.Range("B4:E8").PasteSpecial Paste:=xlPasteValues '值粘贴 数值

-----------
只粘贴 数值,而且由于区域不同(列数增多),增加的列数将用A1:B5循环填充本回答被网友采纳
第2个回答  2010-07-14
sheet1.Range("A1:B5").Copy
sheet2.Range("B4:E8").PasteSpecial Paste:=xlPasteValues '值粘贴 数值

-----------
只粘贴 数值,而且由于区域不同(列数增多),增加的列数将用A1:B5循环填充本回答被提问者采纳
第3个回答  2010-07-04
解决办法:
1复制粘贴过去。复制遇到公式的时候,可以通过代码将其转化为数值格式,再粘贴过去就ok了。
2如果是需要调用表2的话,尽量通过直接调用表1的变量即可。。
这个好象一般都是应用for循环。要不燃根据实际情况尽量采用excel的函数就可以提高效率。
第4个回答  2010-07-04
你会录制宏吗?录制一个宏就能得到代码了。
Sub Macro1()
Sheets("Sheet1").Range("A1:B5").Copy
Sheets("Sheet2").Select
Range("B4").Select
ActiveSheet.Paste
End Sub
相似回答