一、宏的概念和功能

宏(Macro),是一种批量处理的称谓。绝大多数情况下,“宏”这个词的使用暗示着将小命令或动作转化为一系列指令。宏的用途在于自动化频繁使用的序列或者是获得一种更强大的抽象能力。

简单来说,Excel 宏指的是,使用 Excel 内置的编程语言 VBA (Visual Basic for Applications)写的,能在 Excel 环境里运行的一系列操作指令。Excel宏就是一系列的操作步骤,比如在单元格中输入数据,复制A1的数据到B1,对A1:C3求和等等,这些操作步骤有简单有复杂。当某些操作步骤需要不断重复时,我们就要考虑录制宏了。我们在 Excel 里手动进行的几乎所有操作,宏(VBA)也都可以操作。

就像数字电影是采用摄像机用“数字”记录下来的,Excel中的“宏”是用一种语言保存下来的,这种语言就是VBA语言,这种VB语言可以在Excel中编写一些语句和代码,我们通过执行这些语言和代码可以完成一些特别操作,可以让Excel听我们的指挥,录制宏就是把这些动作用VB语言记录下来,当我们需要重复这些操作时,我们只需要执行录制的宏就可以了。

宏,就是一个自动化完成重复工作的工具。而且,只要会用 Excel,就可以学会录制并使用宏,提高工作效率。

二、如何启用宏编辑

Excel启用宏编辑时,由于版本不同,菜单变化比较大,可在网上找到和相同版本的宏启用方法。

下面是EXCEL 2010启用宏编辑过程图解:

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(1)

图1:点击Excel表格上方菜单【文件】下的【选项】

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(2)

图2:在选项窗口中,点击左侧的【信任中心】命令,然后在右侧显示内容中单击【信任中心设置】按钮。

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(3)

图3:参照图中选择启用所有宏和挑勾信任VBA对象模型访问,点击【确定】按钮即可

另外,EXCEL文档启用了宏后,应该保存为扩展名为*.xlsm形式的文件,当打开一个带有宏代码的Excel表格时,在表格顶部会出现提示“宏已被禁用”。如果对文件内容了解,可以单击旁边显示的按钮【启用内容】可以快速启用表格中的宏代码。启用后,上面的黄色警告提示会消失。

三、宏的制作方法

录制宏就是把在EXCEL上的操作动作用VB语言记录下来,当需要重复操作这些动作时,我们只需要按宏名称执行这些语言代码就可以了。

下面我们需要录制这样一段代码:

任务1:在一个空白EXCEL表中,循序从单元格A1-A5输入5个数字:1、2、3、4、5,然后在A6中求和

1、开启宏录制按钮

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(4)

图4:点击录制宏按钮后,弹出录制新宏菜单

2、给宏命名

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(5)

图5:给宏命名后点击【确定】,系统进入录制状态

3、中EXCEL表中完成“myHCode1”

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(6)

图6:回车或按Enter键获得求和结果

4、结束录制宏

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(7)

图7:点击表格左下角按钮即可

5、宏的执行

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(8)

图8:首先点击【开发工具】按钮。注意,A1-A6的数据被清空

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(9)

图9:点击图中宏按钮

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(10)

图10:我们第一个宏的名称“myHCode1”已经在列表中。按【执行】按钮

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(11)

图11:'任务'的操作结果有名称为myHCode1宏代码自动完成

6、观察宏代码

图9中点击【宏】,在在图10中点击【编辑】按钮,宏代码如下图:

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(12)

图12:Excel关于引用有两种表示的方法,即A1 和 R1C1 引用样式,通常我们使用A1引用样式

作为初学者,从代码中也可以看出EXCEL表格操作动作和VBA宏代码的对应关系。通常程序员写的VBA代码和宏自动记录的代码不一样,程序员水平越高,代码越简练。

下面把“myHCode1”推给ChatGPT:

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(13)

图13:我不太习惯Range对象赋值,修改一下Prompt for ChatGPT

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(14)

图14:这是修改后的Prompt

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(15)

图15:这段代码符合我的编程习惯

将上面代码替换宏编辑框中的宏代码可以完成同样的任务。

对于程序员来说,主流软件都可以用ChatGPT写代码,前提是有点编程基础,能提出准确需求。

ChatGPT等AI产品的平民化对于许多行业从业者机遇与挑战同在!

最后,如果你不知如何开启上图“开发工具”选项卡,可参考如下步骤:Excel 打开“开发工具面板”->“文件”->“选项”->“自定义功能区”->“勾选开发工具”

excel宏指令打开vba窗口(EXCEL宏编程与ChatGPT-EXCEL)(16)

图1:6:点击【确定】,“开发工具”将出现在菜单栏中

希望通过本文能让你进入VBA编程门槛,了解VBA基本工作环境和方法,有ChatGPT加持,不用多年编程训练,也许你就能完成一个老程序员才能承担的项目。

下一篇:自定义函数与ChatGPT - EXCEL VBA(2)

,