如何使用Excel公式查找字符串中的最后一位数字并提取对应内容
Excel通用提取截止最后一位数字内容的解决方案
下面提供适配不同Excel版本的通用公式,不受数字位置限制:
1 兼容全版本的最简公式
无需数组三键,普通回车即可生效,可适配最长99位的字符串(可按需调整长度上限):
=LEFT([@Point],LOOKUP(2,1/ISNUMBER(--MID([@Point],ROW($1:$99),1)),ROW($1:$99)))
公式逻辑说明:
ROW($1:$99)生成1到99的连续位置序列,如果你遇到的字符串最长超过99位,把99改成更大的数值即可MID逐个提取对应位置的字符,--将字符转为数值,ISNUMBER判断该字符是否为数字1/ISNUMBER(...)会把非数字的位置转为错误值,数字位置返回1- LOOKUP查找2,在找不到匹配值的情况下会自动返回最后一个有效值对应的位置,也就是字符串最后一位数字的位置
- 最后用
LEFT函数截取到对应位置即可得到目标结果
2 Excel 365/2021 专属优化公式
利用动态数组特性,自动适配任意长度的字符串,无需手动调整长度上限:
=LEFT([@Point],XLOOKUP(TRUE,ISNUMBER(--MID([@Point],SEQUENCE(LEN([@Point])),1)),SEQUENCE(LEN([@Point])),,0,-1))
公式逻辑说明:
SEQUENCE(LEN([@Point]))自动生成和字符串长度一致的位置序列- XLOOKUP设置搜索方向为从后往前(最后一个参数为-1),直接匹配到最后一位数字的位置
效果验证
以你给出的示例测试:
- 输入:
A00XX - 公式返回最后一位数字位置为3,截取结果为
A00,和预期输出一致
内容的提问来源于stack exchange,提问作者Dave Thunes
相关产品推荐
相关产品推荐

