我将数据转换为同一单位时遇到问题,需要您提供一些意见。
我有一个3年以上的数据使用表。数据i以MB,GB和TB为单位。我想把它全部用在GB上。我试着用:
=IFERROR(VALUE(IF(RIGHT(D5;2)="TB";LEFT(D5;LEN(D5)-3)*1024;IF(RIGHT(D5;2)="MB";LEFT(D5;LEN(D5)-3)/1024)));0)
我得到的全部是0或者如果我删除iferror我得到#value
这里是一些数据的链接。 http://i.imgur.com/UtN5bdn.png
答案 0 :(得分:0)
您正在尝试将LEFT()
函数的输出乘以文本。您需要先转换它,然后再乘以。还要检查系统中的小数点分隔符。它可能是逗号,而不是句号。然后它也可能导致错误。
这是一个更好的公式:
=IFERROR(VALUE(LEFT(D5,LEN(D5)-3))*IF(RIGHT(D5,2)="TB",1024,IF(RIGHT(D5,2)=GB,1,1/1024)),0)
您还可以使用SUBSTITUTE()
将十进制分隔符替换为您需要的内容:
=IFERROR(VALUE(SUBSTITUTE(LEFT(D5,LEN(D5)-3),".",","))*IF(RIGHT(D5,2)="TB",1024,IF(RIGHT(D5,2)=GB,1,1/1024)),0)