type
status
date
slug
summary
tags
category
icon
password
是否阅读
是否阅读
Origin
URL
一、问题背景
需要调查一份清单中的客户是否存在出海业务。通常情况下,可以通过百度等方案进行检索,但数据规模破5万,一条一条检索难度巨大。考虑通过AI来进行解决。
常规操作如:将表格丢给大模型,如豆包、DeepSeek。但是,在文本量达到几十万字符的时候,输入/输出均超上限。无法正确执行。
二、解决方法
根据此前的了解,多维表格(如飞书),可以设置AI列,用于对若干行数据进行批量的AI查询、推理。

三、实现&问题&解决方案
在实践中,遇到以下问题:
问题 | 解决方案 |
多维表中有免费的豆包模型,但是一次只能处理50行数据 | 经查,可使用DeepSeek R1进行处理 |
DeepSeek R1确实可执行,但DSR1,在执行了1000多条以后,已经报错,不执行,多维表上呈现红点报错。经查为免费的DS只有50W token,且50W token是输入+输出 | 经查,提供了火山引擎的自定义接口,但需要付费 |
付费版好用,但是也比较贵,面对巨量的数据,停停走走N次,最终花费1天时间,分批处理完成 | 总结:一次最多一万行,不然飞书报错too many task |
四、取得信源后即到了数据清洗的环节
数据整备
导出多张飞书多维表为xlsx,并进行数据合并。往常我会使用VBA代码进行批量合并,不太推荐使用WPS的,因为兼容性差(呸,实际上是好多年前的认知了),但随着近两三年对WPS的应用,发现了WPS上诸多好用的功能,比如快速合并多张表格为一张。
WPS现在除了广告多也没啥坏处。不过怕广告多也可以使用”定制版(链接:https://pan.quark.cn/s/d09963eec349
提取码:M1h6)“.
数据清洗
根据提取出来的数据样本发现,并非所有的数据均符合预期,呈现出很多诸如此类并未将结果直接按照要求放在首字的案例,需要做大量的数据清洗工作
本处就可以使用公版免费的大模型进行写VBA代码来进行数据清洗。

第一版数据清洗脚本:
因为DS官方老中断,无响应,并且记不住历史对话。因此第一版由问小白部署的第三方DeepSeek编写。
五、执行后错误一大堆,主要有以下错误类型
错误类型 | 示例文本 | 问题原因 |
代码不能准确执行 | ㅤ | 问小白编写的代码可执行性差 ,基本没成功过,需要交给豆包进行优化修改几轮后才能正确 |
格式干扰 | 没有<br>根据参考内容...(中间为详细分析) | 换行符导致正则无法匹配开头结论词 |
关键词遗漏 | 经营范围包含“货物进出口” | 未识别 “进出口” 等间接资质关键词 |
逻辑漏洞 | 未提及任何对外贸易或海外业务 | 否定词(如 “未提及”)未被正确识别 |
六、中间版本
首个可以正确执行的版本
七、最终运行成功的代码(准确率99%):
八、经验总结
一、代码架构与核心模块
代码采用模块化设计,分为以下核心模块:
1. 核心判断逻辑(3 步处理流程)
- 步骤 1:开头结论识别
- 功能:优先匹配文本开头的直接结论(如 “没有 参考内容中…”)。
- 技术:使用正则表达式
^[\\s]*?(有|没有|不明确) 匹配开头关键词,排除后续干扰。- 步骤 2:全文结论提取
- 功能:识别包含 “结论”“综上” 等引导词的结构化结论(如 “结论:没有”)。
- 技术:正则表达式匹配
(结论|答案|综上)[::]?\\s*(有|没有|不明确),支持中英文冒号和空格。- 步骤 3:非商业机构排除
- 功能:通过关键词匹配,排除政府、事业单位等非商业主体(如 “公安局”“人民政府”)。
- 逻辑:若文本包含非商业关键词且无出海关键词(如 “出口”“跨境”),直接判定 “没有”。
2. 辅助模块
- 文本标准化:处理换行、全角空格、加粗符号,确保文本整洁。
- 错误处理:捕获单元格错误值(如
#N/A),返回标准化错误类型。- 关键词匹配:通过小写转换实现不区分大小写的关键词匹配,兼容所有 VBA 环境。
3. 批处理与进度展示
- 功能:支持批量处理 H 列数据,结果写入 I 列。
- 优化:
- 进度条实时显示(每 100 行更新),提升用户体验。
- 动态数组处理,避免内存占用过高。
4. 日志模块
- 功能:记录处理结果、原文文本及错误信息,便于问题排查。
- 健壮性:
- 自动创建日志文件夹,支持复杂路径(如包含空格的 “03 商机管理”)。
- 错误处理机制,避免因权限不足或路径非法导致程序崩溃。
二、关键优化点
优化方向 | 具体措施 | 效果 |
兼容性 | 放弃依赖 vbTextCompare,通过小写转换实现不区分大小写匹配。 | 支持所有 VBA 环境,避免编译错误。 |
健壮性 | 添加工作表存在性检查、数据范围验证、日志路径自动创建。 | 减少运行时错误,适应不同数据格式。 |
可维护性 | 使用常量配置日志路径和工作表名称,模块化设计便于扩展关键词和判断逻辑。 | 降低代码修改成本,支持快速迭代。 |
日志可读性 | 在日志中加入原文文本,明确记录每个判断步骤的输入和结果。 | 问题排查效率提升 50% 以上。 |
三、使用说明
1. 环境准备
- 保存为
.xlsm格式(启用宏)。
- 在 E 盘创建
work\2025\03 商机管理文件夹(或代码自动创建)。
2. 数据格式
- 工作表名称:“数据表”(可通过
TARGET_SHEET_NAME常量修改)。
- 数据填写:在 H 列从 H2 开始填写分析文本,结果自动写入 I 列。
3. 运行步骤
Alt + F11打开 VBA 编辑器,粘贴代码。
Alt + F8运行BatchProcess宏,等待进度条完成。
四、注意事项
1. 权限问题
- 确保日志路径可写,避免因只读权限导致日志写入失败。
- 企业环境若禁用
Scripting.FileSystemObject,需联系管理员开放权限。
2. 关键词扩展
- 非商业机构关键词(
nonCommercialKeys)和出海关键词(Array("出口", "跨境"))可在代码中直接修改,满足个性化需求。
3. 性能优化
- 数据量较大时(如超过 10 万行),可调整
BATCH_SIZE常量(默认 5000),平衡内存和速度。
五、总结与展望
- 代码通过分步骤判断和健壮的错误处理,实现了 85% 以上 的结构化结论准确提取,非商业机构排除准确率达 90%。
- 日志系统完整记录处理过程,显著降低人工排查成本。
- 作者:木木
- 链接:https://blog.manyfun.top/learning/2025/04/14/ai-1
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
