将文本排序为数字(Microsoft Excel)
凯尔(Kyle)的工作表包含三列数据:零件编号,数量和长度。长度以英寸为单位指定,并带有引号以英寸为单位(例如30“,54”或100“)。Kyle需要将数据的长度从最短到最长排序,但Excel会将长度排序为文本,使得100“出现在30”之前。他想知道是否有一种方法可以使Excel像数字一样对文本信息进行排序,因此30“正确地出现在100”之前而不用引号引起来。
|||简短的答案是,您至少不能直接这样做,当您在单元格中包含引号时,Excel会将整个单元格视为文本并将其排序。凯尔指出,文本字符串为100“
排在30之前”,因为1在文本排序上排在3之前。
|但是您仍然可以做一些事情。例如,如果您使用公式来生成“长度”列中的值,您可以修改公式,以便根据需要使用零“填充”长度。
使用这种方法,您将不会有30“,54”或100“之类的长度,而是有030 “,054”和100”。只要所有长度使用相同的位数,就可以正确进行排序。
|您也可以在助手的右侧添加一个帮助器列。在“长度”列中,然后在帮助器列中,将单元格中任何数字的数值放在左侧。因此,如果第一个数据在单元格C2中,请在单元格D2(您的帮助器列)中输入以下内容:
||||作为SUBSTITUTE函数的第二个参数,必须使用四个引号,以消除引号i n C2。结果是D2包含单元格C2中的任何数值。尽可能向下复制公式,然后使用D列进行排序。排序后,您甚至可以根据需要隐藏D列,也可以根据需要将其缩小。
=VALUE(SUBSTITUTE(C2,"""",""))
如果长度有限,另一种可行的方法是创建一个自定义列表,然后使用该列表进行排序。以下是根据您的长度设置自定义列表的方法:
。显示“ Excel选项”对话框。 (在Excel 2007中,单击Office按钮,然后单击Excel选项。在Excel 2010或更高版本中,显示功能区的“文件”选项卡,然后单击“选项”。)
。如果使用的是Excel 2007,请确保在对话框的左侧选择了“流行”。如果您使用的是Excel 2010或更高版本,请单击“高级”,然后滚动到选项末尾,直到看到“常规”区域。
。单击编辑自定义列表。 Excel将显示“自定义列表”对话框,并隐藏“ Excel选项”对话框。 (请参见图1。)
。在“自定义列表”列表中选择“新建列表”。
。在对话框的“列表条目”部分中,开始按顺序显示列表中的项目。例如,如果您只有15种可能的长度,请以正确的顺序键入所有长度,并确保在每个长度之后都加上引号。在您添加的每个长度的末尾按Enter。
。完成后,单击添加按钮。
。单击“确定”关闭“自定义列表”对话框。重新出现“ Excel选项”对话框。
。单击“确定”关闭“ Excel选项”对话框。
定义自定义列表后,可以使用“排序”对话框并指定要进行自定义排序。选择您的新列表,这就是Excel在工作表中的行排列方式。同样,这种方法仅在长度有限的情况下才有效,并且事先知道这些长度将是多少。
不过,也许最好的解决方案是删除引号。
(是的,我知道。。。凯尔说他不想摆脱它们,但请耐心等待一下。)如果“长度”列中的所有内容都以英寸为单位显示,那么您可以摆脱显式引用标记并创建将显示它们的自定义格式。摆脱引号很容易-只需使用“查找并替换”即可将其删除。 (搜索引号,然后将其替换为空。)然后,以这种方式创建自定义格式:
。选择所有包含长度的单元格。 (如果需要,您可以选择整个列。)
。显示功能区的“主页”选项卡。
。单击“数字”组右下角的小图标。
Excel将显示“设置单元格格式”对话框,并选择“数字”选项卡。
。在类别列表中,选择自定义。对话框随即更改,因此您可以输入自定义格式。 (请参见图2。)
。在“类型”框中,输入以下内容:0.0 \“。单击“确定”。
|现在您应该看到所有带有后缀引号的单元格(在步骤1中选择)。在第5步中指定,指示Excel在任何数字后加上引号。它还指示Excel在小数点后显示一位数字(您可以修改格式,以便在需要时显示不同的数字。如果只是希望数字在一般情况下可见,然后使用以下自定义格式:
|||与刚刚显示的步骤的步骤5中的自定义格式一样,反斜杠
#\"
全部以英寸为单位,则可以将尺寸指示器(引号,撇号等)移至D列,并将其从
|使D列尽可能窄以显示尺寸指示器,然后按C列排序。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(3917)适用于Microsoft Excel 2007、2010、2013和2016。