如何在 Excel 中编写宏:完整教程

⚡ 智能摘要

Excel 宏可以记录一系列步骤,并通过单击即可重复执行这些步骤,从而实现重复性任务的自动化。本页将解释什么是宏和 VBA,宏安全基础知识,并展示一个导入和格式化银行收据 CSV 文件的示例宏。

  • ⏺️ 核心定义: Excel 宏可以记录您的操作步骤,并根据需要多次回放,从而节省重复性工作的时间。
  • ‍💻 VBA: Visual Basic for Applications 是 Excel 在宏记录过程中自动写入的语言,因此无需编写代码即可开始使用。
  • 🛠️ 开发者选项卡: 宏位于“开发工具”选项卡中,该选项卡默认情况下是隐藏的,可通过“选项”>“自定义功能区”启用。
  • 🔒 安全性: 宏默认处于禁用状态,因为它们可能被滥用,所以请仅从可信来源运行宏。
  • 💾 文件格式: 包含宏的工作簿必须保存为启用宏的 .xlsm 格式。
  • ▶️ 录制和运行: 录制宏按钮用于记录步骤,停止录制按钮用于结束录制,宏按钮用于重放录制内容。

如何在Excel中编写宏

什么是 Excel 宏?

Excel 宏 是一个记录和回放工具,它只是记录您的 Excel 步骤,宏将根据需要多次回放。VBA 宏可以节省时间,因为它们可以自动执行重复任务。它是一段在 Excel 环境中运行的编程代码,但您不需要成为程序员就可以编写宏。但是,您需要具备 VBA 的基本知识才能在宏中进行高级修改。

为什么在 Excel 中使用 Excel 宏?

作为人类,我们是习惯的动物。我们每天、每个工作日都会做一些事情。如果有某种神奇的方法,只需按下一个按钮,我们所有的日常任务就完成了,那不是更好吗?我听到你说是的。Excel 中的宏可以帮助您实现这一点。用外行的话来说,宏被定义为 Excel 中常规步骤的记录,您可以使用单个按钮重播。

例如,您是一家自来水公司的收银员。有些客户通过银行付款,一天下来,您需要从银行下载数据,并将其格式化为符合业务需求的形式。

您可以将数据导入 Excel 和格式。第二天你将被要求执行相同的仪式。它很快就会变得无聊和乏味。 宏通过自动执行此类常规任务来解决此类问题。您可以使用宏来记录

  • 导入数据
  • 格式化以满足您的业务报告要求。

用外行人能理解的语言来说,VBA 是什么?

VBA 是 Visual Basic for Applications 的首字母缩写。 它是一种编程语言,Excel 使用它来记录您执行日常任务时的步骤。您无需成为程序员或技术人员即可享受 Excel 中宏的好处。Excel 具有自动为您生成源代码的功能。阅读文章 VBA ,了解更多详情。

Excel 宏基础知识

宏是开发人员功能之一。默认情况下,Excel 中不显示开发人员选项卡。您需要通过自定义报告来显示它

Excel 宏可被攻击者用来破坏您的系统。默认情况下,Excel 中禁用它们。如果您需要运行宏,则需要启用运行宏,并且只运行您知道来自可信来源的宏

如果要保存 Excel 宏,则必须将工作簿保存为启用宏的格式 *.xlsm

宏名不应包含任何空格。

创建宏时务必填写宏的描述。这将帮助您和其他人了解宏的作用。

在 Excel 中录制宏的分步示例

现在,在本 Excel 宏教程中,我们将学习如何在 Excel 中创建宏:

我们将使用 Excel 宏的重要性中描述的场景。对于本 Excel 宏教程,我们将使用以下 CSV 文件在 Excel 中编写宏。

在 Excel 中录制宏

您可以在此处下载上述文件

下载上述 CSV 文件和宏

我们将创建一个启用宏的模板,它将导入上述数据并格式化以满足我们的业务报告要求。

启用开发者选项

要执行 VBA 程序,您必须有权访问 Excel 中的开发人员选项。启用开发人员选项(如下面的 Excel 宏示例所示),并将其固定到 Excel 中的主功能区中。

步骤1)进入主菜单“文件”

选择选项“选项”。

启用开发者选项

启用开发者选项

步骤2) 现在将打开另一个窗口,在该窗口中执行以下操作

  • 单击自定义功能区
  • 勾选“开发者”选项
  • 点击“确定”按钮

