乐于分享
好东西不私藏

Excel自动化操作完整教程

Excel自动化操作完整教程
Excel 自动化主要 4 种方式:录制宏、VBA代码、Power Query、Office脚本(JS),按简单到复杂排序,日常优先用录制宏 / Power Query,重复批量任务用 VBA,网页版/365用Office 脚本。
注意:保存带宏的文件,后缀必须是.xlsm,普通.xlsx不能存宏代码。

一、录制宏(零基础,不用写代码)

适合:重复的鼠标键盘操作(格式调整、复制粘贴、筛选、排序)

步骤

  1. 调出【开发工具】选项卡文件→ 选项 → 自定义功能区 → 勾选开发工具→ 确定。
  2. 点击【开发工具】→【录制宏】
  3. 设置:
  • 宏名:不能有空格,例如批量设置格式
  • 快捷键:设置 Ctrl + 字母(如Ctrl+Shift+Q)
  • 保存在:当前工作簿(只这个文件生效)
4.点【确定】,接下来你的每一步操作都会被记录
5.做完需要的操作,回到开发工具→【停止录制】
6.运行宏:开发工具→宏,选中宏名点执行,或者按你设置的快捷键。
注:录制宏缺点:死板,完全复刻鼠标动作;遇到行数变化容易出错,适合固定格式重复工作。

二、VBA(Visual Basic,强大脚本,可写代码)

适合:循环处理、批量读写、判断逻辑、批量生成报表、批量导出文件
打开VBA 编辑器
快捷键:Alt + F11
  1. 左侧工程窗口,右键你的工作簿→ 插入 → 模块
  2. 在右侧编辑区写代码,示例简单代码:
Sub 批量填充颜色()
Dim i As Integer '循环第2行到100行A列
For i = 2 To 100
If Cells(i, 1).Value > 100 Then
Cells(i, 1).Interior.Color = RGB(255, 200, 200) '标红底色
End If
Next i
End Sub
3.F5运行,或者回到表格开发工具→宏执行。
常用 VBA 小场景:
  • 循环遍历每一行数据
  • 批量新建工作表、批量另存文件
  • 自动汇总多个工作表数据
  • 弹窗提示、判断条件
安全提醒:打开带宏文件时,Excel 顶部点【启用内容】,否则代码不运行。

三、Power Query(无代码数据自动化,数据清洗首选)

不需要代码,专门做数据处理:合并多表、清洗、去重、拆分列、多文件合并,刷新即可自动更新结果。
适合:数据源更新后,一键刷新得到结果,不用重复做复制粘贴。

操作步骤

  1. 选中数据区域→【数据】选项卡 →【来自表格 / 区域】
  2. 进入 Power Query 编辑器,界面可视化操作:删除列、拆分、筛选、替换值、追加查询(合并多个表)
  3. 处理完点【关闭并上载】,数据输出到新工作表
  4. 以后原始数据修改,右键结果表→【刷新】,自动全部重新计算,实现自动化。
🔥高频实用场景:
  1. 一个文件夹下批量导入全部 Excel 文件合并成一张总表(Power Query 获取数据→自文件→自文件夹),新增文件直接刷新就自动合并。
  2. 清洗脏数据、拆分文本、多表关联。

四、Office 脚本(JavaScript,Microsoft365 网页版 / 新版桌面)

新式自动化,用 JS,适合云端、自动化平台调用,开发工具:【自动】选项卡,录制脚本,生成 JS 代码。
旧版Excel(2016/2019)没有这个功能。

四种自动化选型对照表

表格

方案

是否写代码

适用场景

版本要求

录制宏

无代码

简单重复格式操作

全版本

VBA

VB代码

复杂循环、导出文件、弹窗逻辑

全版本

Power Query

可视化

数据清洗、多文件合并,刷新更新

Excel2016 及以上

Office 脚本

JS代码

365 网页、云端自动化

Microsoft365

补充小坑

  1. 宏文件保存类型:.xlsm,普通 xlsx 丢失宏
  2. Power Query 处理大量数据性能远高于VBA
  3. VBA 录制出来的代码会有很多冗余,可以手动精简。
  4. 公司部分电脑会禁用宏,需要管理员放开权限。