在前几期的内容中,我们主要介绍了Excel“开发工具”下的宏:
Excel中如何录制宏,相关的基本操作你都会了吗? - 简书
Excel中如何编辑录制的宏代码,一起来了解VBA编辑器! - 简书
通过录制并执行一个宏,可以极大提升我们制作模板数据表的效率。
本期我们来了解一下关于宏的其他一些基本操作。
01 宏选项
在Excel录制宏的开始阶段,我们可以设置执行宏的快捷键,如之前所用到的Ctrl+Shift+T,那如果我们需要更改这一快捷键的设置,例如改成Ctrl+Shift+N,该如何进行操作呢?此处就涉及到“宏选项”这一设置。
1. 点击“开发工具”选项卡下的“宏”按钮。

2. 打开“宏”对话框后,选中所要修改的宏,再点击“选项”按钮。

3. 打开“宏选项”对话框后,我们可看到之前设置的快捷键,将框中的T改为N即可,最后点击“确定”。

02 复制宏代码
Excel输入数据时,可能会遇到这种情况,数据较多,而数据所在单元格的列宽不够,使用宏进行数据输入的过程中,Excel并不会自动根据所输入的数据多少而调整列宽,需要我们在已录制的宏中添加这一操作的代码。不过,问题是对于不了解这一操作代码的用户来说,无法自己写出来,那我们可以通过单独录制一个此操作的宏,再将其代码复制粘贴到另一个宏中。

1. 点击“开发工具”选项卡下的“录制宏”,打开其对话框,并命名该宏为“temp”,作为一个临时的宏来使用。

2. 点击“确定”后,将鼠标放在B列和C列中间的界线上,双击鼠标自动调整B列的列宽。

3. 点击“停止录制”按钮,完成宏录制。

4. 点击“开发工具”选项卡下的“宏”按钮,打开其对话框,选中新录制好的宏“temp”,再点击“编辑”按钮。

5. 打开VBA编辑器后,我们看到新录制的宏“temp”在一个新的模块中,此宏中仅有一行代码,即自动调整B列的列宽。

6. 选中该行代码,鼠标右键单击“复制”,或使用快捷键Ctrl+C复制该行代码。

7. 双击另一个模块“Module 1”,在“Ctreat_Timesheet”宏代码的最后一行另起一行,粘贴已复制的代码(注意所有的代码需在End Sub以内)。

8. 关闭VBA编辑器(快捷键Alt+F11),回到Excel工作簿中的“Sheet1”工作表,单击“New Timesheet”按钮。

9. 在弹出的对话框中输入日期,单击“确定”。

10. 待“Create_Timesheet”宏执行完后,新建了一个“Weekly Timesheet”的数据表格,并且B2单元格中的日期会自动根据数据的多少自动调整列宽。

03 删除宏
如果我们需要删除不再使用的宏,例如“temp”,该如何操作呢?
1. 点击“宏”按钮,打开其对话框后,选中所要删除的宏,点击“删除”按钮。

2. 点击提示弹窗中的“是”,确认删除宏。

04 复制(整个)宏
如果我们需要将一个工作簿中的宏,复制到另一个工作簿中,该如何操作呢?
1. 打开目标工作簿,即宏要复制到的目标工作簿;在此我们通过快捷键Ctrl+N,快速新建一个工作簿。

2. 快捷键Alt+F11,打开VBA编辑器;我们可在VBA项目窗口看到新建的“工作簿1”。

3. 鼠标点击“Module1”,即包含“Create_Timesheet”宏的模块,将其拖至“VBAProject(工作簿1)”上,放开鼠标,即可将宏复制到新的工作簿中。

以上即是我们本期的主要内容,关于Excel宏的一些其他的基本操作:宏选项,宏代码的复制,删除宏和复制宏。下一期我们会继续了解关于录制宏的另一个技巧——结合相对引用,敬请期待!
网友评论