批量处理案例
本页面展示了灵析表格在批量处理场景中的典型应用。通过将函数与 Excel 的填充功能结合,可以轻松实现大批量数据的自动化处理。
函数名说明
本文示例使用英文函数名(如 f_Rename),适用于所有语言版本。如安装的是中文版,请将函数名替换为对应的中文名(如 f_重命名)。各函数的中英文名称对照请参考对应函数文档。
案例 1:文件批量重命名
场景描述
需要将文件夹中的大量文件按照统一规则重命名,例如添加前缀、修改扩展名或按对照表批量重命名。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
f_GetList | f_获取文件列表 | 获取文件夹下所有文件列表 |
f_Extension | f_文件扩展名 | 获取文件扩展名 |
f_Name | f_获取文件名 | 获取文件名(不含扩展名) |
f_Rename | f_重命名 | 执行文件重命名 |
操作示例
获取文件列表
首先获取目标文件夹中的所有文件:
=f_GetList("C:\Photos", TRUE, "*.jpg")该公式会返回所有 JPG 文件的完整路径列表,溢出到相邻单元格。
单个文件重命名
=f_Rename("C:\files\old.txt", "new.txt")新文件名只需包含文件名和扩展名,函数会自动保留原文件所在目录。
按规则批量重命名
在 Excel 中建立文件名对照表,A 列为原始文件路径,B 列为新文件名:
| A 列(原始路径) | B 列(新文件名) |
|---|---|
| C:\Photos\IMG_001.jpg | 照片_001.jpg |
| C:\Photos\IMG_002.jpg | 照片_002.jpg |
在 C 列输入重命名公式并向下填充:
=f_Rename(A2, B2)动态生成新文件名
如果需要按规则自动生成新文件名,可以结合 Excel 内置函数:
=f_Rename(A2, "照片_" & TEXT(ROW()-1, "000") & f_Extension(A2))该公式自动拼接「照片_」前缀、行号和原文件扩展名。
批量处理技巧
- 使用
f_GetList一次性获取所有文件路径 - 在相邻列编写新文件名公式
- 选中公式单元格,双击右下角填充柄向下填充
- 所有重命名操作一次性执行完成
案例 2:文本批量处理
场景描述
需要批量处理大量文本数据,如统一格式、去除特殊字符、批量替换、批量提取等。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
str_Replace | wb_文本替换 | 批量替换文本内容 |
str_RegexExtract | wb_正则提取 | 按正则表达式提取内容 |
str_RegexReplace | wb_正则替换 | 按正则表达式替换内容 |
str_Trim | wb_去首尾空格 | 去除首尾空白字符 |
str_Concat | wb_文本连接 | 连接多个文本 |
操作示例
批量去除空格和特殊字符
=str_Trim(str_Replace(A2, " ", ""))该公式先去除所有空格,再去除首尾空白字符。
批量替换全角符号为半角
=str_Replace(A2, ";|,|。", ";|,|.")str_Replace 支持用 | 分隔多个查找内容,一次性替换多个字符。
正则提取手机号
=str_RegexExtract(A2, "1[3-9]\d{9}", FALSE)纵向输出所有匹配的手机号。第三个参数 FALSE 表示纵向输出。
正则替换手机号中间四位
=str_RegexReplace(A2, "(\d{3})\d{4}(\d{4})", "$1****$2")使用分组引用 $1 和 $2 保留前 3 位和后 4 位,中间 4 位替换为 ****。
批量添加前后缀
="【" & A2 & "】"使用 Excel 内置的文本连接运算符 & 即可实现。
批量处理技巧
- 在第一行输入处理公式
- 选中单元格,双击右下角填充柄
- 整列数据自动处理完成
- 可使用「选择性粘贴 → 值」将公式结果转为静态文本
案例 3:图片格式批量转换
场景描述
需要将大量图片从一种格式转换为另一种格式,例如将 JPG 转为 PNG。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
img_Conv | img_图片转换 | 图片格式转换 |
格式代码对照
| 代码 | 格式 |
|---|---|
| 1 | BMP |
| 2 | JPG |
| 3 | GIF |
| 4 | TIFF |
| 5 | PNG |
操作示例
单张图片格式转换
将 JPG 转为 PNG:
=img_Conv("C:\images\photo.jpg", 5, "C:\images\photo.png")第二个参数 5 表示目标格式为 PNG,第三个参数为保存路径。
批量转换
在 Excel 中建立转换清单:
| A 列(源文件路径) | B 列(目标文件路径) |
|---|---|
| C:\images\file1.jpg | C:\images\file1.png |
| C:\images\file2.jpg | C:\images\file2.png |
在 C 列输入公式并向下填充:
=img_Conv(A2, 5, B2)案例 4:文件夹批量创建
场景描述
需要批量创建文件夹,如按月份、按部门创建目录结构。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
f_CreateDir | f_创建目录 | 创建文件夹(自动创建父级目录) |
操作示例
按月份批量创建
=f_CreateDir("C:\2025\01")
=f_CreateDir("C:\2025\02")
=f_CreateDir("C:\2025\03")按部门批量创建
A 列为部门名称,B 列输入公式:
=f_CreateDir("C:\公司\" & A2)向下填充即可批量创建所有部门文件夹。
创建嵌套目录
f_CreateDir 会自动创建路径中所有不存在的父级目录:
=f_CreateDir("C:\2025\销售部\第一季度")按日期动态创建
=f_CreateDir("C:\Data\" & TEXT(TODAY(), "yyyyMMdd"))每天打开文件即可自动创建当天日期对应的文件夹。
案例 5:批量数据校验
场景描述
需要批量校验数据合法性,如手机号、身份证号、邮箱等。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
idc_Check | sfz_校验身份证 | 身份证号合法性校验 |
str_RegexExtract | wb_正则提取 | 正则表达式格式验证 |
操作示例
批量校验身份证
=idc_Check(A2)返回 合法 或 不合法。
结合 IF 函数输出更友好的结果:
=IF(idc_Check(A2)="合法", "有效", "无效")批量校验手机号
=IF(str_RegexExtract(A2, "1[3-9]\d{9}", TRUE)=A2, "有效", "无效")批量校验邮箱
=IF(str_RegexExtract(A2, "[\w\.]+@[\w\.]+", TRUE)=A2, "有效", "无效")校验模板示例
| A 列(数据) | B 列(类型) | C 列(校验公式) | C 列(结果) |
|---|---|---|---|
| 13800138000 | 手机号 | =IF(str_RegexExtract(A2,"1[3-9]\d{9}",TRUE)=A2,"有效","无效") | 有效 |
| 11010519900307283X | 身份证 | =idc_Check(A3) | 合法 |
| test@email.com | 邮箱 | =IF(str_RegexExtract(A4,"[\w\.]+@[\w\.]+",TRUE)=A4,"有效","无效") | 有效 |
案例 6:自动化数据备份
场景描述
需要定期备份数据文件到指定位置,并按日期命名备份文件。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
f_Copy | f_复制文件 | 复制文件 |
f_GetList | f_获取文件列表 | 获取文件列表 |
f_ModificationTime | f_文件修改时间 | 获取文件最后修改时间 |
操作示例
备份单个文件
=f_Copy("C:\data\important.xlsx", "D:\backup\important_backup.xlsx")按日期自动命名备份
=f_Copy("C:\data\report.xlsx", "D:\backup\report_" & TEXT(TODAY(),"YYYYMMDD") & ".xlsx")仅备份更新过的文件
通过比较源文件和备份文件的修改时间,判断是否需要备份:
=IF(f_ModificationTime("C:\data\report.xlsx") > f_ModificationTime("D:\backup\report.xlsx"), f_Copy("C:\data\report.xlsx", "D:\backup\report.xlsx", TRUE), "无需备份")第三个参数 TRUE 表示覆盖已存在的同名文件。
自动化建议
配合 Windows 任务计划程序实现无人值守备份:
- 在 Excel 中编写备份公式
- 使用任务计划程序定时打开该 Excel 文件
- 文件打开时自动执行公式计算,完成备份
案例 7:数据导入导出
场景描述
需要在 Excel 文件、CSV 文件和数据库之间批量导入导出数据。
使用函数
| 函数名(英文) | 函数名(中文) | 功能 |
|---|---|---|
f_Read | f_读取文本文件 | 读取文本/CSV 文件内容 |
f_Write | f_写入文本文件 | 写入文本到文件 |
json_JsonToTable | json_Json转表格 | JSON 数据转表格 |
json_TableToJson | json_表格转Json | 表格数据转 JSON |
mysql_select | mysql_select | 数据库查询 |
操作示例
读取 CSV 文件内容
=f_Read("C:\data\sales.csv")将数据写入文件
=f_Write("C:\export\output.txt", A2, FALSE)第三个参数 FALSE 表示覆盖写入,TRUE 表示追加写入。
数据库数据导出为文件
=f_Write("C:\export\orders.csv", mysql_select("orders", "*", "status='completed'", "order_date DESC"))表格数据转为 JSON
=json_TableToJson(A1:D100)将包含标题行的表格区域转换为 JSON 数组字符串。