SoftTimur Asked: 2021-11-10 08:38:34 +0800 CST2021-11-10 08:38:34 +0800 CST 2021-11-10 08:38:34 +0800 CST 来自软件的文本的奇怪行为 772 我意识到有时我的同事发给我的工作簿中的文本有奇怪的行为。他们可能从内部软件中获得这些文本。 例如,B2 是我从他们的工作簿中复制粘贴的文本。它的格式已经是Text. E2是我输入的文本,格式Text也是。G2 检查它们是否相同,并返回FALSE. 有人知道这里的原因吗?我如何将同事的文本转换为我可以使用的东西? microsoft-excel 2 个回答 Voted Best Answer Yorik 2021-11-10T10:41:42+08:002021-11-10T10:41:42+08:00 如果我将一个单元格中的数字粘贴到另一个单元格中,然后将单元格格式设置为“文本”;然后使用预先格式化为文本的单元格手动输入数字;然后使用您的比较,我得到相同的结果。 您可能需要注意转换问题(可能不是货币安全等,请查看文档),但如果您使用=value(E2)=value(B2)它应该可以工作。 旁注:我相信我在您的屏幕截图中看到了两个单元格之间的显示字体差异。不确定这是 excel 还是您粘贴的内容中嵌入了 XML 格式标记。这可能会导致相等运算符以不同的方式看待它们。 Jeorje 2021-11-10T17:49:14+08:002021-11-10T17:49:14+08:00 Yorik解决了这可能发生的两个主要原因。我正在放大每一个。 首先,格式化。一个猜测 - GUESS 是我们所能做的,因为你没有发布一个失败“工作”作为失败的电子表格 - 你的意思是来自同事的单元格本身已经格式化为文本,因此这让一个人感到困惑。但是,细微的差别,但重要的是,如果您的意思是工作表中的单元格被预先格式化为文本,而粘贴的单元格不一定如此,那么这会让人们对正在发生的事情有所了解。除此之外,人们经常将“一件事”说成是一个离散的事实,而实际上他们并不知道它的字面意思。 例如,您可以复制并粘贴单元格,看到数字值出现在单元格的左侧并认为“这是文本。它是格式化为文本的数字字符,因为如果格式化为数字,它们将出现在单元格的右边缘“ 这是常见的,在生活中无处不在(如果曾经是陪审员,请记住这一点),所以我不会以任何方式侮辱你。推理的结论被视为字面事实,因为推理被认为是完全正确的。 如果是这样,并且材料实际上没有格式化为文本,只是看起来好像是,那么原因必须是数据中的额外材料。例如,许多互联网材料中都有字符,有助于以令人愉悦和有用的方式呈现它。这些都没有真正被CLEAN()网站上呈现的其他角色或几乎毫无价值的短名单所解决。 即使在公式编辑器中,它们也可以完全不可见。小心的人用箭头键小心地从一个字符移动到另一个字符,并且小心地、不眨眼地通过在按下箭头键时看到光标闪烁而仔细注意到该子组中的一个,但在另一次按下确实移动时完全没有移动。该字符根本没有宽度,因此除了像这样的仔细测试之外,任何视觉都看不见。 这个角度的大致思路怎么办?进入公式编辑器并复制所有内容。喜欢Shift-Control-Home和复制。退出编辑器并选择一个格式为“常规”或某种数字格式的空白单元格。输入它的编辑器并粘贴其他单元格的内容。它会立即显示为数字吗?如果是,请参阅此答案的后面部分。如果不是,那么还有你没有看到的额外材料,谜团就解决了。删除它是您想要研究或提出另一个问题的另一个故事。 这是一个测试,即使是非常相信另一种方式的人也无法真正争论。但是Yorick,他的VALUE()测试也很棒。即使只是在粘贴的单元格上使用它,而不是进行比较,也会告诉你:如果它是一个数字,那么就没有多余的东西了。如果它是一个错误,那么不管你喜不喜欢,不管你信不信,都会有额外的材料存在。 所以......“稍后在这个答案中”......如果你确定它真的只是五个数字字符并且单元格上真的有一个文本格式,它就会变得更加有趣。鉴于您从已经是文本的地方复制和粘贴(当然,除非不是这样:见上文),通常情况并非如此。通常的担忧是,更改单元格的格式并不意味着 Excel 会立即将其视为新格式。因此,将数字单元格更改为文本单元格,其中的数字仍然是数字。反之亦然。到那时,这种情况经常出现,令人惊讶的是,必须强制(Excel 中的“强制”)Excel 将更改考虑在内。 我发现保存电子表格并重新打开它几乎总是有用的。还有很多其他方法,但可以一举解决所有此类细胞。几乎总是。请记住,尽管 Excel 中的许多东西对确切的细节非常敏感,因此您使用的材料可能会从该方法或任何其他常用方法中看到较低的成功率。或更高。无论如何,试一试。可能你所基于的困惑与你想象的不完全一样。或者它可能不会。 另一个可能发生的奇怪现象是粘贴图像,而不是单元格。这可能会导致图片显示的内容。 另一个测试是,在粘贴单元格后,在其中输入一些其他数字,看看在比较单元格中输入相同的数字后会发生什么。打字,不是粘贴。单元格可以格式化为;;;25119,并且可以在其中键入“马”。或者它的格式;;;@\9是输入“2511”,或者其他一些变体。显然,这是一件非常不可能的事情,而且会很奇怪,但可能会发生。此外,如果 100 个单元格有此问题,则不太可能。但是... 同事有时会和其他同事一起玩。我敢肯定,一切都很有趣。虽然发生。 另一种可能发生的方式是,如果单元格上有一个(或多个)条件格式。粘贴时会复制过来。=ISNUMBER(cell address)对于数字 25119,只需一条简单的规则即可,并且可以选择“文本”的数字格式。因此,由于条件格式,它将显示为文本。它会将 TRUE 与格式化为具有正常格式的文本的单元格进行比较吗?不,它不会。它会(并且确实,我测试过)给出一个错误的结果。所以还有另一种可能发生的方式。这位同事可能有一些理由这样做。也许他希望将数字保留为数字以供下游使用,但为了显示,他不希望在左侧的一列主要是文本的右侧出现不和谐的数字。其他原因也可能适用。 要寻找的东西。 但是这里的标题想法,即同事不知何故在 Excel 中发现了一个奇怪的地方,但事实并非如此。我已经使用它 30 年了,只在 Excel 中发现了一个奇怪的显示,这只是在单元格中很少使用文本的显示。细胞中材料的“价值”根本不是怪异的一部分。对于您所看到的,有一个简单的解释,无论它可能是什么。 要获得比这更明确的内容,请在某个存储库中发布 .XLSX(不是 .XLSM)文件的副本(人们喜欢这里的 DropBox 等),其中包含有意义的 URL,而不是“TinyURL”或其他“可能隐藏任何东西,如果我打开它会打击我” URL。如果我们能准确地看到那里有什么,我们就可以准确地告诉你正在发生的事情。在这种情况下,一张图片不值一千个字。它实际上一文不值。
如果我将一个单元格中的数字粘贴到另一个单元格中,然后将单元格格式设置为“文本”;然后使用预先格式化为文本的单元格手动输入数字;然后使用您的比较,我得到相同的结果。
您可能需要注意转换问题(可能不是货币安全等,请查看文档),但如果您使用
=value(E2)=value(B2)
它应该可以工作。旁注:我相信我在您的屏幕截图中看到了两个单元格之间的显示字体差异。不确定这是 excel 还是您粘贴的内容中嵌入了 XML 格式标记。这可能会导致相等运算符以不同的方式看待它们。
Yorik
解决了这可能发生的两个主要原因。我正在放大每一个。首先,格式化。一个猜测 - GUESS 是我们所能做的,因为你没有发布一个失败“工作”作为失败的电子表格 - 你的意思是来自同事的单元格本身已经格式化为文本,因此这让一个人感到困惑。但是,细微的差别,但重要的是,如果您的意思是工作表中的单元格被预先格式化为文本,而粘贴的单元格不一定如此,那么这会让人们对正在发生的事情有所了解。除此之外,人们经常将“一件事”说成是一个离散的事实,而实际上他们并不知道它的字面意思。
例如,您可以复制并粘贴单元格,看到数字值出现在单元格的左侧并认为“这是文本。它是格式化为文本的数字字符,因为如果格式化为数字,它们将出现在单元格的右边缘“ 这是常见的,在生活中无处不在(如果曾经是陪审员,请记住这一点),所以我不会以任何方式侮辱你。推理的结论被视为字面事实,因为推理被认为是完全正确的。
如果是这样,并且材料实际上没有格式化为文本,只是看起来好像是,那么原因必须是数据中的额外材料。例如,许多互联网材料中都有字符,有助于以令人愉悦和有用的方式呈现它。这些都没有真正被
CLEAN()
网站上呈现的其他角色或几乎毫无价值的短名单所解决。即使在公式编辑器中,它们也可以完全不可见。小心的人用箭头键小心地从一个字符移动到另一个字符,并且小心地、不眨眼地通过在按下箭头键时看到光标闪烁而仔细注意到该子组中的一个,但在另一次按下确实移动时完全没有移动。该字符根本没有宽度,因此除了像这样的仔细测试之外,任何视觉都看不见。
这个角度的大致思路怎么办?进入公式编辑器并复制所有内容。喜欢Shift-Control-Home和复制。退出编辑器并选择一个格式为“常规”或某种数字格式的空白单元格。输入它的编辑器并粘贴其他单元格的内容。它会立即显示为数字吗?如果是,请参阅此答案的后面部分。如果不是,那么还有你没有看到的额外材料,谜团就解决了。删除它是您想要研究或提出另一个问题的另一个故事。
这是一个测试,即使是非常相信另一种方式的人也无法真正争论。但是
Yorick
,他的VALUE()
测试也很棒。即使只是在粘贴的单元格上使用它,而不是进行比较,也会告诉你:如果它是一个数字,那么就没有多余的东西了。如果它是一个错误,那么不管你喜不喜欢,不管你信不信,都会有额外的材料存在。所以......“稍后在这个答案中”......如果你确定它真的只是五个数字字符并且单元格上真的有一个文本格式,它就会变得更加有趣。鉴于您从已经是文本的地方复制和粘贴(当然,除非不是这样:见上文),通常情况并非如此。通常的担忧是,更改单元格的格式并不意味着 Excel 会立即将其视为新格式。因此,将数字单元格更改为文本单元格,其中的数字仍然是数字。反之亦然。到那时,这种情况经常出现,令人惊讶的是,必须强制(Excel 中的“强制”)Excel 将更改考虑在内。
我发现保存电子表格并重新打开它几乎总是有用的。还有很多其他方法,但可以一举解决所有此类细胞。几乎总是。请记住,尽管 Excel 中的许多东西对确切的细节非常敏感,因此您使用的材料可能会从该方法或任何其他常用方法中看到较低的成功率。或更高。无论如何,试一试。可能你所基于的困惑与你想象的不完全一样。或者它可能不会。
另一个可能发生的奇怪现象是粘贴图像,而不是单元格。这可能会导致图片显示的内容。
另一个测试是,在粘贴单元格后,在其中输入一些其他数字,看看在比较单元格中输入相同的数字后会发生什么。打字,不是粘贴。单元格可以格式化为
;;;25119
,并且可以在其中键入“马”。或者它的格式;;;@\9
是输入“2511”,或者其他一些变体。显然,这是一件非常不可能的事情,而且会很奇怪,但可能会发生。此外,如果 100 个单元格有此问题,则不太可能。但是... 同事有时会和其他同事一起玩。我敢肯定,一切都很有趣。虽然发生。另一种可能发生的方式是,如果单元格上有一个(或多个)条件格式。粘贴时会复制过来。
=ISNUMBER(cell address)
对于数字 25119,只需一条简单的规则即可,并且可以选择“文本”的数字格式。因此,由于条件格式,它将显示为文本。它会将 TRUE 与格式化为具有正常格式的文本的单元格进行比较吗?不,它不会。它会(并且确实,我测试过)给出一个错误的结果。所以还有另一种可能发生的方式。这位同事可能有一些理由这样做。也许他希望将数字保留为数字以供下游使用,但为了显示,他不希望在左侧的一列主要是文本的右侧出现不和谐的数字。其他原因也可能适用。要寻找的东西。
但是这里的标题想法,即同事不知何故在 Excel 中发现了一个奇怪的地方,但事实并非如此。我已经使用它 30 年了,只在 Excel 中发现了一个奇怪的显示,这只是在单元格中很少使用文本的显示。细胞中材料的“价值”根本不是怪异的一部分。对于您所看到的,有一个简单的解释,无论它可能是什么。
要获得比这更明确的内容,请在某个存储库中发布 .XLSX(不是 .XLSM)文件的副本(人们喜欢这里的 DropBox 等),其中包含有意义的 URL,而不是“TinyURL”或其他“可能隐藏任何东西,如果我打开它会打击我” URL。如果我们能准确地看到那里有什么,我们就可以准确地告诉你正在发生的事情。在这种情况下,一张图片不值一千个字。它实际上一文不值。