许多人对Excel 中的前导零爱恨交加。有时你想要它,有时你不想要。
虽然Excel 的编程方式是自动删除数字中的任何前导零,但在某些情况下您可能会遇到这些情况。
在本Excel 教程中,我将向您展示如何在Excel 中删除数字中的前导零。
所以让我们开始吧!
内容
Excel 中出现前导零的可能原因
正如我所提到的,Excel 会自动从数字中删除所有前导零。例如,如果您在Excel 的单元格中输入00100,它会自动将其转换为100。
在大多数情况下,这是有道理的,因为这些前导零并不真正有意义。
但在某些情况下,您可能需要它。
以下是一些可能导致您的数字保留前导零的原因:
- 如果数字已被格式化为文本(主要是在数字前添加撇号),它将保留前导零。
- 单元格可能已被格式化为始终显示一定长度的数字。如果数字较小,则会添加前导零以弥补它。例如,您可以将单元格格式化为始终显示5 位数字(如果数字小于5 位数字,则会自动添加前导零)
我们选择删除前导零的方法取决于导致它的原因。
因此,第一步是确定原因,以便我们可以选择正确的方法来删除这些前导零。
如何从数字中删除前导零
您可以使用多种方法从数字中删除前导零。
在本节中,我将向您展示五种这样的方法。
使用错误检查选项将文本转换为数字
如果出现前导数字的原因是有人在这些数字前添加了撇号(将这些数字转换为文本),您可以使用错误检查方法将这些数字转换回数字,只需单击一下即可。
这可能是摆脱前导零的最简单方法。
在这里,我有一个数据集,其中有在这些数字之前带有撇号的数字以及前导零。这也是您看到这些数字向左对齐(而默认数字向右对齐)并且还有前导0 的原因。
以下是从这些数字中删除这些前导零的步骤:
- 选择要从中删除前导零的数字。您会注意到选择的右上角有一个黄色图标。
- 点击黄色错误检查图标
- 点击“转换为数字”
而已!上述步骤将删除撇号并将这些文本值转换回数字。
而且由于Excel 被编程为默认情况下从任何数字中删除前导空格,因此您会看到这样做会自动删除所有前导零。
注意:如果前导零已添加为单元格的自定义数字格式的一部分,则此方法将不起作用。要处理这些情况,请使用接下来介绍的方法。
更改单元格的自定义数字格式
另一个可能使您的数字显示前导零的真正常见原因是,当您的单元格已格式化为始终在每个数字中显示特定数量的数字时。
很多人想让数字看起来一致且长度相同,因此他们通过更改单元格的格式来指定数字的最小长度。
例如,如果您希望所有数字显示为5 位数字,如果您有一个只有三位数字的数字,Excel 会自动为其添加两个前导零。
下面我有一个数据集,其中应用了自定义数字格式以始终在单元格中显示至少五位数字。
摆脱这些前导零的方法只是从单元格中删除现有格式。
以下是执行此操作的步骤:
- 选择具有前导零数字的单元格
- 单击主页选项卡
- 在数字组中,单击数字格式下拉菜单
- 选择“常规”
上述步骤将更改单元格的自定义数字格式,现在数字将按预期显示(其中没有前导零)。
请注意,此技术仅在前导零的原因是自定义数字格式时才有效。如果使用撇号将数字转换为文本,它将不起作用(在这种情况下,您应该使用以前的方法)
乘以1(使用特殊粘贴技术)
此技术适用于两种情况(其中数字已通过使用撇号转换为文本或已将自定义数字格式应用于单元格)。
假设您有一个如下所示的数据集,并且您想从中删除前导零。
以下是执行此操作的步骤
- 复制工作表中的任何空单元格
- 选择具有要从中删除前导零的数字的单元格
- 右键单击选择,然后单击选择性粘贴。这将打开选择性粘贴对话框
- 单击“添加”选项(在操作组中)
- 点击确定
上述步骤将0 添加到您选择的单元格范围,并删除所有前导零和撇号。
虽然这不会更改单元格的值,但它会将所有文本值转换为数字,并从您复制的空白单元格中复制格式(从而替换使前导零出现的现有格式)。
此方法仅影响数字。如果单元格中有任何文本字符串,它将保持不变。
使用VALUE 函数
删除前导零的另一种快速简便的方法是使用值函数。
此函数接受一个参数(可以是文本或具有文本的单元格引用)并返回数值。
这也适用于前导数字是撇号(用于将数字转换为文本)或自定义数字格式的结果的两种情况。
假设我有一个如下所示的数据集:
以下是删除前导零的公式:
= VALUE(A1)
注意:如果您仍然看到前导零,您需要转到主页选项卡并将单元格格式更改为常规(从数字格式下拉菜单中)。
使用文本到列
虽然文本到列功能用于将单元格拆分为多列,但您也可以使用它来删除前导零。
假设您有一个如下所示的数据集:
以下是使用Text to Columns 删除前导零的步骤:
- 选择具有数字的单元格范围
- 单击“数据”选项卡
- 在数据工具组中,单击“文本到列”
- 在“将文本转换为列”向导中,进行以下更改:
- 第1 步(共3 步):选择“分隔”并单击“下一步”
- 第2 步(共3 步):取消选择所有分隔符,然后单击下一步
- 第3 步,共3 步:选择一个目标单元格(在本例中为B2),然后单击完成
上述步骤应删除所有前导零并仅提供数字。如果您仍然看到前导零,您需要将单元格的格式更改为常规(这可以从主页选项卡完成)
如何从文本中删除前导零
虽然上述所有方法都很好用,但这些方法仅适用于那些具有数值的单元格。
但是,如果您的字母数字或文本值也恰好有一些前导零,该怎么办。
在这种情况下,上述方法将不起作用,但感谢Excel 中令人惊叹的公式,您仍然可以得到这个时间。
假设您有一个如下所示的数据集,并且您想从中删除所有前导零:
以下是执行此操作的公式:
=RIGHT(A2,LEN(A2)-FIND(LEFT(SUBSTITUTE(A2,"0",""),1),A2)+1)
让我解释一下这个公式是如何工作的
公式的SUBSTITUTE 部分将零替换为空白。因此对于值001AN76,替换公式给出的结果为1AN76
然后,LEFT 公式提取此结果字符串的最左侧字符,在本例中为1。
FIND 公式然后查找由LEFT 公式给出的最左边的字符并返回其位置。在我们的示例中,对于值001AN76,它将给出3(即1 在原始文本字符串中的位置)。
1 被添加到FIND 公式的结果中,以确保我们提取了整个文本字符串(前导零除外)
然后从LEN 公式的结果(用于给出整个文本字符串的长度)中减去FIND 公式的结果。这给了我们没有前导零的文本环的长度。
然后将该值与RIGHT 函数一起使用以提取整个文本字符串(前导零除外)。
如果您的单元格中可能存在前导或尾随空格,最好对每个单元格引用使用TRIM 函数。
因此,添加了TRIM 函数的新公式如下所示:
=RIGHT(TRIM(A2),LEN(TRIM(A2))-FIND(LEFT(SUBSTITUTE(TRIM(A2),"0",""),1),TRIM(A2))+1)
因此,您可以使用这些简单的方法从Excel 中的数据集中删除前导零。
我希望您发现本教程很有用!