电子表格自动化:按指定文本条件自动填充对应列数值
自动化处理咖啡订单数据解决方案

针对手动处理咖啡订单数据效率低下的问题,提供两种可行的自动化方案:
一、Excel函数公式方案(快速实现单批次处理)
直接在目标列写入组合公式,下拉即可批量填充:
1. D列(Filter subscription 对应数值)
在D2单元格输入以下公式,下拉填充至所有行:
=IF(ISNUMBER(SEARCH("Filter subscription",B2)),SWITCH(TRUE,ISNUMBER(SEARCH("small",C2)),250,ISNUMBER(SEARCH("medium",C2)),450,ISNUMBER(SEARCH("large",C2)),900),"")
2. E列(Espresso subscription 对应数值)
在E2单元格输入以下公式,下拉填充:
=IF(ISNUMBER(SEARCH("Espresso subscription",B2)),SWITCH(TRUE,ISNUMBER(SEARCH("small",C2)),250,ISNUMBER(SEARCH("medium",C2)),450,ISNUMBER(SEARCH("large",C2)),900),"")
3. F列(Blend subscription 对应数值)
在F2单元格输入以下公式,下拉填充:
=IF(ISNUMBER(SEARCH("Blend subscription",B2)),SWITCH(TRUE,ISNUMBER(SEARCH("small",C2)),250,ISNUMBER(SEARCH("medium",C2)),450,ISNUMBER(SEARCH("large",C2)),900),"")
公式说明:
SEARCH检测单元格是否包含指定文本,支持模糊匹配;ISNUMBER将检测结果转为布尔值,判断文本是否存在;SWITCH根据C列的尺寸文本匹配对应克重数值;- 外层
IF判断B列的订阅类型,符合条件则返回对应数值,否则留空。
二、Power Query方案(适合每周重复批量处理)
如果每周都要处理同类导出数据,用Power Query可实现一键刷新自动化:
- 选中包含表头的数据区域,点击「数据」选项卡 →「从表格/区域」,确认数据含表头后进入Power Query编辑器;
- 依次添加3个自定义列,对应D、E、F列的需求:
- 添加「Filter订阅量」列:
if Text.Contains([Column2], "Filter subscription") then if Text.Contains([Column3], "small") then 250 else if Text.Contains([Column3], "medium") then 450 else if Text.Contains([Column3], "large") then 900 else null else null - 添加「Espresso订阅量」列时,仅需将上述公式中的
Filter subscription替换为Espresso subscription; - 添加「Blend订阅量」列时,替换为
Blend subscription;
- 添加「Filter订阅量」列:
- 调整列顺序并保留所需列,点击「关闭并上载」将结果加载到新工作表。后续更新源数据后,右键查询表格选择「刷新」即可自动更新结果。
内容的提问来源于stack exchange,提问作者Michael Tyson
相关产品推荐
相关产品推荐

