永发信息网

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

答案:6  悬赏:70  手机版
解决时间 2021-02-14 14:56
  • 提问者网友:美人性情
  • 2021-02-13 18:23
请教各位vba高手 :
我想将sheet1的 A1:B5 的单元格内容 复制到 sheet2的B4:E8中 如何写代码最好?
本人是新手 只知道用 = 和 for 循环 赋值 不知道 有什么好命令 可以使代码更短 和 速度更快?
感谢1楼的答案 忘记补充说明 可能由于我sheet2的格式设置和 公式的问题 用粘贴的话 会提示出错!
最佳答案
  • 五星知识达人网友:狂恋
  • 2021-02-13 19:04
sheet1.Range("A1:B5").Copy
sheet2.Range("B4:E8").PasteSpecial Paste:=xlPasteValues '值粘贴 数值

-----------
只粘贴 数值,而且由于区域不同(列数增多),增加的列数将用A1:B5循环填充
全部回答
  • 1楼网友:枭雄戏美人
  • 2021-02-13 22:55
解决办法: 1复制粘贴过去。复制遇到公式的时候,可以通过代码将其转化为数值格式,再粘贴过去就ok了。 2如果是需要调用表2的话,尽量通过直接调用表1的变量即可。。 这个好象一般都是应用for循环。要不燃根据实际情况尽量采用excel的函数就可以提高效率。
  • 2楼网友:往事隔山水
  • 2021-02-13 21:54
用vba写代码,执行的结果是sheet1表内单元格的数据被复制到了sheet2表内。 既然如此,就是说明没有公式引用的复制要求。 这样就可以用复制+选择性粘贴, 复制同平时一样,粘贴时,在B4单元格选中后,右键,有选择性粘贴, 选择数值。因为没有公式引用,故此法功能同写vba一样。 如果有格式等问题,此法不可,那么vba法亦不可。
  • 3楼网友:青灯有味
  • 2021-02-13 21:19
sheet1.Range("A1:B5").Copy sheet2.Range("B4:E8").PasteSpecial Paste:=xlPasteValues '值粘贴 数值 ----------- 只粘贴 数值,而且由于区域不同(列数增多),增加的列数将用A1:B5循环填充
  • 4楼网友:白昼之月
  • 2021-02-13 19:52
你会录制宏吗?录制一个宏就能得到代码了。 Sub Macro1() Sheets("Sheet1").Range("A1:B5").Copy Sheets("Sheet2").Select Range("B4").Select ActiveSheet.Paste End Sub
  • 5楼网友:神的生死簿
  • 2021-02-13 19:33
选中合并单元格的数值,复制。在选中另一张表要放数值的地方,单击右键,选,选择性粘贴,在选,数值.确定 这样就只粘贴了数值不会粘贴格式,你另一张表的格式不会变 选中这些合并单元格,右键,复制; 到另一张工作表,选中同样大小的单元格区域,右键,粘贴。 方法很多的。 (1)利用高级筛选,将记录筛出来,放在本工作表内,然后复制到别的工作表。这方法相对简单。 (2)如果数据量少,可以利用函数。 (3)透视表或者vba编程
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