从文本字符串中剥离分数值的公式?

时间:2014-05-08 14:24:20

标签: excel excel-2007

我的公司有许多通过文本字符串指定的奇数大小,我们有一个电子表格,目前没有计算剥离它们用于第二列(使用原始数值)。示例字符串下面:

24 1/2 x 23 1/4 x 1 - EXACT
29 1/4 x 13 1/2 x 1 - EXACT
19 x 35 x 1

等等。我有一个部分完整的公式来提取前导值到第一个X,但无法找出提取第二个值的有效方法。我的初始公式(遗憾的是我丢失了)使用了Left,Mid和Search的组合,以便将值拉到第一个“x”的左边,因为它总是遵循维度值。有人可以帮忙吗?

编辑:我正在寻找的是两列填充到右边,一列是第一次测量(例子一个将被解析为B列中的24 1/2),另一列是第二次(示例一将被解析) C列中的23 1/4。

3 个答案:

答案 0 :(得分:0)

将列复制到Column中,将Text to Columns应用于副本,并以x作为分隔符,并删除右侧的列。

答案 1 :(得分:0)

修改#1:

您的文字在 A1 中,在 B1 中输入:

=TRIM(MID(SUBSTITUTE($A1,"x",REPT(" ",999)),COLUMNS($A:A)*999-998,999))

C1 中输入:

=TRIM(MID(SUBSTITUTE($A1,"x",REPT(" ",999)),COLUMNS($A:B)*999-998,999))

答案 2 :(得分:-1)

得出答案对我来说很容易。困难的部分是弄清楚如何将它传递给你。将下表放入前2列。第3列将是公式的结果:

Names     Formulas                                        Results
String    29 1/4 x 13 1/2 x 1 - EXACT
1stX      =FIND("x",B1)                                   8
2ndX      =FIND("x",B1,B2+1)                              17
End       =IF(ISERR(FIND("-",B1)),LEN(B1),FIND("-",B1))   21
1st Arg   =LEFT(B1,B2-2)                                  29 1/4
2nd Arg   =MID(B1,B2+2,B3-B2-2)                           13 1/2
3rd Arg   =MID(B1,B3+2,B4-B3-2)                           1

一旦您对这些公式感到满意,您可以通过组合这些公式来节省空间,即将B2替换为FIND("x",B1)。你可以这样做,为每个论点提出一个公式。

此外,如果您需要将分数转换为常规小数,请使用Value()转换它们,即29 1/4到29.25。