Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 15616|回复: 69

[通知] 统计VBA学习小组正式组第四讲的积分帖之作业上交贴

  [复制链接]
发表于 2012-1-18 09:42 | 显示全部楼层 |阅读模式
活动类型:
作业上交
开始时间:
2012-1-18 00:00 至 2012-1-22 00:00 商定
活动地点:
VBA学习小组
性别:
不限
已报名人数:
65

本帖最后由 冠军欧洲2010 于 2012-3-6 22:37 编辑

说明:
统计帖每个学员只能跟帖回复一次,也就是在原来回复楼层的基础上点编缉,不要一个链接一层楼,否则不计算积分。

各小组学员上交作业时,一定要点我要参加,并注明自己的新组编号和论坛ID,如果点击过我要参加但没有跟帖提交作业的,扣该学员5积分;如果跟帖提交了作业,但没有点我要参加的,不给予评分。
PS:这样我好统计哈。。。嘿嘿!!!
请各学员看清上面的说明,免得被扣了分分!
回贴时,不用回复可见,俺设成了仅楼主可见,直接回复即可!
第四讲作业链接:
http://www.excelpx.com/thread-220382-1-1.html

已通过 (1 人)

  留言 申请时间
梅一枝 2012-1-18 09:42

暂未通过 (64 人)

  留言 申请时间
space80 2012-2-6 16:22
EP学员 2012-2-3 23:41
吉祥0011 2012-2-3 18:05
兔猫兔123 2012-2-3 15:59
XUEWU止境 2012-2-1 20:14
cbg2008 2012-1-31 21:22
Tristone 2012-1-30 13:42
@wsm 2012-1-29 15:54
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-1-18 09:43 | 显示全部楼层
一、下面录制的是选择性粘贴的代码.
1、下面代码中请回答select是方法还是属性?Copy是方法还是属性

2、Selection.PasteSpecial , Paste=xlPasteAll;Operation:=xlMultiply 一句中有三处错误,请找出来改正。注:selection是表示正在选取的单元格对象。
1.  Sub Macro1()
2.  '
3.  ' Macro1 Macro
4.  ' 宏由 Lenovo User 录制,时间: 2012-1-17
5.   
6.  Range("C21:C25").Select
7.  Selection.Copy
8.  Range("E21").Select
9.  Selection.PasteSpecial , Paste=xlPasteAll;Operation:=xlMultiply
10. End Sub
复制代码
答:1、SELECT 是属性   copy 是方法
2、对象方法的补充说明用空格隔开   不能用=号表示而用 :=表示  并列关系用逗号分隔不能用分号分隔
正确格式为: Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply
二、下面的代码是定位空单元格并删除,该句代码中哪些是对象,哪些方法,哪些是属性?请简述下面一句代码的结构。
1.  Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
答:Range("a:a") 是对象, SpecialCells(xlCellTypeBlanks)是Range("a:a")对象的方法并返回包含空白的单元格,EntireRow是新产生(上一步返回的空白单元格)对象的属性,代表整行的意思,Delete是整行对象的方法 意思是删除空白的整行。

点评

select是属性么?其他均正确  发表于 2012-1-18 10:55

评分

参与人数 1金币 +16 收起 理由
兰色幻想 + 16 新年快乐,发一个小红包。

查看全部评分

回复

使用道具 举报

发表于 2012-1-18 10:10 | 显示全部楼层
一、
1、select是方法,copy是方法
2、第一个错误:Selection.PasteSpecial后面是空格,而不是","
     第二个错误:Paste后面少个":"
     第三个错误:xlPasteAll后面是",",而不是";"
二、Range("a:a")是对象
    SpecialCells(xlCellTypeBlanks)是方法,括号里面是参数
    EntireRow是属性
    Delete是方法
    A列的所有空单元格所在的所有行删除
    Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow整个作为一个对象

点评

答案正确  发表于 2012-1-18 10:57

评分

参与人数 1金币 +16 收起 理由
兰色幻想 + 16 新年快乐,发一个小红包

查看全部评分

回复

使用道具 举报

发表于 2012-1-18 10:30 | 显示全部楼层
本帖最后由 wenchduan 于 2012-1-18 10:31 编辑

一、1、Select是方法,Copy是方法。
       2、Selection.PasteSpecial , Paste=xlPasteAll中间的逗号改成空格;
             Paste=xlPasteAll,应为Paste:=xlPasteAll;
            Paste=xlPasteAll;Operation:=xlMultiply中的分号该逗号。

二、Range("a:a")为对象,SpecialCells、delete为方法,EntireRow为属性。
       Range("a:a").SpecialCells(xlCellTypeBlanks)为EntireRow属性的对象;
       Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow为delete方法的对象。
       代码表述:对于A列中与xlCellTypeBlanks相匹配的单元格所包含行的值删除。

