excel工作表如何提取字符串中的最后一个数字?

excel工作表如何提取字符串中的最后一个数字?
最新回答
如啼眼

2026-10-27 23:50:08

在Excel中提取字符串中的最后一个数字(如从“12-25-95”中提取“95”),可通过以下公式实现:

公式:=TRIM(MID(SUBSTITUTE(B2,"-",REPT(" ",100)),3*100-99,20))

步骤解析:

  1. SUBSTITUTE函数

    将分隔符(如"-")替换为大量空格(通过REPT(" ",100)生成100个空格)。

    示例:"12-25-95" → "12(100空格)25(100空格)95"。

  2. MID函数

    从替换后的字符串中提取目标部分。

    参数3*100-99定位到最后一个分隔符后的位置(假设最多3段,每段占100字符)。

    参数20确保提取足够长的字符(包含目标数字)。

  3. TRIM函数

    清除提取内容中的多余空格,仅保留有效字符(如“95”)。

操作演示:

  1. 在目标单元格(如C2)输入公式,按Enter确认。
  2. 下拉填充公式至其他单元格,批量提取结果。

注意事项:

  • 若分隔符非"-",需修改公式中的对应字符。
  • 数字段数超过3段时,需调整公式中的倍数(如4*100-99对应4段)。

替代方案(更灵活):若字符串格式不固定,可用以下数组公式(按Ctrl+Shift+Enter输入):=LOOKUP(9^9,--RIGHT(SUBSTITUTE(B2,"-"," "),ROW($1:$100)))此公式通过逆向查找数字,适应不同长度的字符串。

示例效果:输入“12-25-95” → 输出“95”输入“A1-B2-C3” → 输出“C3”(若需提取纯数字,需结合其他函数处理)。

通过上述方法,可高效提取字符串中最后一个数字或子串。