You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel公式实现提取单元格内最值并以-分隔显示

Excel提取分隔数值的最小/最大值并格式化展示方法

针对单元格中以「|」(带前后空格)分隔的数值串(如「130 | 140 | 150」),以下是几种可行的实现方法:

方法一:动态数组公式法(Excel 365/2021及以后)

直接用单公式完成拆分、取值、格式化:

=MIN(--TEXTSPLIT(A1," | "))&" - "&MAX(--TEXTSPLIT(A1," | "))
  • 步骤说明:
    1. TEXTSPLIT(A1," | "):将A1内容按「空格+|+空格」拆分为文本数组{"130","140","150"}
    2. --:把文本型数值转换为数值型,确保MIN/MAX能正确计算
    3. MIN()/MAX():分别提取数组中的最小、最大值
    4. &" - "&:按要求格式拼接结果

方法二:Power Query批量处理法(Excel 2016及以后)

适合批量处理多单元格数据,步骤清晰:

  1. 选中目标数据列,点击「数据」选项卡 →「从表格/区域」(若数据不是表格,会提示转换为表格,按需勾选「我的表格有标题」)
  2. 在Power Query编辑器中,选中目标列 →「转换」选项卡 →「拆分列」→「按分隔符」,选择「自定义」分隔符为|,拆分方式选「拆分为行」
  3. 选中拆分后的数值列,点击列标题旁的类型图标,转换为「数值」类型
  4. 点击「转换」选项卡 →「分组依据」:
    • 若为单列表,分组依据选「无」;若有多列,选择对应分组列
    • 添加两个聚合列:名称「最小值」,操作「最小值」;名称「最大值」,操作「最大值」
  5. 点击「添加列」选项卡 →「自定义列」,输入公式:
    = [最小值] & " - " & [最大值]
    
  6. 点击「关闭并上载」,将结果导出到Excel工作表

方法三:辅助列法(兼容旧版Excel)

无动态数组功能时,用辅助列分步实现:

  1. 辅助列B1:替换分隔符为逗号,便于后续处理
    =SUBSTITUTE(A1," | ",",")
    
  2. 辅助列C1(取最小值,需按Ctrl+Shift+Enter输入数组公式):
    =MIN(VALUE(MID(SUBSTITUTE(A1," | ",REPT(" ",99)),(ROW(INDIRECT("1:"&LEN(A1)-LEN(SUBSTITUTE(A1," | ",""))+1))-1)*99+1,99)))
    
  3. 辅助列D1(取最大值,同样按Ctrl+Shift+Enter输入):
    =MAX(VALUE(MID(SUBSTITUTE(A1," | ",REPT(" ",99)),(ROW(INDIRECT("1:"&LEN(A1)-LEN(SUBSTITUTE(A1," | ",""))+1))-1)*99+1,99)))
    
  4. 结果列E1:拼接成目标格式
    =C1&" - "&D1
    

内容的提问来源于stack exchange,提问作者Mischa Morf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 07:55:27