沙龙有一个工作表,她可以用来记录距离。有人输入数据到工作表中,有人输入以英里为单位的距离(例如15 m),而其他人以公里为单位输入距离(例如28 Km)。

沙龙想知道是否存在一个公式,可以将放置在单元中的所有内容转换为千米,以便所有答案都相同?

您可以使用一些公式进行转换,但是在获取公式之前,最好考虑一下如何将工作表放在一起。从数据管理的角度来看,让人们在与值输入相同的单元格中指定单位不是一个好主意。问题是您将永远无法捕获所有可能的用户错误和错别字。例如,某人可能输入以下内容之一作为15英里:15英里,15英里,15英里,15mi,15nile,15 ni,15 mu,15mi,15mi等。km输入也会发生相同的问题。

一个好主意是从单位名称中分离出价值。例如,您可以允许某人在单元格B4中输入一个值,然后在单元格C4中,他们可以输入一个指示符,以指示该值代表英里还是公里。您可以在单元格上使用数据验证来限制可接受的输入选择。结果是一种更加“防弹”的数据输入方法。

话虽如此,让我们研究一下进行数据转换的一些想法。 Excel提供了一个很酷的CONVERT函数,奇怪的是,您可以执行从一个测量系统到另一个测量系统的数据转换。转换功能是分析工具库的一部分。从英里换算为公里的公式如下:

=CONVERT(B4,"mi","km")

如果您想知道可以使用CONVERT功能指定的所有度量单位,则Excel的在线帮助系统应能胜任该任务。

如果使用单元格C4指定度量单位(“ mi”或“ km”),则可以使用以下公式始终确保单元格B4中输入的任何内容均以公里表示:

IF(C4="mi",CONVERT(B4,"mi","km"),B4)

如果您无法将度量单位拆分为其他单元格,则可以尝试对输入的内容进行一些数据转换。要记住的重要一点是,Excel会将输入的任何内容都视为文本值,因为它包含非数字字符。

让我们假设某人在单元格B4中输入了没有引号的值“ 5 mi”。您需要使用公式来去除非数字字符

=IF(RIGHT(SUBSTITUTE(B4," ",""),2)="mi",CONVERT(VALUE( LEFT(B4,LEN(B4)-2)),"mi","km"),VALUE(LEFT(B4,LEN(B4)-2)))

该公式将查看单元格B4中的值,并特别检查单元格中任何空格已删除之后的两个最右边的字符。如果这两个字符是“ mi”(当然不带引号),则使用CONVERT函数对单元格的数字部分进行转换。如果最右边的两个字符不是“ mi”,则公式将简单地返回单元格的数字部分,而无需进行任何更改。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(7608)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: