wps宏

某天下午,同事小李盯着电脑屏幕,眉头紧锁。他需要把 200 个 Excel 工作簿里的数据汇总到一张表里,每个文件格式还不一样。手动复制粘贴,估计要忙到半夜。他问我:“有没有办法一键搞定?”我告诉他,WPS 里的“宏”就是干这个的。宏能帮你把重复操作录下来,然后自动执行,甚至还能用代码写更复杂的逻辑。这篇文章就是为你准备的,从宏是什么、怎么录、怎么写,到常见坑怎么避,读完你就能上手。

wps宏

宏到底是什么?先别被“编程”吓到

宏的本质:把操作录成“录像”再回放

宏(Macro)在 WPS 里,本质是一段可重复执行的指令序列。你可以把它想象成“操作录像机”:你手动做一遍(比如设置字体、合并单元格、复制粘贴),WPS 把每一步记下来,存成一个脚本。下次需要同样操作时,点一下播放,它就自动重放一遍。

这个脚本是用 VBA(Visual Basic for Applications)语言写的。你不需要一开始就懂代码,因为 WPS 提供了“录制宏”功能,你操作,它自动生成代码。等你熟悉了,再手动修改代码实现更高级的功能。

关键点:宏不是病毒,也不是魔法,它只是一个自动化工具。 但要注意,宏文件(.xlsm 或 .et)可能携带恶意代码,所以只运行你信任的来源。

宏能做什么?三个典型场景

  • 批量格式调整:比如把整个工作表的字体统一为微软雅黑、10号、居中,一键搞定。
  • 数据清洗与汇总:删除空行、去重、合并多个工作表的数据。
  • 自动生成报告:从原始数据计算指标,然后生成图表并导出为 PDF。

这些操作如果手动做,耗时且易错。宏能让你从重复劳动中解放出来。

第一步:开启宏功能并录制你的第一个宏

检查 WPS 版本与宏支持

不是所有 WPS 版本都支持宏。你需要使用 WPS 个人版(专业版或政府版通常也支持)。如果你用的是 WPS 免费版,可能没有“开发工具”选项卡。这时需要先下载安装支持宏的版本。你可以通过 金山文档下载 官网获取最新版,安装时选择“自定义安装”,勾选“VBA 支持”组件。

安装完成后,打开 WPS 表格,点击菜单栏的“开发工具”选项卡。如果看不到,可以右键点击菜单栏空白处,选择“自定义功能区”,在右侧勾选“开发工具”。

录制一个简单宏:自动设置表头样式

  1. 在 WPS 表格中,选中你要设置的表头区域(比如 A1:F1)。
  2. 点击“开发工具” -> “录制宏”。
  3. 在弹出的对话框中,给宏起个名字(比如“设置表头”),可以设置快捷键(比如 Ctrl+Shift+H),然后点击“确定”。
  4. 开始操作:设置字体为加粗、背景色为浅蓝色、字体颜色为白色、居中对齐。
  5. 操作完成后,点击“开发工具” -> “停止录制”。

现在,你选中任意区域,按 Ctrl+Shift+H,或者点击“宏” -> “查看宏” -> “运行”,就能自动应用刚才的样式。

注意:录制宏时,操作要精准,不要有多余的点击或选择,否则宏会记录多余步骤。

第二步:理解 VBA 代码,从录制到编写

录制宏生成的代码长什么样?

打开 VBA 编辑器(开发工具 -> Visual Basic),你会看到类似下面的代码:

Sub 设置表头()
    With Selection.Font
        .Bold = True
        .Color = -4142 '白色
    End With
    With Selection.Interior
        .Color = 15773696 '浅蓝色
    End With
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With
End Sub

这段代码就是宏的“剧本”。SubEnd Sub 之间是操作指令。你可以直接修改数值,比如把颜色代码换成其他值。

手动编写一个更实用的宏:批量删除空行

假设你经常需要清理数据中的空行。录制宏很难处理“判断某行是否为空”的逻辑,但写代码很容易。

  1. 按 Alt+F11 打开 VBA 编辑器。
  2. 在左侧工程资源管理器中,右键点击你的工作簿 -> 插入 -> 模块。
  3. 在新模块中粘贴以下代码:
Sub 删除空行()
    Dim rng As Range
    Dim i As Long
    Set rng = ActiveSheet.UsedRange
    For i = rng.Rows.Count To 1 Step -1
        If Application.CountA(rng.Rows(i)) = 0 Then
            rng.Rows(i).Delete
        End If
    Next i
End Sub
  1. 关闭编辑器,回到表格。按 Alt+F8,选择“删除空行”并运行。

这个宏从最后一行向上检查,如果整行为空则删除。使用 Step -1 是为了避免删除行后索引错乱。

建议:初学者先录制宏,再查看生成的代码,尝试修改参数,逐步学会自己写。

第三步:验证宏的效果与安全性

如何测试宏是否按预期工作?

