VBA-0057-销售数据多条件筛选统计窗体-图文教程

3 次浏览

VBA 靠嘴编程 · 实战教程

销售数据多条件筛选统计窗体

用 WorkBuddy 从需求描述、窗体预览到自动写回结果

VBA-0057-销售数据多条件筛选统计窗体-图文教程

系列封面:Excel VBA 销售数据一键分析

一句话理解这个案例

不手写窗体、不逐段拼代码,只要把数据来源、筛选条件、统计口径、写回规则和验收数字说清楚,WorkBuddy 就能配合 VBAYYDS 语音编程完成可运行的 VBA UserForm。

案例编号 VBA-0057 · 适合完全零基础学习者 · 明亮春日蓝窗体

1 先看结果与完成效果

最终窗体面向日常销售明细,用户不用改动源表,只需选择日期范围、区域、产品类别和销售员,就能得到订单数、销量、销售额与毛利额。确认后,统计快照会追加写入“统计结果”,并保存工作簿。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 1 组合筛选完成后,结果写入统计表并保存工作簿

功能边界

• 5 个筛选项:开始日期、结束日期、区域、产品类别、销售员。

• 4 项统计:订单数、销量、销售额、毛利额。

• 4 个按钮:筛选统计、清空条件、写入结果、关闭。

• 空白的区域、产品类别或销售员表示“全部”,日期边界计入统计。

• 无匹配时显示 0 且禁止写入;写入前必须进行第 2 次确认。

• 关闭并重新打开窗体时,自动回读最近一条统计记录。

固定验收数字

组合 A:2026-02-01 至 2026-03-31,华东、办公设备、陈晨 → 2 单、7 件、销售额 26300 元、毛利额 7769 元。

原始数据与统计口径

源表共有订单编号、销售日期、区域、销售员、产品类别、产品名称、销售渠道、数量、单价、销售额、毛利率和毛利额等字段。窗体不改动这些明细,只读取符合条件的记录并生成统计快照。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 2 原始销售明细是筛选与统计的唯一数据来源

统计口径

订单数按去重后的订单编号计算;销量累加数量;销售额与毛利额分别汇总对应数值列。空白的区域、产品类别或销售员代表不限制该条件。

2 开始前把 VBA 工程交给 WorkBuddy

步骤 1 在 VBE 中复制项目路径

打开 VBA 编辑器并最大化,点击“VBAYYDS → 复制项目路径”。新版插件会在复制路径的同时自动导出 VBA 工程,因此不需要再单独执行“导出到本地”。

步骤 2 新建 WorkBuddy 任务

切换到 WorkBuddy 后点击“新建任务”。保持当前已经设置好的默认模型,不打开模型菜单,也不重新选择模型。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 3 WorkBuddy 首页中固定的新建任务入口

步骤 3 加入刚复制的项目目录

点击固定位置的“选择工作空间”,选择“打开本地文件夹”,将刚才复制的 VBA 项目路径粘贴到文件夹选择框并确认。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 4 把 VBAYYDS 自动导出的项目目录加入工作空间

为什么必须加入项目目录

只有让 WorkBuddy 看到导出的模块、窗体配置和工作簿规则,它才能基于真实工程修改,而不是凭空猜测代码结构。

3 提示词先设计再写业务逻辑

最稳妥的方法不是一次让 AI 把所有内容全做完,而是分成“窗体设计确认”和“业务逻辑实现”两个阶段。这样可以在写代码前先纠正布局、颜色和控件数量,避免返工。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 5 输入需求后 WorkBuddy 开始读取工作簿与规则

提示词 A:先生成窗体设计预览

按全局 VBA 技能和 VBA 窗体技能执行,读取当前工作簿的“销售明细”“筛选规则”“统计结果”3张表。使用春日蓝(sky-spring)主题和明亮浅色外观。先建立“销售数据多条件筛选统计窗体”的 YAML 并打开真实设计预览,暂不写业务逻辑。窗体只保留开始日期、结束日期、区域、产品类别、销售员5个筛选项;筛选统计、清空条件、写入结果、关闭4个按钮;以及订单数、销量、销售额、毛利额4项统计结果。区域、产品类别和销售员为空时表示全部。预览后等待我确认再生成。

