使用 Libre Office 6.3.0.4、Linux Mint 19.2、Flatpak 版本。
我有一个简单的函数,需要有一个静态行:=K15-G$2
. 不确定错误何时开始发生,但在我在第 2 行上方插入 (3) 行后,函数更改为=K15-G$5
. 如果我复制/移动此功能,原始值将保持预期。我尝试将其修改为 read =K15-$G$2
,但这没有任何区别。
在这种情况下,我怎样才能让绝对单元格引用起作用?
使用 Libre Office 6.3.0.4、Linux Mint 19.2、Flatpak 版本。
我有一个简单的函数,需要有一个静态行:=K15-G$2
. 不确定错误何时开始发生,但在我在第 2 行上方插入 (3) 行后,函数更改为=K15-G$5
. 如果我复制/移动此功能,原始值将保持预期。我尝试将其修改为 read =K15-$G$2
,但这没有任何区别。
在这种情况下,我怎样才能让绝对单元格引用起作用?
localc
正在按照文档记录(并且应该按照自Visicalc 时代以来每个电子表格所做的那样工作)。这是一个功能,而不是一个错误。
您的公式引用了 cell
G$2
。您插入了移动G$2
到的行,G$5
因此localc
将对旧的所有引用更新G$2
到其新位置G$5
,保留对相同数据的引用。简而言之:单元格已移动,因此必须更新对它的所有引用以匹配其新位置。
无论引用是相对的还是绝对的,这都需要发生——重要的是引用指向的数据。
如果它不这样做,那么每次插入或删除列或行时,引用由于该操作而移动的任何单元格的每个公式都会被破坏,因为它将指向错误的数据。
当您将单元格从一个位置剪切并粘贴到另一个位置时,也会发生同样的事情 - 如果有任何公式引用它,它们会更新以引用新位置。这允许您将一个或多个单元格移动到工作表上的不同位置,甚至移动到一个全新的工作表。
顺便说一句,如果您在下面
G$2
插入了行,则G$2
不会移动,也无需更新对它的任何引用。当您需要在表中的两个现有行之间插入一行或多行时,这种情况经常发生。或者当您对表格中的数据进行排序时。