image.png

本技巧的目的:掌握仅仅复制数值到另一单元格区域中的方法。

  • 数据源:需要将以下表格,以数值形式复制到另一工作表中:
  • 技巧008 仅复制数值到另一区域 - 图3
  • 复制后的结果:
  • 技巧008 仅复制数值到另一区域 - 图4

    1. 使用代码助手

    1. 代码助手下载地址 [http://excel880.com/blog/archives/11297](http://excel880.com/blog/archives/11297)
  • 双击TAB键可实现快速排版。

  • 排版前:
  • 技巧008 仅复制数值到另一区域 - 图5
  • 排版后:
  • 技巧008 仅复制数值到另一区域 - 图6
  • 提高了代码的辨识度,再也不用一行行的排版,方便快捷。
  • 直接在代码区 输入 复制+空格 即可以实现代码窗口的快速输入菜单:
  • 技巧008 仅复制数值到另一区域 - 图7
  • 实现鼠标不离开代码窗口,快捷的查找代码。

    2. 选择性粘贴

  • 首先可以使用录制宏的方法:

  • 技巧008 仅复制数值到另一区域 - 图8
  • 技巧008 仅复制数值到另一区域 - 图9
  • 停止录制宏以后,得到以下代码:
  • 技巧008 仅复制数值到另一区域 - 图10
  • 修改宏代码的内容:更改代码名称,增加辨识度
  • 技巧008 仅复制数值到另一区域 - 图11
  • Sheet6.Cells.Clear ‘清空 sheet6 工作表的内容
  • Sheet1.Range(“A1”).CurrentRegion.Copy ‘sheet1 工作表 A1 开始的连续区域 复制
  • Sheets(“Sheet6”).Range(“A1”).PasteSpecial Paste:=xlPasteValues
  • ‘选择性粘贴到: sheet6 工作表 A1 开始的位置 xlPasteValues: 仅复制数值
  • 运行以上语句后的结果:
  • sheet1 工作表:
  • 技巧008 仅复制数值到另一区域 - 图12
  • sheet6 工作表:
  • 技巧008 仅复制数值到另一区域 - 图13
  • Application.CutCopyMode = False
  • ‘去掉上面复制的虚线框
  • 技巧008 仅复制数值到另一区域 - 图14
  • ★★★ 注意 缺点: 会对系统造成干扰,覆盖原剪切版里的内容。

    3. 使用 Value 属性直接赋值

  • 只要源区域大小和目标区域大小一致, 就可以直接以 .Value 方法赋值。

  • 为了保证目标区域与源区域一致,一般使用 Resize 方法。
  • 代码如下:
  • 技巧008 仅复制数值到另一区域 - 图15
  • Sheet6.Cells.Clear ‘清空原 sheet6 工作表数据
  • Dim 行, 列 ‘定义行,列 变量
  • With Sheet1.Range(“A1”).CurrentRegion ‘位置语句开始
  • ‘位置语句开始,结束中间的代码, 只需在引用的位置前面加上 . 即可
  • ‘源数据区域: A1开始的连续区域
  • 行 = .Rows.Count ‘该区域最大的行数
  • 列 = .Columns.Count ‘该区域最大的列数
  • Sheet6.Range(“A1”).Resize(行, 列) = .Value
  • ‘目标区域: 按源数据的最大行数,列数 扩展: 保证区域一致性
  • ‘源数据赋值: .Value
  • End With ‘位置语句结束
  • 结果:
  • 技巧008 仅复制数值到另一区域 - 图16
  • ★★★ 注意 优点: 不会对系统造成干扰,即不会覆盖原剪切版里的内容。与选择性粘贴结果一样。

    更多作品请百度搜索 郑广学

    VBA代码助手 懒人神器 在 EXCEL880.COM 官网下载