我正在处理一个相当复杂(对我来说)的公式,这个公式有点用,但不太正确,我尝试了各种似乎有帮助的方法,突然间公式变成了文本,被包裹在单元格中,无法计算。撤消也无济于事。没有前导单引号字符(“'”)可以删除,复制和粘贴也无济于事。我陷入了困境。我抓狂了,骂了 LibreOffice 好几个小时。
谷歌搜索找到了六年前和十二年前的东西,虽然没有什么帮助,但最终为我指明了正确的方向。
为了让公式正常工作,我之前尝试过的方法之一是将公式所在的列格式化为文本。结果发现这是一个大错误。应用格式后,公式仍然可以正常计算。直到后来,当我尝试其他方法更改公式时,才出现故障。更改公式时,新版本会写入单元格,然后它就变成了文本,无法恢复。所以我花了几个小时寻找具体的更改,而不是我几个小时前尝试过的格式更改。
这有点道理,但我仍然认为这是一个错误。如果您有一堆格式化为文本的空白单元格,并且您开始在其中写入内容,则所有内容都将被格式化为文本。并且,如果您在这些文本单元格中键入数字,它们将以文本形式输入,这很有帮助。如果您键入公式,它将是文本,而不是计算结果,就好像您在每个单元格的开头都使用单引号,但实际上没有该字符一样。这真的有用吗?我不知道。
真正的问题在于,如果您将文本格式应用于非空白单元格,并且其中一些单元格有公式,公式仍将继续计算并正确显示,因此您还不知道有什么不对劲。只有当您突然更改公式时,由于单元格现在正在被写入(覆盖以前的内容),它才会变成文本而不是保留公式。因此,在您实际进行更改(将单元格格式化为文本)很长时间后,错误才会变得明显,从而导致问题。
此时,您在该单元格中执行的任何操作、键入或粘贴都不会将文本改回公式。UNDO不会撤消它。撤消会恢复您的键入,但不会撤消将公式转换为文本,因为那不在您的立即更改列表中,而是在历史的某个地方。这让我发疯了好几个小时。将单元格的格式更改为常规甚至不会起作用——直到您再次将公式粘贴到单元格中。
我发现有类似的问题,但没有解释。有人有其他解释吗?如果有,我希望在向 Bugzilla 提交之前听听他们的意见。我的问题不是:
“发生什么事了?我该如何解决?”
而是:
“我的理解正确吗,还是我忽略了这里发生的事情的一些基本内容?”
正如我上面所说,这可能是有意为之,但它会带来难以调试的严重问题。
事实证明,这种行为对于电子表格来说是“正常的”,至少 LO Calc 人员不认为这是一个“错误”。如果在单元格中输入数据时将其格式化为文本,则它不需要前导单引号即可被视为文本,它只是默默地、不可见地以这种方式处理。但是(与许多其他单元格格式应用不同)这仅适用于输入数据的情况。现有公式不是“输入”,它只是在那里。当您更改公式时,新数据将输入到单元格中,并自动变为文本。
我发现这很令人困惑,因为它与其他格式行为不一致,但与我交谈的 LO 工程师表示,他们不太可能将其更改为更一致,因为“人们已经习惯了它”并且因为它以这种方式模拟 Excel。
算了。Dvorak 键盘的效率是 Qwerty 的 10 倍,但我用的是哪一个呢,因为其他很多人都“习惯”用那个键盘?