VBA入门必须 如何复制粘贴单元格区域

本技巧的目的:掌握复制,粘贴的各种方法。

1. 代码助手

代码助手下载地址 http://excel880.com/blog/archives/11297

  • 输入中文:选择性 + 空格,即可以实现弹出代码,快速输入代码的目的。也可以自己收录自己所需代码,方便下次快速调用。

2. 复制单元格区域到另外一个区域

  • 指定区域复制到另外一个区域:

  • 代码如下:

  • Sub 单元格复制()

  • Application.DisplayAlerts = False '关闭提示对话框

  • Sheet8.Range("A1").CurrentRegion.Copy Sheet8.[I1] '复制, 粘贴

  • Application.DisplayAlerts = True '打开提示对话框

  • End Sub

  • 注释:

  • ★★★ 注意: 关闭提示对话框后一定要在最后打开提示对话框,否则以后所有EXCEL中进行的操作都不会弹出提示对话框!!!

  • 将 A1 开始的连续区域 复制到 I1 开始的位置

  • 运行后:

  • 复制完成

3. 选择性粘贴

  • 录制宏的方法:

  • 1) 开发工具-录制宏

  • 2) 复制后,选择性粘贴

  • 3)选择:值和数字格式

  • 4)停止录制宏

  • 5)查看代码:

  • 修改代码为:

  • 选择性粘贴参数:

  • 以下参数均为可选是否输入项

  • Paste:

  • xlPasteAll :粘贴全部内容。

  • xlPasteAllExceptBorders:粘贴除边框外的全部内容。

  • xlPasteColumnWidths:粘贴复制的列宽。

  • xlPasteComments:粘贴批注。

  • xlPasteFormats:粘贴复制格式。

  • xlPasteFormulas:粘贴公式。

  • xlPasteFormulasAndNumberFormats:粘贴公式和数字格式。

  • xlPasteValidation:粘贴有效性验证公式。

  • xlPasteValues:粘贴值。

  • xlPasteValuesAndNumberFormats :粘贴值和数字格式。

  • Operation:

  • xlPasteSpecialOperationAdd: 复制的数据与目标单元格中的值 相加。

  • 如:D3 开始区域复制 到 H3 开始区域中, D3 开始的区域 与 H3 区域的值 相加

  • 选择性粘贴 选择 相加项 后结果:

  • xlPasteSpecialOperationDivide: 复制的数据 除以 目标单元格中的值。

  • xlPasteSpecialOperationMultiply: 复制的数据 乘以 目标单元格中的值。

  • xlPasteSpecialOperationNone: 粘贴操作中不执行任何计算。

  • xlPasteSpecialOperationSubtract: 复制的数据 减去 目标单元格中的值。

  • SkipBlanks 是否将剪贴板上区域中的空白单元格粘贴到目标区域中 True:不粘贴 默认值为 False:粘贴

  • Transpose 是否转置行和列 True:转置 默认值为 False:不转置

  • 运行以下公式:

  • 复制区域改成动态区域

  • Dim n

  • Dim sht As Worksheet

  • Set sht = Sheet8 '设置变量: sheet8 工作表

  • n = sht.Range("a" & Rows.Count).End(xlUp).Row '最大行

  • sht.Range("A2:F" & n).Copy

  • '复制区域 本段为动态区域, 根据最大行的变化会自动变更区域

  • sht.Range("J2").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _

  • xlNone, SkipBlanks:=False, Transpose:=False '选择性粘贴: 值和数字格式

  • sht.Range("J2").PasteSpecial Paste:=xlPasteColumnWidths, Operation:= _

  • xlNone, SkipBlanks:=False, Transpose:=False '选择性粘贴: 列宽

  • Application.CutCopyMode = False '取消复制虚线框

  • 运行后:

  • 修改成:选择性粘贴格式后,结果如下:

  • 选择性粘贴的每个参数会有不同的结果,都可以逐一测试一下。

(0)

相关推荐