《excel_vba_编程教程(完整版)》

下载本书

添加书签

excel_vba_编程教程(完整版)- 第23节


按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
能指望花几个小时,甚至几天,就能找到错误源。  

10 查找帮助  

当你使用宏录制器时,你所有的操作都被翻译成VBA指令,并且放置在一个模块里。你在研究这些 
录制的过程时,不要忘记帮助随时可用。你会发现有些代码的意思可能会非常易懂,然而,有效却 
不怎么明白。这时候,你就需要寻求帮助了。当你独自工作时,只要轻轻一点或者轻轻一按就可以 
请教你的VBA老师了。使用VB在线帮助比使用词典或参考手册要快捷和容易得多。如果你讨厌一页 
一页地在词典里找你需要的术语,你将惊讶于你如何快地从VB代码窗口找到需要的帮助页面。  
让我们来检查你如何通过内置的VBA老师的帮助,将WhatsInACell过程里的第一句变成你自己的VBA 
词汇:  
Selection。SpecialCells(xlCellTypeConstants; 2)。Select  
上面的指令可以打断为三部分,哪些部分?Selection是对象还是属性?SpecialCells是什么? 
Select是什么?要回答这些问题,请依照下面的操作:  
1。  激活你要分析的过程的代码窗口  
2。  点击你不懂的词语  
3。  按下F1  

                                           49 

… 页面 66…

                                                                                                 
图2-10 VBA的对象,属性和方法在在线帮助里解释得很详细  
帮助就会显示相应的页面。如果你的光标放在词语“Selection”中间,你就会知道Selection可以 
是一个应用程序的属性,也可以是一个窗口对象。如果你的光标在下一个不明白的术语 
 (SpecialCells)并且按上面的步骤再做一遍后,你将看到SpecialCells帮助屏幕 (参见图2-10)。 
注意,每个帮助主题包含许多信息。被查找的指令类型显示在帮助窗口的上面;指令的类型允许词 
语分类。例如,SpecialCells是方法,可以使用这个方法的对象名称列在“应用于”下面(译者: 
点击“应用于”,出现对象名称列表)。指令名称下面的“参阅”和“示例”让你快速地跳到其它应 
用或意义相似的指令,以及查看使用这个指令的例子。指令的意义显示在“参阅”和“示例”标题 
的下面。接下来则是语法和需要的自变量和其它参数。“说明”部分给出一些推荐使用该指令的情 
形。  
你可以很容易地将示例中的代码复制到你的过程中去:选中你要复制的代码行,按下Ctrl+C,或者 
单击右键,选择快捷菜单上的“复制”,然后切换到VB代码窗口,点击你需要粘贴代码的地方,再 
按下Ctrl+V或者选择“编辑”-“粘贴”。  

11 语法和编程快捷助手  

VB编辑器窗口上的“编辑”工具条上有很多按钮,帮助你快速容易地输入正确格式的VBA指令。如 
果“编辑”工具条目前在VB编辑器窗口上不可连接,那么你可以选择“视图”-“工具条”  

                                                                  
图2-11 编辑工具条上的按钮使得编写程序和设置指令格式变得很容易   

                                            50 

… 页面 67…

在VB中编写过程需要你使用成百上千的内置指令和函数。因为大多数人们无法学习所有VBA里可用 
指令的语法,IntelliSense提供了你所需求的语法和编程帮助。当你在代码窗口编程时,经常会有 
专门的窗口弹出来,引导你完成正确的VBA代码。  

12 属性/方法列表  

每个对象都会有许多属性和方法。当你输入一个对象名称和一个句号以分开这个对象名称和它的属 
性或方法时,弹出一个列表菜单。这个菜单列出了在这个句号之前的对象的所有可用的属性和方法 
 (参见图2-12)。如何打开这个自动工具?选择“工具”-“选项”,单击选项对话框上的“编辑 
器”页,确保勾选上“自动列出成员”。  

                                                         
图2-12 在输入VBA指令时,VB会建议可以用于该对象的属性和方法  
如何从弹出菜单(图2-12)上选择项目?试图输入你需要的属性或方法名称的前几个字母,当Excel 
突出显示了正确的项目名称,则回车,插入该项目到你的代码中去,并且开始新的一行;或者,你 
需要在同一行继续写代码,那么就按Tab键代替回车。你也可以双击该项目来插入到代码中去。只 
要按Esc键就可以关闭这个弹出菜单,而不插入任何项目。当你按Esc键取消了弹出菜单后,VB将不 
会对同样的对象显示该菜单。你可以通过以下方法来再次显示属性/方法弹出菜单:  

13 常数列表  

本章的前面,你学习了给属性赋值,需要使用下面规则:  
Object。Property = Value  
如果选项对话框(编辑器页)已经勾选了“自动列出成员”,Excel就会在等号前的属性弹出一个菜 
单,列出该对属性有效的常数。常数是表明确切的描述或者结果的值。Excel和Office里面的其它 
应用软件都有很多预先定义的内置常数。你将在第三章中学习常数,常数类型和使用。  
假设你需要你的程序打开Excel工作表上的分页预览。“编辑”(译者:视图)菜单上有两个选择: 
普通视图和分页预览。普通视图是绝大多数Excel任务的默认视图模式;分页预览则是编辑视图, 
显示工作表中有内容的区域。这两种选项都有相应的内置常数来表示。Excel常数起名总是以“xl” 
开头。你一旦在代码窗口里输入指令:  
ActiveWindow。View =  
就会弹出一个菜单,列出这个属性的有效常数名称。使用在上节中“属性/方法列表”弹出菜单同 
样的技术,也可以处理“常数列表”弹出菜单。按下Ctrl+Shift+J或者点击“编辑器”工具条上的 
 “常数列表”按钮,可以激活常数列表菜单。  

                                           51 

