codecamp

Excel创建宏并运行的步骤

录制宏

既然你已经知道了你需要做哪些操作,是时候打开你的宏录制器来创建你的宏了。在你依照下面的录制步骤之前,请确保你已经清除了刚才例子里的格式。按下Ctrl+A以选中整个工作表,选择“编辑”-“清除”-“格式”选择A1:A3并且选择“编辑”-“删除”。在“删除”对话框,选择“整行”然后点击“确定”。


依照以下步骤来创建你的第一个宏命令:


1、选择一个单元格
录制宏之前,你应该想好是否要录制当前单元格的位置。如果你需要宏总是从一个特定的位置开始,那么先打开宏录制器再选择你想要宏开始选中的特定位置。如果当前单元格的位置无关紧要,那么先选择一个单元格,然后才打开宏录制器。


选择“工具”-“宏”-“录制新宏”。出现一个录制宏对话框。


录制新宏


2、给宏取个名字“WhatsInACell”

技巧:宏命名
如果你忘记给宏命名,Excel 会给出一个默认的宏名,例如:Macro1,Macro2,等等。宏名可以包含字母,数字和下划线,但是第一个字必须是字母(译者:中文亦可,建议用英文)。例如:Report1是有效的宏名,然而1Report则是非法的。宏名里不能含有空格。如果你隔开宏名中的每个词,可以使用下划线。


例如:WhatsInACell,改为Whats_In_A_Cell。


3、在宏的存贮位置里,选择“当前工作簿”

技巧:保存宏
Excel 让你可以将宏保存在三个地方:

个人宏工作簿——如果你将宏保存在这里,你每次使用Excel 的时候都可以使用这个宏。个人宏工作簿在XLStart文件夹中。如果这个工作簿不存在,那么当你第一次使用这个选项的时候,Excel会自动生成这个工作簿。


新工作簿——Excel将宏放在一个新工作簿里。


当前工作簿——宏将被保存在你正在使用的工作簿里面。


4、在描述框里输入:显示单元格里潜在的内容:文本,数字,公式


5、点击“确定”关闭宏录制对话框,并开始录制。

这时,出现了“停止录制”工具栏。Excel下面的状态栏显示“准备录制”


停止录制宏


停止录制工具栏提供按钮来停止录制,以及让Excel如何在录制宏的时候处理单元格地址


技巧:单元格地址:相对或绝对?

绝对——如果在执行宏命令的过程中,无论哪些单元格被选中了,你都希望宏在特定的单元格执行这些录制的操作,那么使用绝对单元格地址。绝对单元格引用具有如下形式:$A$1,$C$5等。Excel宏录制器默认使用绝对引用。在录制前,确保停止录制工具栏上的第二个按钮没有被按下去。当鼠标指向这个按钮,工具提示“相对引用”。


相对——如果你想要宏可以用在任何区域,就打开相对引用。相对引用具有如下形式:A1,C5等。在录制前,确保停止录制工具栏上的第二个按钮已经被按下去了。记住,Excel 将会继续使用相对引用,直到退出Excel或者再次点击相对引用按钮。在录制宏的过程中,你可以使用这两种引用方法。


例如:你可以选择一个特定单元格(如$A$4),做一个操作,然后选择另外一个相对于当前位置的单元格(如C9,他在当前单元格$A$4往下5行和向右2列的位置)。当你复制单元格时,相对引用会自动调整引用,而绝对引用则不会。


6、从新进行刚才你手动完成的那些操作(参见“写宏之前的计划“)录制宏的时候,只有当你按下了回车键或者点击了确定之后,你的操作才会被录制。如果你按下了Esc键或者点击了取消,宏录制器不会录制任何操作。

7、 完成所有操作后,点击停止录制工具栏上的“停止录制”按钮,或者选择“工具”-“宏”-“停止录制”

运行宏

你创建了一个宏命令后,至少要运行一次以确保它运行正确。在本章的后面,你将学到好几种运行宏的方法,不过,现在,使用菜单命令。要看到你的成果,确保清除了例子的格式。按下Ctrl+A以选中整个工作表,选择“编辑”-“清除”-“格式”选择A1:A3并且选择“编辑”-“删除”。

在“删除”对话框,选择“整行”然后点击“确定”。稍后,你将在另外一个宏里面录制清除工作表格式的步骤。


1、打开任何包含文本,数字和公式的工作表


2、选择“工具”-“宏”-“运行宏”来打开宏对话框


3、 点击你要运行的宏的名称


运行宏

4、选择“运行”,执行宏

在宏对话框,你可以选择一个宏,运行,编辑或者删除它你也许经常会发现录制的宏不会按你预期的和你第一次操作那么运行。也许在录制宏的时候,你选择了错误的字体,或者忘记改变单元格颜色,或者你临时发现最好加上一个步骤。不必惊慌。Excel允许你修改代码,而不会强迫你重新录制那些单调的操作。



什么是Excel宏命令
修改Excel宏代码及添加注释的步骤
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }