从另一个单元格中的数字减去一个单元格中的数字范围的公式

我有:

  • 数字范围表示为用短划线分隔的string:“XY”
  • 一个单一的数字列

我想要的是一个公式,从独奏号码中减去每个左右数字(X,Y),以产生另一个范围。

例:

Range cell "5-9" Solo number cell "2000" Result wanted "1995-1991" 

我怎么能产生这个?

我目前正在使用一个公式,要求我手动input破折号两边的数字。 示例(通知5和9是硬编码的):

 =SUM(A31,-5)&"-"&SUM(A31,-9) 

说A1 = 2000和B1 =“5-9”

您可以使用FIND,LEFT / RIGHT和INTfunction的组合:

 C1 =(A1-INT(LEFT(B1,FIND("-",B1)-1))&"-"&(A1-INT(RIGHT(B1,FIND("-",B1)-1)))) 

这将适用于任何范围,如“100-135”

假设你的范围数字是0-9,你可以使用这个:

 =SUM(A31,-LEFT(B31,1))&"-"&SUM(A31,-RIGHT(B31,1)) 

(假设范围编号在B列中)

编辑:@ergonaut有一个更好的解决scheme,将使用任何数量的数字。

如果A1是2000,B1是5-9:

 =A1-MID(B1,1,FIND("-",B1)-1)&"-"&A1-MID(B1,FIND("-",B1)+1,99)