在新电子表格中输入公式时无法解析

问题描述 投票:0回答:2

我有一个谷歌电子表格,其中包含一些值和公式,我想将其复制到另一个电子表格中的另一个工作表中,但是粘贴的公式在新工作表中以

Formula parse error.
中断。

例如,公式

=FLOOR.MATH($C$2/100*$I$5, 5)
在第一个电子表格的工作表中有效,但在第二个电子表格的工作表中被破坏,即使手动重新输入也是如此。

删除引用并仅使用数字不会改变任何内容 - 仍然是相同的错误。然而,简单的公式和参考文献是有效的。例如,

=$C$2
=42/100 * 5
在两个电子表格中均按预期工作。

我已经确认该公式适用于第一个电子表格中的不同工作表,并且具有不同的值和单元格引用。

为什么此公式仅在一个电子表格中有效,而在输入到另一电子表格中时无效?

google-sheets locale google-sheets-formula parse-error
2个回答
2
投票

我发现问题了。这是由于电子表格之间的区域设置差异造成的。

“工作”电子表格所在的区域设置使用句点作为小数点分隔符。 “损坏的”电子表格所在区域设置使用逗号作为小数点分隔符。

这意味着在第二个工作表的公式中,分隔参数的逗号被解释为小数分隔符。这就是为什么简单的公式有效,而需要参数的更复杂的公式失败的原因。

这可以通过转到

File -> Spreadsheet settings
并检查每个文档的
Locale
设置来确认。

要修复有两种选择:

  1. 更改第二个电子表格的区域设置以匹配第一个电子表格
  2. 将公式中的逗号改为分号

由于分号适用于所有区域设置,因此这是您应该进行的首选更改,尤其是在第一次编写公式时


0
投票

如果您使用谷歌应用程序脚本,则可以使用以下代码更改区域设置:

 // Get reference to the whole document
 var newDocument = SpreadsheetApp.create(documentName);

 // Change the locale
 newDocument.setSpreadsheetLocale('es');

其中

es
是西班牙的语言环境

© www.soinside.com 2019 - 2024. All rights reserved.