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

如何在Excel/Google Sheets中按类别提取产品ID最大值?

提取指定类别产品ID的最大值(Excel/Google Sheets)

针对同一列中类似F1、G2这类字母前缀+数字后缀的产品ID,要单独获取某类别的最大ID,可通过以下公式实现:

Google Sheets 公式

假设产品ID存储在A列,要提取F类的最大ID:

=CONCATENATE("F", MAX(ARRAYFORMULA(IF(LEFT(A:A,1)="F", VALUE(RIGHT(A:A, LEN(A:A)-1)), 0))))
  • 逻辑说明:
    1. LEFT(A:A,1)="F":筛选出所有以F开头的产品ID
    2. RIGHT(A:A, LEN(A:A)-1):提取ID中的数字部分
    3. VALUE(...):将数字字符串转为数值,确保MAX能正确计算
    4. MAX(...):取该类别下的最大数字
    5. CONCATENATE("F", ...):把前缀字母和最大数字拼接成完整ID

Excel 公式

同样假设产品ID在A列,提取F类最大ID:

="F"&MAX(IF(LEFT(A:A,1)="F",--RIGHT(A:A,LEN(A:A)-1),0))
  • 注意:Excel 2019及更早版本需按 Ctrl+Shift+Enter 作为数组公式执行;Excel 365/2021可直接回车。
  • 逻辑和Google Sheets一致,-- 符号用于将数字字符串转为数值。

扩展适配

如果类别前缀是多字母(如AB123),只需调整公式中提取前缀的长度:

  • 比如提取AB类最大ID,把LEFT(A:A,1)改成LEFT(A:A,2),RIGHT(A:A, LEN(A:A)-1)改成RIGHT(A:A, LEN(A:A)-2)即可。

快速生成下一个编号

要直接得到下一个可用编号(如当前最大是F37,生成F38),只需在MAX计算后加1:

// Google Sheets
=CONCATENATE("F", MAX(ARRAYFORMULA(IF(LEFT(A:A,1)="F", VALUE(RIGHT(A:A, LEN(A:A)-1)), 0)))+1)

// Excel
="F"&MAX(IF(LEFT(A:A,1)="F",--RIGHT(A:A,LEN(A:A)-1),0))+1

内容的提问来源于stack exchange,提问作者Aleksei Rurikovich

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 23:17:39