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

使用Python openpyxl匹配Excel B列中-与>间的值并返回对应数据

解决Excel匹配B列特定区间值并返回对应列内容的方案

核心逻辑

先提取B列每个单元格中-与>之间的数值,和指定输入值匹配后,返回对应行的A列字母及C/D/E列的日期时间内容。假设输入值放在F1单元格,以下是具体实现公式:

具体公式

1. 返回对应A列内容

  • 适用于Excel 365/2021(支持动态数组):
    =XLOOKUP(F1,MID(B:B,FIND("-",B:B)+1,FIND(">",B:B)-FIND("-",B:B)-1),A:A,"无匹配")
    
  • 适用于旧版本Excel:
    =INDEX(A:A,MATCH(F1,MID(B:B,FIND("-",B:B)+1,FIND(">",B:B)-FIND("-",B:B)-1),0))
    
    注:旧版本需按Ctrl+Shift+Enter组合键作为数组公式输入。

2. 返回对应C列日期

  • Excel 365/2021版本:
    =XLOOKUP(F1,MID(B:B,FIND("-",B:B)+1,FIND(">",B:B)-FIND("-",B:B)-1),C:C,"无匹配")
    
  • 旧版本Excel:
    =INDEX(C:C,MATCH(F1,MID(B:B,FIND("-",B:B)+1,FIND(">",B:B)-FIND("-",B:B)-1),0))
    

3. 返回D/E列内容

将上述公式中的C:C替换为D:D或E:E即可,逻辑完全一致。

公式说明

  • MID(B:B,FIND("-",B:B)+1,FIND(">",B:B)-FIND("-",B:B)-1):精准提取B列单元格内-之后、>之前的文本内容,自动转换为数值后与输入值匹配。
  • XLOOKUP是Excel 365新增函数,无需数组操作即可直接返回匹配结果;旧版本依赖INDEX+MATCH组合,需按数组公式规则输入。
  • 若存在多个匹配行,两种方案均默认返回第一个匹配结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 10:00:01