友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
飞读中文网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

excel_vba_编程教程(完整版)-第19章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



              。Underline = xlUnderlineStyleNone   
              lorIndex = 11   
       End With   
       Range(〃C6〃)。Select   
       Selection。SpecialCells(xlCellTypeFormulas; 23)。Select   
       With Selection。Font   
              。Name = 〃Arial〃   
              。FontStyle = 〃Bold〃           
              。Size = 10   

                                          20 

… 页面 37…

              。Strikethrough = False   
              。Superscript = False   
              。Subscript = False   
              。OutlineFont = False   
              。Shadow = False   
              。Underline = xlUnderlineStyleNone   
              lorIndex = 3   
       End With   
       Range(〃A1:A3〃)。Select   
       Selection。EntireRow。Insert   
       Range(〃A1〃)。Select   
       With Selection。Interior   
              lorIndex = 13   
              。Pattern = xlSolid   
              。PatternColorIndex = xlAutomatic   
       End With   
       Range(〃B1〃)。Select   
       ActiveCell。FormulaR1C1 = 〃Text〃         
       Range(〃A2〃)。Select   
       With Selection。Interior   
              lorIndex = 5   
              。Pattern = xlSolid   
              。PatternColorIndex = xlAutomatic   
       End With   
       Range(〃B2〃)。Select   
       ActiveCell。FormulaR1C1 = 〃Numbers〃   
       Range(〃A3〃)。Select   
       With Selection。Interior   
              lorIndex = 3         
              。Pattern = xlSolid   
              。PatternColorIndex = xlAutomatic   
         End With   
         Range(〃B3〃)。Select           
         ActiveCell。FormulaR1C1 = 〃Formulas〃   
         Range(〃B4〃)。Select   
  End Sub   
                        
从现在开始,让我们注重于寻找下面两个问题的答案:如何阅读宏代码?如何修改宏代码?  

7 添加注释  

看一下录制的宏代码,请注意那些开头带单引号的行。这些行就是注释。注释默认显示为绿色。执 
行宏代码时,VB会忽略这些注释行。注释经常和宏代码放在一起,来整理那些意义不甚明显的语句。 
现在,我们来给宏WhatsInACell 添加注释。  
1.  激活VBE窗口  
2.  在Selection。SpecialCells(xlCellTypeConstants; 2)。Select前面点击一下,将光标移至该 
     语句开头,回车          
3.  将光标往上移一行到空白处,并且添加如下注释,注意前面有单引号(译者:英文状态下的 
     单引号)  
        ‘ Find and format cells containing text  
4.  在Selection。SpecialCells(xlCellTypeConstants; 1)。Select前面点击一下,将光标移至该 

                                           21 

… 页面 38…

     语句开头,回车  
5.  将光标往上移一行到空白处,并且添加如下注释,注意前面有单引号(译者:英文状态下的 
     单引号)  
        ‘ Find and format cells containing numbers  
6.  在Selection。SpecialCells(xlCellTypeFormulas; 23)。Select前面点击一下,将光标移至该 
     语句开头,回车  
7.  将光标往上移一行到空白处,并且添加如下注释,注意前面有单引号(译者:英文状态下的 
     单引号)  
        ‘ Find and format cells containing formulas  
8.  在Range(〃A1:A3〃)。Select前面点击一下,将光标移至该语句开头,回车  
技巧1-6:关于注释  
在VBE代码窗口里,以单引号开头的都是注释。注释的默认颜色是绿色。可以通过“选项”对话框 
 (“工具”-“选项”-“编辑器格式”)更改注释颜色。注释也可以写在代码的后面。例如,在语 
句lorIndex = 11之后添加注释。点击该语句句末,按下Tab键,输入单引号,然后输入注释。 
显示如下:  
    lorIndex = 11 ' Sets the font color to Violet  
注释除了给用户提供代码目的信息之外,没有任何作用。请别忘记给你的代码写上注释。如果你几 
个月后还要回到你的代码,那么注释将帮你大忙。同样,注释可以使别人很快理解你的程序。  
9.  将光标往上移一行到空白处,并且添加如下注释,注意前面有单引号(译者:英文状态下的 
     单引号)  
        ‘Create legend  