启用开发者选项

步骤3) 开发人员选项卡

您现在将能够在功能区中看到“开发人员”选项卡

启用开发者选项

步骤4) 下载CSV

首先,我们将了解如何在电子表格上创建命令按钮并执行程序。

  • 在 C 盘中创建一个名为“银行收据”的文件夹
  • 粘贴您下载的receipts.csv文件

启用开发者选项

步骤5) 记录宏

  1. 点击开发者选项卡
  2. 点击“录制宏”,如下图所示

启用开发者选项

您将看到以下对话窗口

启用开发者选项

  1. 输入 ImportBankReceipts 作为宏名称。
  2. 第二步将默认存在
  3. 如上图所示输入描述
  4. 点击“确定”标签

步骤6) 执行宏 Opera您想要记录的步骤

  • 将光标放在单元格 A1 中
  • 点击“数据”选项卡
  • 单击获取外部数据功能区栏上的“来自文本”按钮

您将看到以下对话窗口

启用开发者选项

  1. 转到存储 CSV 文件的本地驱动器
  2. 选择 CSV 文件
  3. 单击“导入”按钮

您将获得以下向导

启用开发者选项

完成上述步骤后,单击下一步按钮

启用开发者选项

按照上述步骤操作,然后单击下一步按钮

启用开发者选项

  • 点击完成按钮
  • 您的工作簿现在应如下所示

启用开发者选项

步骤7) 格式化数据

将列加粗,添加总计并使用 SUM 函数获取总金额。

启用开发者选项

步骤8) 停止录制宏

现在我们已经完成了日常工作,我们可以点击停止录制宏按钮,如下图所示

启用开发者选项

步骤9) 重放宏

在保存工作簿之前,我们需要删除导入的数据。我们这样做是为了创建一个模板,每次我们有新收据并想要运行 ImportBankReceipts 宏时,我们都会复制该模板。

  • 突出显示所有导入的数据
  • 右键单击突出显示的数据
  • 单击“删除”
  • 点击另存为按钮
  • 以启用宏的格式保存工作簿,如下所示

启用开发者选项

  • 复制新保存的模板
  • 打开它
  • 点击开发者选项卡
  • 单击宏按钮

您将看到以下对话窗口

启用开发者选项

  1. 选择 ImportBankReceipts
  2. 突出显示宏的描述
  3. 点击运行按钮

您将获得以下数据

启用开发者选项

恭喜,您刚刚在 Excel 中创建了第一个宏。

绝对宏录制与相对宏录制

录制宏之前,“开发工具”选项卡上的“使用相对引用”按钮决定了宏如何记住您单击的单元格。选择正确的模式是录制的宏能否在新数据上正常运行的最常见原因。

时尚 它是如何记录的 最适合
绝对值(默认) 每次都记录确切的单元格地址,例如 A1 总是从同一个单元格开始的任务,例如导入到 A1 单元格。
亲属 记录从当前单元格到固定地址的移动轨迹 沿着列表向下重复执行的任务,无论光标位于何处。

💡提示: 上面的 ImportBankReceipts 宏使用绝对引用进行记录,因为它总是从单元格 A1 开始填充工作表。如果每次都需要在不同的行上运行相同的步骤,请在记录之前启用“使用相对引用”。

常见问题

标准的 .xlsx 文件无法存储宏代码。请将工作簿另存为启用宏的 .xlsm 格式。如果另存为 .xlsx 格式,Excel 会警告宏将从文件中移除。

宏代码可能执行有害操作,因此 Excel 默认禁用宏并显示安全警告。仅对来自可信来源的文件启用宏,如有疑问,请检查代码。

打开“开发工具”选项卡,单击“宏”,选择宏,然后单击“编辑”。这将打开 Visual Basic 编辑器,其中记录的步骤会以 VBA 代码的形式显示,您可以对其进行更改和保存。

是的。Excel 中的 Copilot 等 AI 功能和代码助手可以根据任务的简单描述生成 VBA 代码。用户将代码粘贴到 Visual Basic 编辑器中,并在数据副本上进行测试。

是的。AI 助手会读取生成的 VBA 代码,并用通俗易懂的语言描述每个步骤,还会提出简化或提高安全性的建议。用户在使用前会查看解释并测试任何更改。

总结一下这篇文章: