我很难从单元格中删除最后一个小数。有什么建议吗?
示例: 0101.29.00.90至0101.29.0090
答案 0 :(得分:0)
假设A1:0101.29.00.90
要从单元格中删除最后一个小数,如果小数位数不固定,请在B1中输入公式:
=SUBSTITUTE(A1,".","",LEN(A1)-LEN(SUBSTITUTE(A1,".","")))
要删除单元格中的最后一个小数,如果将小数固定为3,则B1公式可以缩短为:
=SUBSTITUTE(A1,".","",3)
结果是:0101.29.0090
答案 1 :(得分:0)
这是一种更通用的方法:
假设您的数据在单元格A1
中,在单元格B1
中输入以下数组公式:
=REPLACE(A1,MAX(IFERROR(FIND(".",A1,ROW($A$1:INDEX($A:$A,LEN(A1)))),0)),1,"")
您必须在公式栏中完成公式后,按 Ctrl + Shift + Enter ,否则会无法正常运行。然后,您只需将公式向下拖动即可应用。
逻辑是使用 FIND 函数查找字符串中每个点
.
的位置,然后使用 MAX + IFERROR 函数返回最大的值,即最后一个点.
的位置,然后使用 REPLACE 函数用空白.
替换最后一个点""
。
以下是一些测试结果:
| Sample Data | Result |
|-----------------|----------------|
| 0101.29.00.90 | 0101.29.0090 |
| 1.2.3.4.5.6.7.8 | 1.2.3.4.5.6.78 |
| 000.111.222.3 | 000.111.2223 |
| 4.3.2.01 | 4.3.201 |
答案 2 :(得分:-1)
您需要使用SUBSTITUTE函数。
替换(文本,旧文本,新文本,[实例编号])
SUBSTITUTE函数语法具有以下参数:
文本 必需。文本或对包含要替换字符的文本的单元格的引用。
旧文本 必需。您要替换的文本。
新文本 必需。您要替换为old_text的文本。
Instance_num (可选)。指定要用new_text替换old_text的出现。如果指定instance_num,则仅替换old_text的该实例。否则,文本中每次出现的old_text都将更改为new_text。
最后一个选项对于您的问题不是可选的。例如,使用以下公式
=SUBSTITUTE(A1,".","",3)
假设源数据在单元格A1中。
它将用空字符串替换第三个点,您将获得所需的解决方案。
即0101.29.00.90至0101.29.0090