六合开奖结果现场直播欢迎诸位!收藏本站注 册登 陆
常用三肖中特马:基础知识网络知识操作系统WPS网页制作数据库算法网页成功之路网络安全最新技术古典mid流行midmid背景下载中心
您现在的位置:首页 > 三肖中特马 > 文章页

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

Admin | 2012-9-5 10:40:10 | ReadNums | 14552 | 标签 六合开奖结果现场直播 | 打印本页
     

  选择性粘贴是电子表格,通过如下的方法,你可以实现用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


问题未解决:在线咨询

网友评论

(访客)
内容实用原创,讲得很好。
20xx年x月x日
(站长)
有问题请在线咨询。
20xx年x月x日