Excel单元格具有一些不可见的字符

时间:2015-09-16 19:55:02

标签: excel

我即将摧毁我的电脑。我预计的一项任务将花费几分钟,我会在2小时后坐在它上面。我在两个不同的Excel工作表之间尝试vlookup,但它总是返回#N / A.所以我拿了一个单元格并开始测试它,我发现问题出在查找工作簿(第二个工作簿)上。单元格中的值是一串长度为9的字母。但是当我使用= len(A1)公式时,它显示10个字符。所以我使用了trim,仍然显示了10,然后我用了这个帖子:

通常问题是一个不间断的空间 - CHAR(160) - 特别是来自网络文本来源 - CLEAN无法删除,所以我会更进一步,尝试这样的公式,取代任何具有标准空间的不间断空间

= TRIM(清洁(替代(A1,CHAR(160),“”)))

Ron de Bruin在这里有关于清理数据的提示的优秀帖子

您也可以通过

直接删除CHAR(160)而无需解决方法

编辑....替换您选择的数据, 在Find What hold ALT并使用数字键盘输入0160 将替换为空白,然后选择全部替换

仍显示10个字符,而不是9.请帮助

6 个答案:

答案 0 :(得分:2)

这是一种了解角色的简便方法。

将包含10个字符的单元格复制到单元格A1上的新工作表。

选择单元格B1:B10并单击工作表顶部的公式栏并粘贴此公式:

=MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)

这是一个数组公式,必须使用 Ctrl + Shift + Enter 确认。

现在......在选定的单元格中,您应该会看到每个单元格中有一个字符。其中一个很可能看起来像一个空白单元格,但事实并非如此。

现在,选择单元格C1:C10并再次单击公式栏。这一次,粘贴这个公式:

=CODE(B1)

您将以不同方式确认此公式。同时按Control和Enter。

在C栏中,您现在将看到B列中每个字符的字符代码。看起来为空白的单元格的代码是什么?

答案 1 :(得分:1)

从外部网站导出数据时遇到此问题。我尝试修剪,清理,修剪(替换),清理(替换),重新粘贴到新工作表中,检查原始单元格的格式。什么都没有奏效。所以我所做的就是检查字符串的各个部分。在我的例子中,它是一个存储为字符串的16位数字。使用左侧函数,我返回最左边的4个字符。只有3个角色出现。所以我只使用正确的函数返回最右边的16个字符,并删除了神秘的隐形前导字符。

答案 2 :(得分:1)

这个问题以及上面(或下面)的答案引导我解决了我遇到的问题,因此我想提出一些赞成,并在其中总结一下OP对原始问题的答案:

步骤1:确定神秘角色的角色代码。在单个字符上使用的=UNICODE()将为您提供此代码。如果您收到#NAME?错误,请记住在神秘字符周围加上引号,因为它应该作为字符串输入。

步骤2:用可见字符替换神秘字符,或使用以下命令将其删除:

=SUBSTITUTE(A1,UNICHAR(x),"y")

x是在第一步中确定的代码,y是您想要替换它的内容,而A1是您的问题单元格的位置。

UNICODEUNICHAR理论上可以替换为CODECHAR,但是在我刚刚用♪执行的快速测试中,我无法获得他们工作。

有很多替代方法,特别是一旦你开始考虑VBA,但关键是能够弄清楚 的神秘角色是什么。

答案 3 :(得分:0)

我有同样的问题。从数据库复制数据,何时执行vlookup,找不到相同的文本。我尝试了一切,TRIM,RIGHT,LEFT,LEN但仍然没有工作。直到我找到一个解决方案,但我忘记了从哪里得到它,它对我有用。我复制我想要查找的范围并将Word粘贴为无格式文本。然后,复制文本并使用无格式文本粘贴到Excel中。完成后,vlookup工作正常。希望能帮助到你。感谢。

答案 4 :(得分:0)

谢谢@ matt2103。那对我有用。只是要补充一点,不要使用code()函数。仅使用unicode()。我有Unicode 8206-一个不可见/神秘字符,在Excel中应用公式时会导致值错误。

答案 5 :(得分:0)

在其他答案的基础上,这是我快速找到胭脂字符的方式。

  1. 使要研究的单元格右侧的单元格宽度变窄,以使结果更易于阅读。
  2. 在包含要调查的单元格的行上方插入一行。
  3. 假设正在调查的单元格位于A2,请输入以下内容 该单元格=UNICODE(MID($A2,COLUMN()-1, 1))右侧的论坛 并在该单元格上方的单元格中显示以下论坛 您刚刚输入的=UNICHAR(B2)论坛。 (如果要检查的单元格不在A2上,则将A2和B2更改为合适的值。)
  4. 单元格B1应该显示正在调查的单元格的第一个字符。
  5. 将单元格B2复制到它右边的单元格,然后将单元格B1复制到它右边的单元格。

您现在可以在单元格中看到每个字符的Unicode值。空格应全部为32。如果任何空格都是另一个值(例如160),请复制该字符,然后使用该字符用空格全局替换电子表格中该字符的所有实例。