8 分析宏代码  

所有宏过程都以关键词“Sub”开始,以关键词“End Sub”结束。在关键词“Sub”之后是宏的真 
正的名字,然后紧跟着是一对括号。在关键词Sub 和End Sub之间是那些你每次运行宏代码时VB执 
行的语句。VB从上到下读取语句,忽略那些句前带单引号的语句(参见上节关于注释的内容),读 
到End Sub时停止。请注意,录制的宏代码里包含许多停顿(译者:英文模式下的句号)。每行代码 
中都有停顿,用来连接VBA语言中不同的要素。如何阅读这种语言的用法呢?要从最后一个停顿的 
右边向左读。看看WhatsInACell里的一些语句:  
    Range(〃A1:A3〃)。Select  
选择A1到A3单元格  
       Selection。EntireRow。Insert  
往选中的区域中插入行。因为前面你选中的是三个单元格(译者:应该说是占据了三行的单元格), 
VB将插入三行。  
    ActiveCell。FormulaR1C1 = 〃Text〃  
往当前单元格里输入“Text”。因为,之前的代码是Range(〃B1〃)。Select,选择单元格B1,B1是当 
前激活的单元格,所有VB往B1单元格里面输入文本。  
       With Selection。Interior   
              lorIndex = 3   
              。Pattern = xlSolid   
              。PatternColorIndex = xlAutomatic   
       End With   
这是一段特别的代码块,解释如下:给当前选中的单元格设置单元格填充色为红色(ColorIndex =  
3),设置填充模式为实心(xlSolid),并且给当前单元格明确为默认的填充模式(xlAutomatic)。 
这个代码块以关键词With开始,End With结束,它将加速宏代码的执行。宏代码知道走捷径,而不 
会每次都重复下面的说明:  
       Selection。InteriorlorIndex = 3   
       Selection。Interior。Pattern = xlSolid  
       Selection。Interior。PatternColorIndex = xlAutomatic  
在关键词With后面紧跟重复的Selection。Interior,再以End With结尾。  

                                           22 

… 页面 39…

9 清除宏代码  

你已经逐行解析了你宏代码,你会发现Excel录制了许多你并不想要包含进去的信息。例如,在选 
中了文本单元格后,除了设置字体为粗体和颜色为紫色之外,Excel 还录制了其它在字体页的选项 
——字体名称,字体大小,删除线,上标,下标,阴影和下划线。请看下列代码片断:  
       With Selection。Font   
              。Name = 〃Arial〃   
              。FontStyle = 〃Bold〃   
              。Size = 10   
              。Strikethrough = False   
              。Superscript = False   
              。Subscript = False   
              。OutlineFont = False   
              。Shadow = False   
              。Underline = xlUnderlineStyleNone   
              lorIndex = 13   
       End With   
如果你使用了对话框,Excel总会录制所有的设定。这些多余的代码使得你的宏代码冗长而难以理 
解。因此,你完成录制宏后,最好检查一遍你录制的代码并删除不必要的行。  
1.  在下面的代码中,删除带删除线的行:  
       With Selection。Font   
              。Name = 〃Arial〃   
              。FontStyle = 〃Bold〃   
              。Size = 10   
              。Strikethrough = False   
              。Superscript = False   
              。Subscript = False   
              。OutlineFont = False   
              。Shadow = False   
              。Underline = xlUnderlineStyleNone   
              lorIndex = 13   
       End With   
    清除后,在关键词With和End With之间只剩下了两句代码,这些才是你在录制宏的时候真正做 
    的设置:  
       With Selection。Font   
              。FontStyle = 〃Bold〃   
              lorIndex = 13   
       End With   
2.  找到设置数字单元格格式的代码,依照下面的例子修改代码:  
       ' Find and format cells containing numbers   
       With Selection   
              。SpecialCells(xlCellTypeConstants; 1)。Select   
              。FontlorIndex = 11 ' Sets the font color to Violet   
       End With   
       Range(〃C6〃)。Select   
3.  找到设置公式单元格格式的代码,依照下面的例子修改代码:  
       ' Find 
返回目录 上一页 下一页 回到顶部 1 1
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!