在运行宏之前,最好先备份原始文件。你可以复制一份工作表,在副本上测试。运行宏后,检查关键数据是否被正确修改,格式是否一致。如果宏涉及删除或覆盖数据,务必先确认逻辑正确。

WPS 的宏默认会提示“是否启用宏”。如果你信任该文件,点击“启用”。如果文件来源不明,建议先扫描病毒或不要启用。

宏的安全设置

在“开发工具” -> “宏安全性”中,你可以设置不同级别:

安全级别 说明 适用场景
禁用所有宏(不推荐) 所有宏都不运行,最安全但无法使用自动化 仅查看文件,不执行任何宏
禁用所有宏并发出通知 打开文件时提示是否启用,默认禁用 日常使用,推荐选择
启用所有宏(不推荐) 所有宏自动运行,有风险 仅用于你完全信任的本地文件

建议选择“禁用所有宏并发出通知”,这样你可以在确认文件安全后手动启用。

第四步:进阶优化——让宏更智能、更高效

使用相对引用录制宏

默认录制宏是“绝对引用”,即宏会记住你点击的具体单元格(比如 A1)。如果你希望宏能在不同位置执行相同操作(比如在任意选中单元格下方插入一行),需要开启“相对引用”。

在“开发工具”选项卡中,点击“使用相对引用”按钮(图标是一个箭头指向四个方向),然后再开始录制。这样录制的宏会基于当前选中位置执行操作。

为宏添加错误处理

当宏运行时,如果遇到意外情况(比如工作表被保护、数据为空),可能会报错中断。你可以添加简单的错误处理代码:

Sub 安全删除空行()
    On Error Resume Next
    Dim rng As Range
    Dim i As Long
    Set rng = ActiveSheet.UsedRange
    For i = rng.Rows.Count To 1 Step -1
        If Application.CountA(rng.Rows(i)) = 0 Then
            rng.Rows(i).Delete
        End If
    Next i
    On Error GoTo 0
End Sub

On Error Resume Next 让宏在出错时跳过错误继续执行,On Error GoTo 0 恢复正常的错误提示。这样宏更健壮。

将宏绑定到按钮或快捷键

为了方便日常使用,你可以把常用宏添加到快速访问工具栏或工作表内的按钮上。

  • 快捷键:在录制宏时设置,或后期在“宏”对话框中选择“选项”来修改。
  • 按钮:在“开发工具”中点击“插入” -> “表单控件” -> “按钮”,然后在工作表上画一个按钮,并指定宏。

这样,你只需点击按钮就能运行宏,无需每次都打开宏列表。

常见问题(FAQ)

问:我的 WPS 没有“开发工具”选项卡怎么办?
答:首先确认你安装的是支持宏的版本(如专业版或政府版)。如果版本正确,右键点击菜单栏 -> “自定义功能区” -> 在右侧勾选“开发工具”。如果仍然没有,可能需要重新安装并勾选 VBA 组件。你可以通过 金山文档下载 官网获取完整版。

问:录制宏时,为什么有些操作没被录进去?
答:WPS 的宏录制器只能记录部分操作,比如格式设置、数据输入、单元格选择等。一些高级功能(如数据透视表、图表创建)可能无法完全录制,需要手动编写代码。

问:宏文件保存后,再打开时宏不见了?
答:宏需要保存在启用宏的工作簿格式中。WPS 表格的宏文件扩展名是 .xlsm(Excel 格式)或 .et(WPS 格式)。如果你保存为 .xlsx 或 .et 的普通格式,宏会被自动删除。保存时选择“Excel 启用宏的工作簿 (*.xlsm)”或“WPS 表格 启用宏的工作簿 (*.et)”。

问:如何分享宏给同事?
答:你可以把包含宏的 .xlsm 文件发给同事,对方打开时需启用宏。也可以将 VBA 代码导出为 .bas 文件,然后在对方电脑上导入模块。注意:分享前确保代码安全,不含恶意逻辑。

问:WPS 的宏和 Excel 的宏完全兼容吗?
答:大部分基础 VBA 代码兼容,但部分 WPS 特有的对象或属性可能不同。如果你在 Excel 中写的宏在 WPS 中报错,通常需要调整代码中的对象引用。建议在目标软件中测试。

问:我完全不懂编程,能学会宏吗?
答:完全可以。从录制宏开始,然后尝试修改录制生成的代码中的数字或颜色值。网上有很多 WPS VBA 教程,遇到问题可以搜索。记住,宏的入门门槛很低,进阶则需要多练习。

结语:从手动到自动,宏是你的效率加速器

宏是 WPS 办公软件中一个被低估的利器。通过录制和编写简单的 VBA 代码,你可以把重复、机械的操作交给电脑,把时间花在更有价值的事情上。本文从宏的概念讲起,带你完成了录制、编写、验证和优化的完整流程。如果你还没试过,建议今天就用 金山文档下载 安装支持宏的 WPS 版本,录制一个最简单的宏(比如设置字体),感受自动化的魅力。下一步,你可以尝试用宏处理真实工作中的数据清洗任务,逐步提升自己的自动化能力。

站内推荐

最新文章