【问题标题】:Unable to convert text to Numbers无法将文本转换为数字
【发布时间】:2020-10-04 19:43:41
【问题描述】:

我已获得要在数据库中导入的 excel,它是从 Access 数据库中导出的。在 excel 中有一个列 type_class,在一个 excel 中它很好(sheet1),但是在另一个我移动到 sheet2 以制作 VLOOKUP 函数的 excel 上,我无法判断它是文本还是数字列第一眼。左上角的绿色没有显示在所有单元格上。但是,使用ISTEXT 函数会导致text。下面是没有任何更改或格式的原始列,以及ISTEXT 结果。

当我使用 VLOOKUB 函数中的列将名称转移到第一张纸时,只有 (1010, 1101, 1102,....),因此左上角带有绿色标记的单元格角落。

我可以使用 text-to-columns、单元格格式和任何其他方式轻松格式化 sheet1 中的键。
但我无法更改 sheet2 中的列,我尝试过:

  • 文本到列
  • 单元格格式
  • 值(文本),清洁(文本),修剪(文本),修剪(清洁(文本)),清洁(替代())
  • 乘以 1

但只有带有绿色标记的单元格变为数字,其余的保持不变。我浏览了互联网,但也没有得到解决方案。

编辑: 我上传了在驱动器上测试机箱所需的内容。你可以找到它here
感谢帮助

【问题讨论】:

  • 可能单元格中有一些非打印字符无法将文本转换为数字。
  • @RonRosenfeld,我试过CLEAN()TRIM(CLEAN)CLEAN(SUBSTITUTE)。没有工作
  • 首先你需要弄清楚里面有什么。这些功能不适用于许多非打印字符。做一个简单的=LEN(cell_ref) 看看这个假设是否正确。然后使用MID 找出字符是什么。
  • @RonRosenfeld,对于我无法将文本转换为数字的单元格以及其他单元格,结果为 6。 MID 产生相同的列,MID(0810) 产生 0810。我已经编辑了我的答案并添加了一个在谷歌驱动器中上传的示例 excel。非常感谢您的帮助
  • 我没有看到任何指向文件的链接,但请参阅我的答案以了解故障排除方法。您的LEN 公式结果证明您的不可转换数字字符串中有无关字符。

标签: excel


【解决方案1】:

对于您无法转换为文本的数字字符串,从 cmets 看来,该字符串中似乎有额外的字符,TRIMCLEAN 无法删除。

  • 确定这些字符是什么
    • 假设“不可转换”数字字符串在A1
    • 输入以下公式
      • B1: =MID($A$1,ROWS($1:1),1)并填写
      • C1: = UNICODE(B1)并填写
    • 据此,您可以确定要在SUBSTITUTE 函数中使用的字符。

例如:

从上面我们看到我们需要去掉的字符代码是160

所以我们使用:

=SUBSTITUTE(A1,CHAR(160),"")

或者,一步将其转换为数字:

=--SUBSTITUTE(A1,CHAR(160),"")

注意如果字符代码>255,请在SUBSTITUTE函数中使用UNICHAR而不是CHAR

【讨论】:

  • 像魅力一样工作。某些单元格的字符代码为8207,而其他单元格的字符代码为8206。感谢您的帮助
  • @adelsameer 很高兴为您提供帮助。这些代码非常有趣。它们用于精确定义节点应该呈现left-to-right 还是right-to-left。因此,也许在某个时候,这些数字被嵌入到呈现为right-to-left 的短语中,并且必须呈现为left-to-right
【解决方案2】:

没有示例,我使用 value() 将 excel 的内容转换为文本,如下所示:

=value(left(“10kg”,2))

或者以下也可以:

=left(“10kg”,2)*1

请注意,那些双引号应该是直引号 - 抱歉,智能手机并不总是智能...

如果前导或尾随空格是一个问题,那么 trim() 是一种解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-12
    • 2020-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-14
    • 1970-01-01
    相关资源
    最近更新 更多