使用公式从excel中的字符串中提取中间字符?

时间:2017-03-09 00:17:58

标签: excel excel-formula

我想从excel中的字符串中提取中间字符。是否有任何方法可以使用excel公式实现此任务?就像我有一个偶数长度的字符串然后提取中间两个字符或者如果它的长度是奇数然后提取单个中间字符,如下图所示。

enter image description here

3 个答案:

答案 0 :(得分:3)

以下作品:

=IF(MOD(LEN(A2),2) = 0,MID(A2,INT(LEN(A2)/2),2),MID(A2,1+INT(LEN(A2)/2),1))

答案 1 :(得分:1)

这很有效,而且非常简单:

=MID(A2,ROUNDPUP(LEN(A5)/2,0),IF(MOD(LEN(A2),2)=0,2,1))

说明:

考虑" abcde "字符串,它将是:

  • ROUNDPUP(LEN(A5)/2,0)是我们想要开始提取的位置(例如3)。
  • IF(MOD(LEN(A2),2)=0,2,1)是我们需要多少个字符。 MOD用于确定长度(LEN)是 EVEN 还是 ODD ,并根据结果返回1或2。
  • MID(A2, 3, 1)用于从 A2 内容中获取子字符串,在此示例中,从第三个位置开始,仅提取1个字符(因为它是奇数)。< / LI>

如果是&#34; abcd &#34;,则会产生MID(A2, 2, 2),这意味着从第二个字符开始(&#34; b&#34;) ,需要两个字符(&#34; bc&#34;)。

答案 2 :(得分:1)

可能的最短公式:

=MID(A1,LEN(A1)/2+0.5,2-MOD(LEN(A1),2))

这会利用MID函数只取其参数的整数部分。