设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

Excel 97/VBA技术讲座之二

1970-1-1 08:00| 发布者: 首都经济贸易大学 赵| 查看: 3178| 评论: 0

二、创建简单的宏    初次创建或使用宏时,最好使用宏记录器。其基本步骤是:先将要完成的工作做一遍,以确认操作的正确;如果工作正常,启动宏记录器,再做一遍。此时宏记录器将录制所做的操作,并将其转换成VBA宏语言保存起来。最后再根据需要编辑修改录制的宏,并设置宏执行的方法。下面以创建纵向合并单元格的宏为实例,说明创建宏的基本步骤。Excel 97的“格式”工具栏上已提供了横向合并单元格的工具按钮。但是有些表格需要纵向合并若干个单元格,为此我们创建一个纵向合并单元格的宏。具体步骤如下:
    1. 执行相应操作    首先使用菜单命令一步步执行相应的操作。设要处理的工作表如下所示:


   
   

图1

   需要纵向合并A栏的行标题 选定区域A3:A10。(此时标题位于选定区域的最上面的单元格。)
    单击“格式”菜单中的“单元格”命令,然后单击“对齐”选项卡。
    选中“合并单元格”复选框,在“水平对齐”和“垂直对齐”下拉列表框中选“居中”;然后拖拽“方向”框中的红点,使其朝上旋转90°。
   

图2 
   单元格格式对话框(对齐选项卡) 最后单击“确定”完成合并及旋转标题。合并结果如下所示:

   
   

图3

     纵向合并A3:A10 2. 录制宏    通过刚才的操作已正确地完成了纵向合并若干个单元格的操作。下面可以录制这些操作,并将它们转换成VBA程序。在开始创建宏之前,先右击任何工具栏,在弹出的工具栏快捷菜单中选择Visual Basic工具栏  。
    选择区域A3:A10,然后单击Visual Basic工具栏上的“录制宏”按钮
   

图4  

    录制新宏对话框 在“录制新宏”对话框中,用“MergeVertical”替换默认的宏名,用“纵向合并单元格”替换默认的描述,单击“确定”。这时状态栏出现“录制”字样,并出现“停止录制”按钮。此时开始录制宏。
    执行一遍刚才做过的一系列操作。宏记录器立刻将相应的语句插入到宏中。
    单击“停止录制”按钮
    这样就完成了录制宏的操作。
    3. 查看录制的宏    第一次录制宏时,Excel创建一个新模块。以后每次录制新宏时,Excel都将新宏添加到同一模块的结尾。当需要查看宏时可以单击“运行宏”按钮,选定要查看宏的名称,再单击“编辑”即可查看“代码”窗口中的VBA程序。刚才录制的VBA程序如下所示:
   
Sub MergeVertical( )
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlGeneral
        .WrapText = False
        .Orientation = 90
        .ShrinkToFit = False
        .MergeCells = True
    End With
End Sub
宏是以Visual Baisc编写的,并遵从标准Visual Basic规则:以Sub开始,以End Sub结束。该宏显示了关于单元格对齐的6个不同的属性,它们与前面介绍的对话框中看到的选项完全一致。这里出现的With结构使得程序的可读性更好,也更简练。这里相当与每个“.”前面的属性都是Selection对象。
    4. 运行宏    现在可以试用一下宏,看它是如何工作的。
    选定工作表的A11:A16单元格。
    单击Visual Baisc工具栏上的“运行宏”按钮
    从列表中选定MergeVertical宏,然后单击“运行”。


    宏将选定的单元格区域纵向合并。   
   

图5 

     纵向合并后的工作表 如果创建的是经常使用的宏,可以在创建宏时指定快捷键,或是在编辑宏时为创建的宏填加快捷键。注意:Ctrl+<字母>复合键大多已经是某些操作的快捷键,所以最好使用Ctrl+Shift+<字母>的方式定义宏的快捷键。定义快捷键时,Ctrl键为缺省的,故只需按Shift键和相应的字母键即可。这里我们指定Ctrl+Shift+M作为纵向合并单元格宏的快捷键。以后使用时只要选定需要纵向合并的若干个单元格,再按Ctrl+Shift+M复合键即可。使用更普遍的宏还可以做成工具按钮放到工具栏中,或是添加到菜单命令中。有关操作方法,将在后续讲座中介绍。如果需要具体了解宏是如何工作的,还可以选择单步执行方式,一步步地运行宏。(按F8键可以逐条执行宏语句)
    5. 优化记录宏    使用宏记录器录制的宏通常都是机械的,录制完后通常需要修改它们,使其更通用、更简洁。例如上面录制的宏中,可以删除“.WrapText = False”、“.ShrinkToFit = False”等与合并单元格无关的语句。如果录制的宏中有选定具体单元格的语句,为了使宏更为通用,通常也应删除它们。为了增加宏的可读性,还可以在宏语句后面添加有关的说明或注释。

最新评论

相关分类

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-27 15:18 , Processed in 0.080074 second(s), 16 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回顶部