… 页面 68…

                                                                                        
图2-13 常数列表弹出菜单显示了对敲入的属性有效的常数清单  

14 参数信息  

如果你有过使用Excel函数的经历,你就会知道许多函数需要一个或者多个自变量(或者参数)。如 
果VB函数要求自变量,你可以在输入左括号后在光标下面看到一个提示框,显示必要的或可选的自 
变量的名称(参见图2-14)。参数信息帮你很容易地给VBA函数设置参数。另外,它提醒你其它两 
件对函数运行正确至关重要的事情:自变量的顺序和自变量要求的数据类型。你将在下一章里学习 
数据类型。  
在代码窗口里面输入下述代码,看看参数信息是如何工作的:  
ActiveWorkbook。SaveAs(  

                                                                                                      
图2-14 A tip window displays a list of arguments utilized by a VBA function or instruction。  
你一旦输入了开始的括号,光标的下面就会出现一个提示框,当前的自变量会显示为粗体;当你输 
入完第一个自变量并且输入了逗号,VB会将下一个自变量为粗体。可选的自变量会用中括号' '括 
起来。只要按下Esc键就可以关闭参数信息窗口。如何使用键盘来打开提示窗口?输入指令或函数, 
紧接着是左括号,然后按下Ctrl+Shift+I。你也可以点击编辑菜单上的参数信息按钮或者选择“编 
辑”-“参数信息”。  

15 快速信息  

当你选择了代码窗口里的指令,函数,方法,过程名称或者常数,然后点击编辑工具条上的“快速 
信息”按钮(或者按下Ctrl+I),VB将会显示突出显示项目的语法和常数的值。快速信息可以通过 
选项对话框来打开或者关闭。在编辑器页,勾选“自动显示快速信息”,打开快速信息功能。  

                                                   
图2-15 快速信息提供函数参数清单,也可以是常数值和VBA语句语法  

16 自动完成关键字  

加速在代码窗口编写VBA程序的另一种方法是使用“自动完成关键字”功能。当你输入一个关键字 
的前几个字母,然后按下Ctrl+空格键,或者点击编辑工具条上的“自动完成关键字”按钮,VB会 
帮你输入这个关键字的剩余字母,节约你的时间。例如,在代码窗口里输入关键字“Application” 
的前四个字母,并且按下Ctrl+空格键:  
Appl  
                                             52 

… 页面 69…

VB将会完成剩余的字母,在Appl地方,你将看到整个关键字Application。如果有好几个关键字具 
有相同的开头字母,当你按下Ctrl+空格键后,VB会显示一个弹出菜单,列出所有关键字。测试这 
个例子,可以输入关键字Application的前三个字母,按工具条上的自动完成关键字按钮,然后在 
弹出菜单上选取合适的关键字。  

17 缩进/凸出  

也许你已经看到,在选项对话框的编辑器页上有许多设置你可以打开以使用代码窗口许多可用的自 
动功能。如果勾选了“自动缩进”选项,你就可以自动缩进所选的代码行,缩进的量为“Tab宽度” 
文本框里的数字。默认的自动缩进量是4个字母,你也可以在文本框里输入一个新的数字来改变Tab 
宽度。你为什么需要在代码里使用缩进?缩进可以使你的代码更容易阅读和理解。特别是输入一些 
做决定或重复性工作的代码行时,更建议使用缩进。你将在第五和第六章中学习如何创建这种类型 
的VB指令。现在,我们来练习使用缩进和凸出代码行,用第一章里的宏WhatsInACell作为例子:  
1。  在工程浏览器窗口,选择FirstSteps(Chap01。xls)工程,并且激活含有WhatsInACell代码的 
    WorksheetFormatting模块  
2。  选择开始为关键字With和结束为End With的一段代码  
3。  点击编辑工具条上的缩进按钮,或者按键盘上的Tab键(译者:按Tab键需要将光标放在行首, 
    而非选中指令)  
4。  选中的指令会向右移动4个字母的位置,如果使用了Tab宽度的默认设置。  
5。  点击编辑工具条上的“凸出”按钮,或者按Shift+Tab将选中的指令行返回原来的位置。  
缩进和凸出同样可以在编辑菜单里找到。  

18 设置注释块/解除注释块  

在第一章中,你学习了一行代码前面加一个引号表示注释。注释不但使代码更容易理解,而且它在 
VBA过程的测试和处理问题中都是很有用的。例如,你执行一个过程时,它可能和期望的运行不一 
致,对于那些可能产生问题的代码行,你现在想略过它们,但是以后可能还需要用到它们,你就可 
以在它们前面加一个引号注释掉它们,而不必删除它们。对大多数人来说,需要注释掉一行代码的 
话,只有在它前面敲入一个引号就可�
小提示:按 回车 [Enter] 键 返回书目,按 ← 键 返回上一页, 按 → 键 进入下一页。 赞一下 添加书签加入书架