搜档网
当前位置:搜档网 › 山菊花:VBA入门系列

山菊花:VBA入门系列

山菊花

https://www.sodocs.net/doc/094951717.html,/dispbbs.asp

VBA入门之二《一夜暴富》

等级:超级版主

威望:12

经过VBA入门之一《与代码亲密接触》的学习,我们的收获应该是不小的,是吧?

1、能在工作表中使用按钮,能在VBE中创建代码,并运行它。

2、认识了一些对象:按钮、工作表、单元格都是一个对象,初步建立了“对象”这个概念。

3、掌握了单元格对象的一些属性,如:Value、Address。

4、知道单元格有Range()、Cells()、[]等几种表示方法。

5、接触了按钮的一些属性,如:Left、Caption、Width、Height等等。

6、最值得高兴的是,你能读懂“CommandButton1.Caption”,看似长长的代码,其实就是“按钮1的标签”这意思。我们熟悉的有没有想过?许多事情现在跃跃欲试,但就是不知道该用什么代码,这该死的代码。

别急,今晚,我们就来解决这一问题。

宏是什么东西?

Excel工具菜单下有个“宏”,这宏是什么东西?宏是一段代码。我们点击一个按钮运行一段代码,这一段代码就是一个宏。

菜单:工具-宏中有个“录制新宏”,这又是什么意思?

录制新宏就是把我们对Excel的键盘和鼠标操作记录为代码。

没有发愣吧?这东西好哩!

好评:共被奖励 3 分积分

VBA入门之二《一夜暴富》2

我们就来试一试这“录制新宏”。

做点什么?把当前工作表隐藏了,看录制的宏是什么东西。

说做就做:

①点击工具-宏-录制新宏:

此主题相关图片如下:

这时,会显示工具“停止录制”,有两个按钮,一个是停止录制,点击它即停止录制宏。另一个是“相对引用”,如果对单元格进行操作,选择或取消“相对引用”,录制出的代码是不一样的,你可另找时间研究它。

此主题相关图片如下:

②操作:格式-工作表-隐藏。

此主题相关图片如下:

③点击“停止录制”按钮,也可以执行菜单命令“工具-宏-停止录制”。

VBA入门之二《一夜暴富》3

“录制新宏”的工作结束了,按Alt+F11打开VBE窗口:

此主题相关图片如下:

系统自动增加一个模块“模块1”,刚才录制的宏就在这模块1下,如果看不到代码,双击“模块1”就是。Sub Macro1()和End Sub是宏的开始行和结束行。Macro1是宏的名称。

绿色字体部分是注释,如果不喜欢,可以删掉它。

余下的只有一行:ActiveWindow.SelectedSheets.Visible = False

这时,我们该怎么做?

按F1,查帮助。用查户口的方式弄清每一个词的意义。

ActiveWindow:当前窗口。

SelectedSheets:选定的工作表。

Visible:决定对象是否可见。

我们操作的对象是ActiveWindow.SelectedSheets,即当前窗口中的选定的工作表。

让工作表隐藏,即是Visible = False。

VBA入门之二《一夜暴富》4

看出点名堂来没有?

如果不用“ActiveWindow.SelectedSheets”这种方式来指定工作表,还能怎样?回想一下,Sheets(工作表名),还记得吗?我们Sheets("Sheet2").Visible = False

当Visible = False时,表示隐藏,不可见,怎样表示可见呢?取值等于False相反的逻辑值是True:

Sheets("Sheet2").Visible = True

可以用我们已经熟悉的方式,把代码写在按钮的Click()过程中,点击按钮运行它。

点击浏览该文件

小结:本来我们不知道有Visible这么一个属性,因为需要,我们可以通过录制宏的办法记录对Excel的操作,再对宏代码进行分掌握了录制宏这一技巧,是不是受用无穷呢?

练习1:编写代码,把工作表sheet3更名为“我的工作表”。

练习2:编写代码,取消当前窗口中的滚动条(提示:菜单:工具-选项-视图)。

