excel - VBA基础入门 - 图文(9)
除去注释的部分,实际上只有句代码。不用我细讲,大家已经知道它们的作用分别是:第一句选中A1单元格,第二句复制选中的单元格,第三句选中B1单元格,第四句粘贴。 但是,就像我们用VBA在单元格输入数据不用先选中它一样,我们同样可以在不选中单元格的情况下就执行复制粘贴命令。所以,以上的代码实际上我们可以简化为: 复制内容到剪贴板 代码:
Sub Macro1()
Range(\ End Sub
以上的代码只是发生在活动工作表内,如果要在其他工作薄或工作薄中实现复制粘贴的命令,只需要改变引用即可。如我们要将Book1.xls的第一个工作表中的A1:A10复制到Book2.xls的第一个工作表中的B1:B10单元格,则代码为: 复制内容到剪贴板 代码:
Sub mycopy()
Workbooks(\ Workbooks(\ End Sub 引用:
提示:一行的代码过长,可以用空格加下划线进行换行。
复制的区域过大时,对于目标区域,我们可以只指定一个单元格,这时它代表目标区域的左上角单元格。如上面的代码,我们可以写成这样: 复制内容到剪贴板 代码:
Sub mycopy()
Workbooks(\ Workbooks(\ End Sub
如果你需要只粘贴数值,或其他什么,你可以利用录制选择性粘贴的宏来进行修改。同样的道理,我就不再多说。 二、剪切单元格
剪切单元格,或者说移动单元格和复制单元格类似,有了上面的经验,我们不难得到它的语句。其实它和复制单元格的命令大同小异,唯一不同的是使用Cut方法代替了Copy方法。 下面的代码是将A1:A10单元格的数移动到B1:B10单元格: 复制内容到剪贴板 代码:
Sub mycut()
[a1:a10].Cut [b1] End Sub
三、删除单元格
删除一个单元格的命令也很简单,调用Range对象的Delete方法即可。同我们用鼠标操作一样,同样有四个选项,下面以删除A1单元格为例: 复制内容到剪贴板 代码:
[a1].Delete Shift:=xlUp ' 下方单元格上移
[a1].Delete Shift:=xlToLeft ' 右侧单元格左移 [a1].EntireRow.Delete ' 整行删除 [a1].EntireColumn.Delete ' 整列删除
只写成[a1].Delete时,默认为?下方单元格上移?。 Range对象的End属性
Range对象有一个End属性,也许你在阅读别人的例子里经常会看到如?[A65536].End(xlUp).Row?这样的语句,这就是End属性的利用。
End属性应用于Range对象,同样也返回一个Range对象。该对象代表包含源区域的区域结尾处的单元格。如果你还是不明白,那请你在工作表里试一试,分别按Ctrl+上、下、左、右方向键,看看得到的是什么?End属性返回的单元格就相当于在源单元格按住Ctrl键+上(或下、左、右)方向键所得到的单元格。它的语句格式简单写为: 源区域.End(移动方向) 移动方向可以是:
xlToLeft :向左移动,相当于在源区域按Ctrl+左方向键。 xlToRight:向右移动,相当于在源区域按Ctrl+右方向键。 xlUp:向上移动,相当于在源区域按Ctrl+上方向键。 xlDown:向下移动,相当于在源区域按Ctrl+下方向键。
所以在程序设计的过程中,很多人喜欢用?[A65536].End(xlUp).Row?语句来返回A列的最后一个非空单元格的行号。
如果当前活动工作表的A列填写的是学生的姓名,现在我们想在表中A列最后一个学生的后面增加一个叫?张青?的学生,则代码为: 复制内容到剪贴板 代码:
ActiveSheet.Cells([A65536].End(xlUp).Row + 1, 1).Value = \张青\
语句 [A65536].End(xlUp).Row + 1中,行号加1的目的是在最后一个非空单元格的下一个单元格里输入数据。需要注意的是:如果你的A列全为空的话,?[A65536].End(xlUp).Row?这个语句返回的是1。
我们来做一个简易的学生信息录入的例子:
(1)点工作表中的?录入资料?按钮,弹出?录入?窗体; (2)录入信息后,点击?确定?按钮即完成记录追加; (3)不考虑录入内容是否规范。
详细请看附件, 信息录入.rar (11.09 KB) 信息录入.rar (11.09 KB)
附件没有设密码,希望大家尝试过后再看代码! 汇总多工作表花名册 上一贴中,?花名册分类?的题目主要是检验大家对循环语句、判断语句及一些单元格数据处理的方法。因为目标工作表和源工作表的格式都是一样的,所以处理起来也相对比较简单,无非就是给数据搬了个家。所以可以用我们前面贴子里说的Copy的方法,当然,也可以直接等于源区域的Value属性,即:目标区域.value=源区域.value。比如我们想把Sheet1里的第一行数据复制到Sheet2的第一行,可以用以下两句代码中的任意一句: 复制内容到剪贴板 代码:
Sheets(\ 代码:
Sheets(\ 这一点,在?宝贝?的作业里已经用到了。
上次的作业是对名册进行分类,进行原样的搬家。这一次的作业还是搬家,和上次不一样的是,这次是将名册汇总到一个工作表,而且只汇总相应的内容,不再是那种原封不动的搬家了。当然,原理还是一样,如果你会了前一题,这一题对你来说,就显得很小儿科了。 设计一个程序,能否实现目的很重要,实现目的的同时,高效率的程序也是我们追求的。但是我们现在才开始,大家不必太过于考虑效率的问题,管他什么代码,只要能实现目的即可。在附件里,我加了计算程序执行时间的代码,你不用去管它,之所以加上这段代码,是因为在下面的帖子里我可能会用到。 复制内容到剪贴板 代码:
Sub mysub()
Dim start As Double start = Timer
'在这里添加你的代码
MsgBox \程序共执行了\秒!\ End Sub
作业见附件, 学生花名册汇总.rar (21.53 KB) 学生花名册汇总.rar (21.53 KB) 下载次数: 218 2009-8-27 12:53
此贴到此为止,咱们不见不散,楼下见!
新建工作表
---------------------
在?花名册分类?的作业里,moon2778加入了为不同地区建立工作表代码,让?沧海一滴?和?宝贝有酒窝?两个朋友都跟贴问了新建工作表的相关问题。有需要就有市场,呵呵......那我再在这里简单讲一讲我对新建工作表的认识,希望对大家学习有帮助。
新建一个工作表(Worksheet),要调用工作表(Worksheet对象)的Add方法(可以建制一个新建工作表的宏来查看相关的代码)。
如果我们想在当前工作表中新建一个工作表,代码可以写为: 复制内容到剪贴板 代码:
Worksheets.Add '新建的工作表的位臵在当前活动工作表的前面
此时,新建的工作表Excel默认把它放在活动工作表的前面,如果我们需要改变它的位臵也是可以的。例如: 复制内容到剪贴板 代码:
Worksheets.Add before:=Worksheets(\ '在工作表sheet2之前添加一个工作表
Worksheets.Add before:=Worksheets(1) '在最前面添加一个工作表
Worksheets.Add after:=Worksheets(\在工作表sheet2之后添加一个工作表\
Worksheets.Add after:=Worksheets(Worksheets.Count) '在最后面添加一个工作表
试了以上的代码,我们会发现,新添加的工作表都是采用?老大、老二、老三.... …… 此处隐藏:4046字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文