这段提示词为什么有效

1. 先指定技能与数据来源:告诉 AI 要读取哪 3 张表,减少对字段和规则的猜测。

2. 先做 YAML 与真实预览:把“看得见的窗体”作为确认点,布局不满意时只改设计。

3. 明确控制复杂度:5 个输入、4 个按钮、4 个结果,避免 AI 自动堆叠页签和无关控件。

4. 把视觉要求写进去:明亮浅色、春日蓝主题,避免回到此前偏暗的窗体配色。

4 确认预览后再让 AI 补齐代码

提示词 B:实现逻辑并按固定数字验收

确认预览布局后生成窗体并补齐业务逻辑:日期边界计入统计,开始日期不得晚于结束日期;统计必须基于完整“销售明细”,无匹配显示0并禁止写入;写入前二次确认,确认后向“统计结果”追加一行并保存工作簿;窗体关闭重开时回读最近一条结果。请自动完成真实运行测试。组合A:2026-02-01至2026-03-31,华东、办公设备、陈晨,期望2单、7件、销售额26300、毛利额7769。组合B:2026-01-01至2026-04-30,华南、数码配件、李娜,期望2单、16件、销售额6080、毛利额2258。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 6 WorkBuddy 读取需求后开始生成窗体配置与代码

观察 AI 是否走对流程

1. 先读取工作簿结构、筛选规则和现有工程,而不是立即输出一大段孤立代码。

2. 先建立窗体 YAML,并说明控件、主题和布局,再打开真实预览。

3. 确认生成后才补齐筛选、清空、二次确认、写回与重开回读逻辑。

4. 最后主动运行固定组合,核对数字并检查统计结果表是否只新增 1 行。

完成后先读验收摘要

WorkBuddy 的最终回复应明确列出编译状态、固定组合的统计数字、无结果拦截、日期倒置拦截和写回结果。先读这份摘要,再回到 WPS 逐项复测,可以更快发现遗漏。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 7 WorkBuddy 汇总组合 A、组合 B 与边界场景的验收结果

不要只看完成提示

AI 回复“已完成”并不能代替业务验收。需要继续在真实窗体中输入固定条件,并核对统计结果表是否只追加了正确的一行。

5 在写代码前看清窗体设计

WorkBuddy 会调用 VBAYYDS 的窗体能力打开真实设计预览。这里的重点不是“看起来差不多”,而是逐项检查控件数量、标签文字、按钮顺序、默认按钮和颜色是否符合要求。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 8 真实窗体设计预览包含 5 个筛选项、4 个结果和 4 个按钮

预览确认清单

1. 标题清晰,窗体使用明亮浅色而不是深色背景。

2. 日期输入与 3 个下拉筛选分区明确,没有多余页签和列表。

3. 统计结果单独成组,订单数、销量、销售额、毛利额均可见。

4. “筛选统计”为主按钮,其余按钮弱化但仍清楚可点。

5. 底部按钮顺序符合操作习惯:筛选统计 → 清空条件 → 写入结果 → 关闭。

发现问题怎么办

不要先生成再返工。直接告诉 WorkBuddy 哪个控件位置、间距、配色或文案需要调整,让它更新 YAML 后重新打开预览;确认无误再点击“确定生成”。

6 生成代码使用的关键技术

AI 最终生成的工程包含窗体事件、筛选统计模块、写回逻辑和临时验收过程。学习时不必逐行背代码,但要理解数据怎样进入窗体、怎样被筛选、怎样汇总以及怎样安全写回。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 9 VBE 中的窗体代码与临时验收过程

1. 动态读取范围:从“销售明细”的表头定位字段,并按最后一行确定实际数据区域,避免把空白行算入统计。

2. 可选条件判断:日期必须同时满足起止边界;区域、产品类别和销售员只有在用户选择具体值时才参与比较。

