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

请求编写符合特定规则的Excel单元格公式

请求编写符合特定规则的Excel单元格公式

嘿,我来帮你搞定这个Excel公式!先确认下我理解的规则对不对:

  • B列的单元格是两位数(比如示例里的12),第一位数字代表向右计数的位置,第二位代表向左计数的位置
  • 我们需要从相邻C列的单元格内容里,提取对应位置的字符/数字

核心公式(提取两个指令的结果并合并)

如果你的需求是把两个指令对应的结果放在同一个单元格里,用空格分隔,可以用这个公式:

=MID(C2, --LEFT(B2,1), 1) & " " & MID(C2, LEN(C2)---RIGHT(B2,1)+1, 1)

公式拆解说明

  • --LEFT(B2,1):提取B列单元格的第一位数字,--是把文本格式的数字转成可计算的数值
  • MID(C2, --LEFT(B2,1), 1):从C列单元格的第N位(N是B的第一位数字)提取1个字符,对应“向右数N次”的结果(如果你的“向右数1次”是指从起始位置再往右跳1位,就把这里的--LEFT(B2,1)改成--LEFT(B2,1)+1)
  • LEN(C2)---RIGHT(B2,1)+1:计算从左侧数的对应位置,用来定位“从右侧数第M位”(M是B的第二位数字)。比如C2内容长度是7,M是2,那就是7-2+1=6,也就是左侧第6位=右侧第2位
  • MID(C2, LEN(C2)---RIGHT(B2,1)+1, 1):提取从右侧数第M位的字符

特殊情况适配

如果B列可能出现1位数(只有单一方向的指令),可以用带判断的公式:

=IF(LEN(B2)=2, 
    MID(C2, --LEFT(B2,1), 1) & " " & MID(C2, LEN(C2)---RIGHT(B2,1)+1, 1), 
    IF(LEN(B2)=1, 
        MID(C2, --LEFT(B2,1), 1), 
        ""
    )
)

这个公式会自动识别B列的数字长度:2位就返回两个结果,1位就返回对应方向的结果,空值则返回空。

要是我理解的规则有偏差,你可以补充下具体的示例(比如B=12、C=某个具体值时,预期结果是什么),我再调整公式~

备注:内容来源于stack exchange,提问作者Sabrina M

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 12:49:33