请教各位vba高手 :
我想将sheet1的 A1:B5 的单元格内容 复制到 sheet2的B4:E8中 如何写代码最好?
本人是新手 只知道用 = 和 for 循环 赋值 不知道 有什么好命令 可以使代码更短 和 速度更快?
感谢1楼的答案 忘记补充说明 可能由于我sheet2的格式设置和 公式的问题 用粘贴的话 会提示出错!
如何复制数据到另一工作表的vba代码最好?
答案:6 悬赏:70 手机版
解决时间 2021-02-14 14:56
- 提问者网友:美人性情
- 2021-02-13 18:23
最佳答案
- 五星知识达人网友:狂恋
- 2021-02-13 19:04
sheet1.Range("A1:B5").Copy
sheet2.Range("B4:E8").PasteSpecial Paste:=xlPasteValues '值粘贴 数值
-----------
只粘贴 数值,而且由于区域不同(列数增多),增加的列数将用A1:B5循环填充
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编程
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