软件文本的奇怪行为

软件文本的奇怪行为

我意识到同事发给我的工作簿中的文本有时会出现奇怪的行为。他们可能从内部软件中获取了这些文本。

例如,B2 是我从他们的工作簿中复制粘贴的文本。它的格式已经是Text。E2 是我输入的文本,其格式Text也是 。G2 检查它们是否相同,并返回FALSE

有人知道原因吗?我该如何将同事发来的文本转换为我可以使用的内容?

在此处输入图片描述

在此处输入图片描述

答案1

如果我将一个单元格中的数字粘贴到另一个单元格,然后将单元格格式设置为“文本”;然后使用预先格式化为文本的单元格手动输入数字;然后使用您的比较,我会得到相同的结果。

您可能需要注意转换问题(可能不是货币安全等,请检查文档),但如果你使用=value(E2)=value(B2)它应该可以工作。

附注:我相信我看到了屏幕截图中两个单元格的显示字体差异。不确定这是 Excel 还是您粘贴的内容中嵌入了 XML 格式标记。这可能会导致相等运算符看到不同的内容。

答案2

Yorik解决了可能发生这种情况的两个主要原因。我将逐一进行阐述。

首先,格式化。有人猜测——我们只能猜测,因为你没有发布一个将“工作”失败作为失败的电子表格——你的意思是同事的单元格本身已经格式化为文本,因此这让人感到困惑。但是,细微的差别,但很重要,如果你的意思是你的工作表中的单元格预先格式化为文本,而粘贴的单元格不一定如此,那么这会让人思考发生了什么。除此之外,人们经常将“某件事”陈述为一个离散的事实,而实际上,他们并不真正了解它。

例如,您可以复制并粘贴单元格,看到数值出现在单元格左侧,然后想“这是文本。它是格式化为文本的数字字符,因为如果格式化为数字,它们将出现在单元格的右边缘。而我的单元格格式化为文本,所以……它们一定是文本。”这是生活中随处可见的常见现象(如果你曾经是陪审员,要记住这一点),所以我没有以任何方式侮辱你。合理的结论被视为字面事实,因为推理被认为是完全正确的。

如果是这样,而且材料实际上不是文本格式,只是看起来像是文本,那么原因就一定是数据中的额外材料。例如,很多互联网材料中都有字符,有助于以令人愉悦和有用的方式呈现。CLEAN()网站上呈现的其他字符的简短列表或几乎毫无价值的其他字符列表都没有真正解决这些问题。

而且它们可能完全不可见,即使在公式编辑器中也是如此。一个细心的人用箭头键小心地从一个字符移动到另一个字符,并且小心翼翼,一眨不眨,可能会注意到这个子组中的某个字符,因为当按下箭头键时,光标会闪烁,但除此之外,当再次按下箭头键时,光标完全没有移动。该字符根本没有宽度,因此除了像这样的仔细测试外,任何视觉效果都是不可见的。

如何处理这个角度的总体思路?进入公式编辑器并复制所有内容。点赞Shift-Control-Home并复制。退出编辑器并选择一个格式为“常规”或某种数字格式的空白单元格。进入编辑器并粘贴另一个单元格的内容。它会立即显示为数字吗?如果是,请参阅本答案后面的内容。如果不是,那么你就看不到额外的材料了,谜团就解开了。删除它是另一个故事,你可能想研究或问另一个问题。

这是一个测试,即使对另一种方法深信不疑的人也无法真正争论。但是YorickVALUE()测试也很棒。即使只是在粘贴的单元格上使用它,而不是进行比较,也会告诉你:如果它是一个数字,那么就没有多余的东西。如果它是一个错误,那么不管你喜欢与否,不管你信不信,都有多余的材料存在。

所以……“稍后在此答案中”……如果您确定它确实只是五个数字字符,并且单元格上确实存在文本格式,那么事情就会变得更加有趣。假设您从已经是文本的地方复制并粘贴它(当然,除非情况并非如此:请参见上文),通常的担忧根本不会如此。通常的担忧是更改单元格的格式并不意味着 Excel 会立即将其视为新格式。因此,将数字单元格更改为文本单元格时,其中的数字仍为数字。反之亦然。此时,令人惊讶的是,这种情况经常发生,必须强制(用 Excel 的说法是“强制”)Excel 考虑更改。

我发现保存电子表格并重新打开它几乎总能解决问题。还有很多其他方法,但这种方法可以一次性解决所有这些单元格的问题。几乎总是如此。但请记住,Excel 中的许多内容对精确的细节非常敏感,因此您处理的材料使用这种方法或任何其他常用方法的成功率可能会较低。或更高。无论如何,试一试。您困惑的基础可能与您想象的并不完全一样。也可能不是。

可能发生的另一个奇怪现象是,粘贴的是图像,而不是单元格。这可能会导致图片显示的内容。

另一个测试是,粘贴单元格后,在其中输入其他数字,然后查看在比较单元格中输入相同数字后会发生什么。输入,而不是粘贴。单元格可能被格式化为;;;25119“horse”,也可能被格式化;;;@\9为“2511”,或者其他一些变体。显然,这是非常不可能发生的事情,而且很奇怪,但确实会发生。此外,如果 100 个单元格都有这个问题,则不太可能。但是……同事有时会与其他同事开玩笑。我相信这很有趣。不过确实会发生。

另一种可能发生这种情况的方式是,如果单元格上有一个(或多个)条件格式。它会在粘贴时复制过来。=ISNUMBER(cell address)对于数字 25119,一个简单的规则就是 TRUE,并且可以选择“文本”数字格式。因此,由于条件格式,它将显示为文本。它会将 TRUE 与格式化为文本的单元格进行比较吗?不,不会。它会(而且确实如此,我测试过)给出 FALSE 结果。所以还有另一种可能发生这种情况的方式。同事这样做可能有某种原因。也许他希望将数字保留为数字以供下游使用,但对于显示,他不希望在左侧主要是文本的列中出现右侧的刺耳数字。其他原因也可能适用。

要寻找的东西。

但这里的标题观点是,同事不知何故在 Excel 中发现了一个怪异之处,但事实并非如此。我已经用了 30 年了,只发现 Excel 中有一个显示怪异之处,那就是在单元格中显示罕见的文本。单元格中材料的“值”根本不是怪异的一部分。对于您所看到的情况,有一个简单的解释,无论是哪种解释。

为了得到更明确的信息,请在某个存储库(人们喜欢这里的 DropBox 等)中发布 .XLSX(不是 .XLSM)文件的副本,并使用有意义的 URL,而不是“TinyURL”或其他“可能隐藏任何内容,如果我打开它,我会感到震惊”的 URL。如果我们能准确地看到那里有什么,我们就能准确地告诉你发生了什么。在这种情况下,一张图片不值千言万语。它实际上毫无价值。

相关内容