如何从 Excel 中删除宏(完整指南)
Microsoft Excel 提供了强大的宏功能,可以自动执行重复性任务,并完成许多内置 Excel 功能无法实现的操作。然而,在某些情况下,这些宏可能会变得多余,甚至可能带来潜在的安全风险,尤其是在与他人共享工作簿时。在这些时刻,了解如何安全有效地删除宏变得至关重要。本指南旨在引导您通过多种方法从 Excel 工作簿中删除宏,确保在需要时拥有一个干净、精简的文件。
在 Excel 中删除宏之前需要了解的内容
- 当打开一个启用了宏的工作簿并尝试删除宏时,必须首先单击工作簿中的“启用内容”按钮。这是继续删除宏前的必要步骤。
注意:如果您没有看到此按钮,则表示您可以直接删除宏。其原因可能是您自己创建了一个嵌入宏的工作簿并保存了下来。当在同一台计算机上重新打开该工作簿且 Excel 设置未更改时,“启用内容”按钮通常不会显示。这是因为文件来自可信来源(即您自己),并且位于可信位置(您的电脑)。
- 请注意,一旦删除了宏,就无法恢复。为了保护您的工作,建议在删除任何宏之前先创建工作簿的备份副本。
删除特定的宏
步骤 1:打开宏对话框
导航到“开发工具”选项卡并选择“宏”以打开宏对话框。(如果在您的 Excel 中看不到“开发工具”选项卡,请参阅步骤后的说明。)
- 如果您使用的是 Excel 2013 或更高版本,“宏”按钮也可以在“视图”选项卡中找到。
- 快捷键爱好者可以直接按 Alt + F8 访问宏对话框。
步骤 2:选择并删除特定的宏
- 展开“宏所在位置”下拉菜单,并选择要从中删除宏的目标位置。
- 从宏列表中,选择要删除的宏。
- 单击“删除”。
注意:
- 要添加 开发工具 选项卡到 Excel 的功能区,请按照以下步骤操作:
- 右键单击功能区上的任意位置,然后选择 自定义功能区….
- 在出现的窗口右侧的 主选项卡 列表中,勾选 开发工具 旁边的复选框,然后单击 确定.
- 右键单击功能区上的任意位置,然后选择 自定义功能区….
- 如果您打算删除多个宏,则必须对每个单独的宏重复上述过程。有关批量删除所有宏的说明,请继续阅读以下部分。
通过将文件保存为 xlsx 格式删除工作簿中的所有宏
“Excel 工作簿 (*.xlsx)”格式本身不支持宏。因此,将工作簿保存为此特定格式将自动删除所有嵌入的宏。要执行此方法,请按照以下步骤操作:
- 导航到 文件 > 另存为。
- 展开文件类型下拉菜单并选择“Excel 工作簿 (*.xlsx)”格式。
提示:您可以在下拉菜单上方的文本框中输入 .xlsx 文件的新名称。要将文件保存到其他位置,请单击 浏览。
- 单击 保存.
注意:不同 Excel 版本的“另存为”界面可能有所不同。如果您没有看到如上所示的右侧窗格(可选择文件格式),则可以随时单击 浏览 并选择 “Excel 工作簿 (*.xlsx)”格式。
- 在出现的提示框中,选择 是。
结果
结果是,一个新的“.xlsx”格式的无宏文件被保存下来。这个 .xlsx 文件将采用原始 .xlsm 文件的名称,并保存在同一位置。
注意:此方法不会删除用户窗体、Excel 5/95 对话框工作表及类似元素。如果您希望消除这些内容,请参考下一个方法。
使用 Kutools 提供的一键选项删除工作簿中的所有宏
Kutools for Excel 是一款高级 Excel 插件,它为用户提供了一键选项,可以轻松删除工作簿中嵌入的所有宏。只需单击一下,即可清除 VBA 模块、用户窗体、Excel 5/95 对话框以及 Excel 4 XLM 宏工作表。
打开包含要删除宏的工作簿后,导航到 Kutools 选项卡,然后选择 删除 > 删除所有宏。就这样,您完成了!
注意:想访问此功能吗?立即下载 Kutools for Excel!除此之外,Kutools 还有 300 多种其他功能,并提供 30 天试用期。不要再等了,今天就试试吧!
使用 VBA 从文件夹中的工作簿删除所有宏
在本节中,我将演示如何使用 VBA 宏高效地从指定文件夹中的所有工作簿中删除宏。
- 导航到 文件 > 选项 > 信任中心 > 信任中心设置 > 宏设置,然后选择“信任对 VBA 工程对象模型的访问”选项。
- 确保在执行此 VBA 时指定文件夹中的所有工作簿都已关闭。运行时如果有打开的工作簿可能会导致错误。
步骤 1:创建新模块
- 按 Alt + F11 打开 Visual Basic for Applications (VBA) 编辑器。
- 单击 插入 > 模块 以创建一个新模块。
步骤 2:将 VBA 代码复制到模块窗口
复制以下 VBA 代码并将其粘贴到打开的 模块 窗口中。
Sub RemoveMacrosFromWorkbooks()
' Update by ExtendOffice
Dim wb As Workbook
Dim FolderPath As String
Dim filename As String
Dim VBComp As Object
Dim VBProj As Object
With Application.FileDialog(msoFileDialogFolderPicker)
.title = "Select a folder"
.Show
If .SelectedItems.Count = 0 Then
MsgBox "No folder selected. The procedure will exit.", vbExclamation
Exit Sub
End If
FolderPath = .SelectedItems(1)
End With
If Right(FolderPath, 1) <> "\" Then FolderPath = FolderPath + "\"
filename = Dir(FolderPath & "*.xls*")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error Resume Next
Do While filename <> ""
Set wb = Workbooks.Open(FolderPath & filename)
If wb.HasVBProject Then
Set VBProj = wb.VBProject
For Each VBComp In VBProj.VBComponents
VBProj.VBComponents.Remove VBComp
Next VBComp
End If
wb.Close SaveChanges:=True
filename = Dir
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "Macros removal completed!", vbInformation
End Sub
步骤 3:运行 VBA 代码
- 在 模块 窗口中,按 F5 或单击
按钮以执行粘贴的代码。
- 在出现的“选择文件夹”窗口中,选择包含要删除宏的工作簿的文件夹,然后单击 确定。
结果
宏处理完所选文件夹中的所有 Excel 文件并删除其中的宏后,您将看到一个“宏删除完成!”的消息框。
注意:
- 此方法不会删除用户窗体、Excel 5/95 对话框工作表及类似元素。如果您希望消除这些内容,请参考下一个方法。
- 激活“信任对 VBA 工程对象模型的访问”选项可能会带来安全风险。建议仅在运行此代码时启用该选项。确保代码执行完成后取消选择“信任对 VBA 工程对象模型的访问”选项。
使用 Kutools 删除特定工作簿中的所有宏
Kutools for Excel 提供了一种用户友好的方式,可以从多个工作簿中删除所有宏。对于那些不熟悉或不愿使用 VBA 技术的人来说,Kutools 是一个理想的替代方案。有了这个工具,您可以轻松删除 VBA 模块、用户窗体、Excel 5/95 对话框工作表和 Excel 4 XLM 宏工作表。
注意:要运行此功能,您需要信任对 VBA 工程对象模型的访问。在 Excel 中,请导航到 文件 > 选项 > 信任中心 > 信任中心设置 > 宏设置,然后选择“信任对 VBA 工程对象模型的访问”选项。
下载并安装 Kutools for Excel 后,请按照以下步骤操作:
- 选择 Kutools > 删除 > 批量删除所有宏。
- 在 批量删除所有宏 对话框中,列出了所有打开的工作簿以供宏删除。以下是接下来需要做的事情:
- 要添加更多用于宏删除的工作簿,请单击 添加 按钮,并选择 文件 或 文件夹。
- 如果有任何工作簿您希望排除在宏删除过程之外,请单击
按钮将其移除。
- 在对话框中列出所有需要删除宏的工作簿后,单击 确定。
结果
将弹出一个新对话框,指示 Kutools 已处理了多少个工作簿以进行宏删除。按下 确定后,将生成一个自动化摘要工作簿以概述结果。
注意:
- 想访问此功能吗?立即下载 Kutools for Excel!此外,Kutools 还提供了 300 多种其他功能。30 天免费试用,没有理由再等待。今天就试试吧!
- 激活“信任对 VBA 工程对象模型的访问”选项可能会带来安全风险。建议仅在运行此功能时启用该选项。确保功能执行完成后取消选择“信任对 VBA 工程对象模型的访问”选项。
以上是关于在 Excel 中删除宏的所有相关内容。我希望本教程对您有所帮助。如果您想探索更多 Excel 技巧,请点击这里访问我们包含数千篇教程的广泛集合。
最佳办公效率工具
🤖 | Kutools AI 助手:基于智能执行、生成代码、创建自定义公式、分析数据并生成图表、调用 Kutools 函数等功能,彻底改变数据分析方式… |
热门功能:查找、高亮或标记重复项 | 删除空行 | 合并不丢失数据的列或单元格 | 四舍五入 ... | |
高级 LOOKUP:多条件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 .... | |
高级下拉列表:快速创建下拉列表 | 从属下拉列表 | 多选下拉列表 .... | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域和列 ... | |
精选功能:网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...)... | |
排名前 15 的工具集: 12 种文本 工具(添加文本、删除特定字符等) | 50 多 种图表 类型(甘特图等) | 40 多种实用 公式(基于生日计算年龄等) | 19 种插入 工具(插入二维码、根据路径插入图片等) | 12 种转换 工具(小写金额转大写、汇率转换等) | 7 种合并与分割 工具(高级合并行、分割单元格等) | 还有更多... |
使用 Kutools for Excel 提升您的 Excel 技能,体验前所未有的高效。 Kutools for Excel 提供超过 300 种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...
Office Tab 将标签式界面引入 Office,让您的工作更加轻松
- 在 Word、Excel、PowerPoint 中启用标签式编辑和阅读。
- 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中进行操作。
- 将您的生产力提升 50%,每天为您减少数百次鼠标点击!