点评

答案正确  发表于 2012-1-18 10:58

评分

参与人数 1金币 +16 收起 理由
兰色幻想 + 16 新年快乐,发一个小红包

查看全部评分

回复

使用道具 举报

发表于 2012-1-18 10:52 | 显示全部楼层
一、
 1、select和copy都是方法
 2、三个错误
   1、Pastespecial方法后面应该是空格,不是逗号
   2、paste属性后面应该是:=,而不是直接跟=
   3、paste和operation两个参数之间产用逗号(,)隔开,而不是用;
二、Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
  Range("a:a") 是对象
  SpecialCells(xlCellTypeBlanks)  是对象
  EntireRow  是属性
  Delete  是方法
  
  Range("a:a")是对象,指A列
  SpecialCells(xlCellTypeBlanks)是Range("a:a")的子对象,指A列的空单元格
  EntireRow是空单元格的属性,指整行
  Delete是方法,指将空单元格的整行删除

评分

参与人数 1金币 +5 收起 理由
兰色幻想 + 5 答案正确

查看全部评分

回复

使用道具 举报

发表于 2012-1-18 11:00 | 显示全部楼层

  1. Sub Macro1()
  2. '
  3. ' Macro1 Macro
  4. ' 宏由 Lenovo User 录制,时间: 2012-1-17

  5. Range("C21:C25").Select
  6. Selection.Copy
  7. Range("E21").Select
  8. '错误代码Selection.PasteSpecial , Paste=xlPasteAll;Operation:=xlMultiply
  9.               Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply'正确代码

  10. End Sub
复制代码
答:上述代码中Select和Copy都是方法。
       上述错误代码错在:1. PasteSpecial后面不该是个逗号应该是个空格;
                                      2. Paste后面的等号前应该有个冒号;
                                      3. xlPasteAll后面不应该是个分号,应该是个逗号。
  1. Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
复制代码
上述代码中:Range("a:a")——对象
                     SpecialCells——方法
                     xlCellTypeBlanks——属性
                     EntireRow——属性
                     Delete——方法
整行代码的意思是:定位A列中的空单元格后整行删除。


回复

使用道具 举报

发表于 2012-1-18 11:00 | 显示全部楼层
一、1、select是方法Copy是方法。
    2、Selection.PasteSpecial Paste:=xlPasteAll,Operation:=xlMultiply
逗号改成空格,加一个冒号,分号改逗号。
二、Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
      range("a:a")是对象,specialcell是它的属性 前面2个一起 作为一个对象,entirerow是它的属性,前面3个一起做为对象,删除是方法。
回复

使用道具 举报

发表于 2012-1-18 11:10 | 显示全部楼层
c组学委:csmctjg

题一、
    1、SELECT是方法,COPY也是方法。
    2、Selection.PasteSpecial , Paste=xlPasteAll;Operation:=xlMultiply 的错误。
       错误一:PasteSpecial后面是空格,不能是逗号;
       错误二:Paste后面应该是冒号和等于号,不能直接是等于号;
       错误三:xlPasteAll后面应该是逗号,不能是分号。
       所以该句代码应该为:Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply

题二、
    Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow.Delete中的对象有:Range("a:a")、Range("a:a").SpecialCells(xlCellTypeBlanks)、Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow。
    方法有:SpecialCells、Delete
    属性有:EntireRow
回复

使用道具 举报

发表于 2012-1-18 11:11 | 显示全部楼层
1题 答:1、SELECT 是方法  copy 是方法

2、对象方法的补充说明用空格隔开   不能用=号表示而用 :=表示  并列关系用逗号分隔不能用分号分隔

正确格式为: Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply


2题 答:Range("a:a") 是对象, SpecialCells(xlCellTypeBlanks)是Range("a:a")对象的方法并返回包含空白的单元格,EntireRow是新产生(上一步返回的空白单元格)对象的属性,代表整行的意思,Delete是整行对象的方法 意思是删除空白的整行。

老师辛苦了,祝健康 快乐 ~
回复

使用道具 举报

发表于 2012-1-18 11:16 | 显示全部楼层
A组学委:qushui
一、
1、select和copy都是表示一个动作,是方法
2、改正后为:Selection.PasteSpecial Paste:=xlPasteAll,Operation:=xlMultiply
二、
对象:A列Range("a:a"),A列中的空白单元格Range("a:a").SpecialCells(xlCellTypeBlanks),A列空白单元格的整行Range("a:a").SpecialCells(xlCellTypeBlanks).EntireRow
方法:delete方法
属性:SpecialCells和EntireRow属性
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-7 13:20 , Processed in 0.387203 second(s), 16 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表