vba与选择性粘贴的结合使用

选择性粘贴是电子表格,通过如下的方法,你可以实现用VBA来操作选择性粘贴的功能。

一、语法

PasteSpecial 方法

解释:将剪贴板中的 Range 对象粘贴到指定区域中。

语法:expression.PasteSpecial(Paste, Operation, SkipBlanks, Transpose)

expression   必需。该表达式返回一个 Range 对象。

Paste   XlPasteType 类型,可选。指定要粘贴的区域部分。

XlPasteType 可为以下 XlPasteType 常量之一。]

xlPasteAll 默认值             ‘全部

xlPasteAllExceptBorders        ’边框除外

xlPasteColumnWidths          ’列宽

xlPasteComments            ’批注

xlPasteFormats            ‘格式

xlPasteFormulas            ’公式

xlPasteFormulasAndNumberFormats    ‘公式和数字格式

xlPasteValidation           ’有效性验证

xlPasteValues             ‘数值

xlPasteValuesAndNumberFormats     ’值和数字格式

Operation   XlPasteSpecialOperation 类型,可选。指定粘贴操作。

XlPasteSpecialOperation 可为以下 XlPasteSpecialOperation 常量之一。

xlPasteSpecialOperationAdd       ‘加

xlPasteSpecialOperationDivide      ’除

xlPasteSpecialOperationMultiply     ‘乘

xlPasteSpecialOperationNone 默认值    ‘无

xlPasteSpecialOperationSubtract     ‘减

SkipBlanks   Variant 类型,可选。若为 True,则不将剪贴板上区域中的空白单元格粘贴到目标区域中。默认值为 False。

Transpose   Variant 类型,可选。若为 True,则粘贴区域时转置行和列。默认值为 False。

二、使用示例

  Sub 第一个例子() ‘将B2单元格的公式复制,并选择性粘贴到A2单元格

Range(“B2”).Copy

  Range(“A2”).PasteSpecial Paste:=xlPasteValues

End Sub

Sub 第二个代码例子() ‘将C4单元格的值与e2:E4单元格的和粘贴到E2:E4

Range(“C4”).Copy

Range(“E2:E4”).PasteSpecial Paste:=xlPasteValues, Operation:=xlAdd

End Sub

Sub第三个例子()  ‘将A2:A6单元格的内容转置粘贴到以D8开始的单元格区域

Range(“A2:B6”).Copy

Range(“D8”).PasteSpecial Transpose:=True

End Sub

再来一个例子。下面的例子功能是:123页的内容拷贝到456页

Sub MYtest()

    Dim I, arr

    Sheets(“123”).Select

    I = Range(“I65536”).End(xlUp).Row

    arr = Range(“a3:Ao” & I)

    Sheets(“456”).Select

    Range(“a3”).Resize(UBound(arr), UBound(arr, 2)) = arr

End Sub

vba与选择性粘贴的结合使用

相关文章:

你感兴趣的文章:

标签云: