将格式化的小时数转换为四舍五入的十进制小时数

Convert formatted hours to rounded decimal hours

我要的是这个:

这些数字是从我 运行 在 Selenium IDE 上的脚本中提取的。问题是这些数字以文本形式出现。

我需要的是转换,例如,“56h 29m”到“56.5”...“27.75h”到“27.75”。

其中一些很简单(比如前两列),我只是删除了最后一个字母 "h" 并将其转换为数字...问题是当数字有这个 "h"在中间有一个 space 和末尾的 "m"(最后一列)。

有办法实现吗?

您需要将小时和分钟分开,以便分钟可以除以 60。我确信有更简单的方法,但这个方法可行。它假定您的数据位于从 A2 开始的 Sheet1 中。把公式放到另一个sheet中(比如Sheet2 A2)然后抄下来:

=IFERROR(if(right(Sheet1!A2,1)="h",regexreplace( Sheet1!A2, "[a-z]+" , "" ),concatenate(index(SPLIT(regexreplace(  Sheet1!A2, "[a-z]+" , "" ), " "), 0, 1),replace(round(index(SPLIT(regexreplace(  Sheet1!A2, "[a-z]+" , "" ), " "), 0, 2)/60,1),1,1,""))))