如何对具有';k';或';m';Excel中的缩写

如何对具有';k';或';m';Excel中的缩写,excel,Excel,在网上任何地方都很难找到一个简单的答案,但我需要定期处理数据,而且我从中复制的数据源通常以缩写格式呈现laerge数字。我想看看是否有办法快速重新格式化这些数字,以包含正确的0数并删除小数点 例如,这里有一个列表,显示了属于类似随机项的随机值(假设水果在a列,值在B列)。我想把1500万换成1500万;12.3M变为12300000,以及;10.03米至10030000米 苹果15M 香蕉12.3M 胡萝卜10.03米 我发现要做到这一点的唯一方法是使用查找和替换所有功能,并手动将“.3M”替换

在网上任何地方都很难找到一个简单的答案,但我需要定期处理数据,而且我从中复制的数据源通常以缩写格式呈现laerge数字。我想看看是否有办法快速重新格式化这些数字,以包含正确的0数并删除小数点

例如,这里有一个列表,显示了属于类似随机项的随机值(假设水果在a列,值在B列)。我想把1500万换成1500万;12.3M变为12300000,以及;10.03米至10030000米

苹果15M
香蕉12.3M
胡萝卜10.03米

我发现要做到这一点的唯一方法是使用查找和替换所有功能,并手动将“.3M”替换为“300000”,将“.03M”替换为“030000”

我觉得应该有更简单的方法。

在新专栏中:

=IF(ISNUMBER(SEARCH("M",B1)),SUBSTITUTE(B1,"M","")*1000000,IF(ISNUMBER(SEARCH("K",B1)),SUBSTITUTE(B1,"K","")*1000,B1))

在新列中:

=IF(ISNUMBER(SEARCH("M",B1)),SUBSTITUTE(B1,"M","")*1000000,IF(ISNUMBER(SEARCH("K",B1)),SUBSTITUTE(B1,"K","")*1000,B1))
=-LOOKUP(1,-替换(B1,{M,“,”“},”)*10^{6,3,0})

关于

=-LOOKUP(1,-替换(B1,{M”,“K”,“{},”)*10^{6,3,0})


关于

您可以在该列上运行
00000
替换
M
,否?您希望输出在同一单元格中,这需要vba,还是在一个新列中,这可以用公式完成。@ScottCraner很高兴将其放在一个新列中。可以根据我以后的需要进行一些简单的格式化来排列表格@BruceWayne否,因为0的数量将根据小数点后的数字数量而变化。这就是我目前正在做的事情,当有数百行在小数点后都有不同的数字组合时,这会占用大量时间。您可以运行
替换
m
with
00000
在该列上,否?您希望输出在同一单元格中,这需要vba,还是在新的列中,这可以通过公式完成。@ScottCraner很乐意将其放在新的列中。可以根据需要进行一些简单的格式化来排列表格。@BruceWayne否,因为0的数量将根据num的多少而变化。@BER在小数点后。这就是我现在正在做的,当有数百行在小数点后有不同的数字组合时,这是时间密集型的。你绝对的传奇。刚刚为我节省了这么多时间。谢谢!你绝对的传奇。刚刚为我节省了这么多时间。谢谢!