VBA入门之二《一夜暴富》5

练习还顺畅吗?

工作表具有Visible属性,改变它的值,即是隐藏或显示指定的工作表。

其它对象是否有这属性?打开下面的附件看看:

点击浏览该文件

练习:添加两个按钮到工作表,点击按钮1,隐藏本身并显示按钮2,点击按钮2,隐藏本身并显示按钮1。点击浏览该文件

VBA入门之二《一夜暴富》6

你一定已经知道,录制的宏可以直接运行。运行宏的办法有多种:

①打开“工具-宏-宏”窗口,选择要运行的宏,点击按钮“运行”。

此主题相关图片如下:

如果选择这种方式运行,在建立宏的时候,为宏取一个通俗易懂的名字很重要。

②在VBE窗口中,将光标定位到要运行的宏过程中,按F8单步运行(用于测试),按F5运行。

③用窗口控件。如果“窗口”工具栏没有显示,可如下图所示打开它:

此主题相关图片如下:

“窗口”控件与“控件工具箱”控件酷似,但再相似总是两种不同的东西。

在工具栏中点击按钮,在工作表上拖出图形,松开鼠标,它会弹出一个“指定宏”窗口:此主题相关图片如下:

选择你要运行的宏,确定。

然后,你可以修改按钮标签。

用鼠标点击一下单元格,退出按钮的被选取状态。

将鼠标移到按钮上,显示的是一个手形,不是箭头。点击它,运行宏。

④在工作表上插入一图片或插入一个自选图形,右键菜单也有一个“指定宏”项目,点击它,也可以选定宏。退出后,点击该此主题相关图片如下:

示例:

点击浏览该文件

VBA入门之二《一夜暴富》7

录制宏注意事项。

录制宏主要有两个目的。一是为了运用,如,当前工作表从第1行开始,每7行删除1行,我们可以录制一段宏,操作步骤是:

①将光标定位到要删除的第一行;

②开始录制(设置快捷键Ctrl+X、选择“相对引用”),完成两个动作:

⑴删除整行;

⑵光标下移6行到要删除的第2行,即第原来的第8行(最好用鼠标,可与键盘操作比较一下代码);

③停止录制。

点击浏览该文件

利用这个实例,可对比领会一下“相对引用”的作用。

第二个目的,就是获取代码,我们不知道对象的属性、方法,通过录制宏来获取,再用到自己的代码中。

无论哪个目的,都要注意,不要进行不必要的操作,代码太多,不利于修改。

如果获取代码为目的,录制过程更要简洁些,一次录制的动作越少越好,分析的时候才不容易出差错。这一讲到这结束。

VBA入门之二《一夜暴富》问题解答

以下是引用xiaoxun在2006-8-14 13:03:38的发言:

学生愚笨,请老师指点:录制后结果不同,错在哪?

第一步,定位第一行,不是选择第一行,用鼠标点击第一行的某一单元格,如A1。

开始录制后,第一步是选择第一行(你原来录制前的操作)。

此主题相关图片如下:

VBA入门之二《一夜暴富》问题解答

以下是引用mannewer123在2006-8-15 16:18:53的发言:

在VBA入门之二《一夜暴富》7中提到:利用这个实例,可对比领会一下“相对引用”的作用

可是我用了两种方法做了以后,怎么感觉是一样的啊,能不能请山老师具体解释下两个的区别,谢谢~不能凭感觉,要用事实说话。

两种模式下录制宏,再分别运行它(多运行几次),看工作表变化。

点击浏览该文件

t/dispbbs.asp?boardID=2&ID=182365&page=12&px=0

的标签”这意思。我们熟悉的小数点在这里是一个连接符,起承上启下的作用。这一段代码就是一个宏。

工作表名),还记得吗?我们能用代码隐藏指定的工作表(如sheet2)吗?能:el的操作,再对宏代码进行分析,找到我们需要的代码并加以运用。

以选定宏。退出后,点击该图片,也可运行一段宏:录制一段宏,操作步骤是:

相关主题