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

获取逗号分隔月份列表中倒数第N个元素的公式

提取逗号分隔列表中倒数第N个月份的解决方案

已知表格中Months列是从新到旧排列的逗号分隔月份字符串,需根据Nth from Last列的值,提取从旧到新方向的倒数第N个月份,填入Result列。

适用工具及公式

Excel(支持TEXTSPLIT函数,Office 365及以上版本)

假设数据从第2行开始,Months列在A列,Nth from Last列在B列,在Result列的C2单元格输入以下公式,下拉填充即可:

=TRIM(INDEX(TEXTSPLIT(A2, ", "), COUNTA(TEXTSPLIT(A2, ", ")) - B2 + 1))

Google Sheets

同样假设数据从第2行开始,C2单元格输入:

=TRIM(INDEX(SPLIT(A2, ", "), COUNTA(SPLIT(A2, ", ")) - B2 + 1))

旧版Excel(无TEXTSPLIT函数)

使用替代公式:

=TRIM(MID(SUBSTITUTE(A2, ", ", REPT(" ", 100)), (COUNTA(FILTERXML("<t><s>"&SUBSTITUTE(A2, ", ", "</s><s>")&"</s></t>", "//s")) - B2)*100 + 1, 100))

公式逻辑说明

  1. 拆分字符串:通过TEXTSPLIT(或SPLIT/FILTERXML)将Months列的逗号分隔字符串拆分为独立的月份数组
  2. 统计元素总数:用COUNTA统计拆分后的月份数量
  3. 计算目标位置:原列表是从新到旧排列,从旧到新方向的倒数第N个,对应原数组中的位置为总元素数 - N + 1
  4. 提取并清理内容:用INDEX提取对应位置的月份,TRIM确保结果无多余空格

示例验证

以第一行数据为例:

  • Months值:2024 May, 2023 October, 2023 May,拆分后共3个元素
  • Nth from Last值:2,计算目标位置为3 - 2 + 1 = 2
  • 提取数组第2个元素:2023 October,与示例结果一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 20:25:16