VBA如何仅复制数值到另一区域?

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

数据源:需要将以下表格,以数值形式复制到另一工作表中:

提高了代码的辨识度,再也不用一行行的排版,方便快捷。

装了VBA代码助手(公众号主页回复 代码助手)后 直接输入 复制 也可以搜索代码块插入

  • 输入中文可以实现鼠标不离开代码窗口,快捷的查找代码。

Sheet6.Cells.Clear  '清空 sheet6 工作表的内容

Sheet1.Range("A1").CurrentRegion.Copy  'sheet1 工作表 A1 开始的连续区域 复制

Sheets("Sheet6").Range("A1").PasteSpecial Paste:=xlPasteValues

'选择性粘贴到:sheet6 工作表 A1 开始的位置   xlPasteValues: 仅复制数值

Application.CutCopyMode = False

★★★ 注意  缺点:会对系统造成干扰,覆盖原剪切版里的内容。

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

为了保证目标区域与源区域一致,一般使用 Resize 方法。

Sheet6.Cells.Clear '清空原 sheet6 工作表数据

With Sheet1.Range("A1").CurrentRegion     '位置语句开始

'位置语句开始,结束中间的代码, 只需在引用的位置前面加上  .  即可

行 = .Rows.Count   '该区域最大的行数

列 = .Columns.Count  '该区域最大的列数

Sheet6.Range("A1").Resize(行, 列) = .Value

'目标区域:  按源数据的最大行数,列数 扩展: 保证区域一致性

★★★ 注意  优点:不会对系统造成干扰,即不会覆盖原剪切版里的内容。与选择性粘贴结果一样。

(0)

相关推荐