3. 订单去重与数值汇总:订单编号使用字典去重,数量、销售额和毛利额在同一次遍历中累加。

4. 窗体事件驱动:初始化事件加载下拉选项和最近记录,按钮事件分别处理筛选、清空、写回与关闭。

5. 安全写回:无结果时禁止写入,写入前再次确认,确认后只向“统计结果”追加一行并保存工作簿。

学习重点

把筛选条件、统计口径和写回规则对应到这 5 类代码职责,就能读懂整体结构。后续更换字段或增加一个筛选条件时,也知道应该修改哪一层。

7 验收业务数字与边界场景

窗体能够显示并不等于任务完成。至少要覆盖正常组合、无结果、错误日期和持久化四类测试,并把期望数字写进提示词。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 10 组合 A 写回成功为 2 单、7 件、销售额 26300、毛利额 7769

四组必须通过的测试

1. 组合 A:2026-02-01 至 2026-03-31、华东、办公设备、陈晨 → 2 / 7 / 26300 / 7769。

2. 组合 B:2026-01-01 至 2026-04-30、华南、数码配件、李娜 → 2 / 16 / 6080 / 2258。

3. 无结果:2027-01-01 至 2027-01-31 → 显示 0,并禁止写入统计结果。

4. 日期倒置:开始日期晚于结束日期 → 立即拦截,不执行统计。

5. 持久化:组合 A 写入后关闭重开,窗体仍显示最近条件与 2 / 7 / 26300 / 7769,结果表只新增 1 行。

VBA-0057-销售数据多条件筛选统计窗体-图文教程

图 11 统计结果表只追加一行并保留筛选条件与 4 项指标

组合 B 复核

2026-01-01 至 2026-04-30,华南、数码配件、李娜,应得到 2 单、16 件、销售额 6080 元、毛利额 2258 元。它用于证明窗体不是只针对组合 A 写死结果。

8 可复用的靠嘴编程提示词公式

把复杂需求压缩成 9 个要素

技能/工具 + 数据来源 + 输入控件 + 输出指标 + 边界规则 + 写回规则 + 视觉主题 + 预览确认点 + 固定验收数字

只要这 9 个要素说清楚,零基础用户也不需要先理解每个事件过程、循环或数组。AI 负责把业务语言翻译成窗体结构和 VBA 代码;你负责确认布局、规则和验收数字是否正确。

常见失误

1. 只说“做一个筛选窗体”,却不说明源表、字段和统计口径。

2. 没有限制控件数量,导致窗体堆叠过多元素。

3. 把界面和业务逻辑一次性生成,发现布局问题后大面积返工。

4. 只测试窗体是否能打开,没有提供固定数字核对结果。

5. 新版 VBAYYDS 已经可以“复制路径并自动导出”,仍沿用旧的先导出再复制流程。

6. 在 WorkBuddy 中重新选择模型,破坏已经确认的默认模型设置。

完成后的自检问题

• 原始数据来自哪张表,窗体会不会改动源表?

• 空白筛选项为什么表示全部,日期边界怎样计入统计?

• 订单数为什么要按订单编号去重,另外 3 项指标怎样汇总?

• 哪些情况必须禁止写回,写回前为什么还要进行第 2 次确认?

结论

WorkBuddy 配合 VBAYYDS 语音编程,真正降低的不是某一段代码的输入量,而是从需求、设计、生成到验证的整条 VBA 开发门槛。先把业务规则说清楚,再让 AI 自动完成,完全零基础也能做出可用的 VBA 窗体。

VBA-0057-销售数据多条件筛选统计窗体-图文教程插图12

工具名称:VBAYYDS语音编程助手
适合人群:常用Excel且希望自动化操作但不想深学VBA的职场人
体验方式:下载地址vbayyds.com
✨ 让Excel听懂你的需求,或许只需要一次尝试。
✨ 你的时间,值得用在更值得的事情上。
官网下载地址 vbayyds.com
淘宝搜索 vbayyds
购买方式 加微信EXCEL880B
VBA-0057-销售数据多条件筛选统计窗体-图文教程插图13