Excel:分隔逗号分隔的单个单元格号码

在单个Excel单元格中有一串数字,用逗号分隔,例如A2 = "4,3,2,7" 。 我想要一个公式可以在B2单元格中将这些数字除以2,例如B2 = "2,1,1,3" (奇数应该B2 = "2,1,1,3"而不是向上)

该公式需要能够说明:
– 更小或更大的数字串
– 用于单数和双数数字
– 偶数或奇数
– 没有VBA
– 公式可以使用多个列,但不能使用分隔的文本列function(由于单元格的位置)

我可以得到一个公式,以A2 (4,3,2,7 = 16)的数字string进行求和,但不能将其除以2。 任何帮助表示赞赏,谢谢!

 {=SUM(IF(ISERR(VALUE(MID(A2,ROW($A$1:OFFSET($A$1,LEN(A2)-1,0‌​)),1))),0,VALUE(MID(‌​A2,ROW($A$1:OFFSET($‌​A$1,LEN(A2)-1,0)),1)‌​)))} 

那么,这是我第二次尝试解决(我希望)你的问题。 如果您的string在单元格A2 ,则将此代码放在单元格B2

 =LEFT(IFERROR(ROUNDDOWN(MID(A2,1,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,3,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,5,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,7,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,9,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,11,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,13,1)/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,15,1)/2,0),""),LEN(A2)) 

它可以使用多达8个数字string,以及奇数。

更新

这个公式可以处理两位数的数字,但是它只支持1到4个string(例如(25,5,36,48)):

 =LEFT(IFERROR(ROUNDDOWN(MID(A2,1,IFERROR(SEARCH(",",A2,1)-1,LEN(A2)))/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,SEARCH(",",A2,1)+1,IFERROR(SEARCH(",",A2,SEARCH(",",A2,1)+1)-SEARCH(",",A2,1)-1,LEN(A2)-SEARCH(",",A2,1)))/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1,IFERROR(SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1)-SEARCH(",",A2,SEARCH(",",A2,1)+1)-1,LEN(A2)-SEARCH(",",A2,SEARCH(",",A2,1))))/2,0),"")&","&IFERROR(ROUNDDOWN(MID(A2,SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1)+1,IFERROR(SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1)+1)-SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1)-1,LEN(A2)-SEARCH(",",A2,SEARCH(",",A2,SEARCH(",",A2,1)+1)+1)))/2,0),""),LEN(A2)) 

在你的例子中,使用这个公式进入单元格B1

 =SUBSTITUTE(SUBSTITUTE(A1,",","000")/2,"000",",") 

那么结果会是这样的:

  | A | B | +---------+---------+ 1| 4,2,6,8 | 2,1,3,4 | 2|