打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
第十一讲 在复制单元格区域时,如何仅复制数值
大家好,今日继续给大家讲解VBA代码解决方案的第11讲:在复制单元格区域时,如何仅复制单元格区域的数值。
在上一讲中讲了利用VBA代码完成复制粘贴,今天我们继续这个话题。在上一讲中我们讲了选择性粘贴的利用,今日我们就利用上一讲中的PasteSpecial来解决只粘贴数值的方法,同时还会给大家介绍一种更为直接的方案。

1  使用选择性粘贴PasteSpecial

使用选择性粘贴功能并指定粘贴数值,如下面的代码所示。
  Sub mynz_11_1() '第11讲 在复制单元格区域时,如何仅复制单元格区域的数值
   Sheets("6").Range("A1").CurrentRegion.Copy '复制到剪切板中
   Sheets("11").Range("A1").PasteSpecial Paste:=xlPasteValues '选择性粘贴剪贴板中数值
   Application.CutCopyMode = False '取消应用程序复制模式
End Sub
代码解析:上述过程复制工作表Sheets("6")中A1单元格的当前区域的数值到工作表Sheets("11").的A1单元格所在区域中。
1)第2行代码将Sheets("6")中A1单元格的当前区域进行复制。
2)第3行代码使用选择性粘贴功能并指定粘贴数值,选择性粘贴数值仅复制了单元格区域的数值,单元格区域的格式(背景颜色、字体对齐格式和边框等)不会被复制。

2  直接赋值的方法

除了使用上述Copy方法外,还可以使用直接赋值的方法,这种方法比较简单,可以节省内存的应用,如下面的代码所示。
Sub mynz_11_2() '第11讲 在复制单元格区域时,如何仅复制单元格区域的数值
 With Sheets("6").Range("A1").CurrentRegion
   Sheets("11").Range("A1").Resize(.Rows.Count, .Columns.Count).Value = .Value '选择性粘贴剪贴板中数值
 End With
End
代码解析:上述过程将工作表Sheets("6")中的A1单元格的当前区域的数值赋予工作表Sheets("11")的A1单元格所在的单元格区域。
l在对单元格区域直接赋值时,应保证源区域大小与目标区域的大小一致,如果源区域为动态的单元格区域,可使用Resize方法确定目标区域。

我们看看上面方法的实例截图:
运行结果:

今日内容回向:
1  语句Sheets("11").Range("A1").PasteSpecial Paste:=xlPasteValues的意义是什么?
2  语句Sheets("11").Range("A1").Resize(.Rows.Count, .Columns.Count).Value = .Value的意义是什么?
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
多表汇总每个公司的地址、纳税人识别号和开户行及账号
Excel VBA技巧 复制粘贴保留行高列宽等所有格式的方法
VBA粘贴2只数值选定区域
VBA操作单元格对象有哪些常用语句?
【VBA】一键选择性粘贴所有页签,让公式全部消失
VBA学习笔记之粘贴方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服