Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google sheets Google Sheets公式有时不适用于合并单元格_Google Sheets_Google Sheets Formula - Fatal编程技术网

Google sheets Google Sheets公式有时不适用于合并单元格

Google sheets Google Sheets公式有时不适用于合并单元格,google-sheets,google-sheets-formula,Google Sheets,Google Sheets Formula,因此,我在Google Sheets中创建了一个发票电子表格,并广泛使用了合并单元格,以便为发票创建更清晰的外观 这里是我遇到的问题:有时,我简单的减法公式不能给我一个正确的结果。该公式用于从期初余额(单元格R27)中减去未售出余额(单元格V27) 同样,这个公式本身没有什么问题,因为它99%的时间都是正确的,但偶尔,它只会给我一个与初始平衡相匹配的答案 这里还有一个电子表格副本的链接,供任何愿意查看的人使用 还有其他人有过这种情况吗?是什么原因导致了这种情况,更重要的是,如何将其修复为更可靠

因此,我在Google Sheets中创建了一个发票电子表格,并广泛使用了合并单元格,以便为发票创建更清晰的外观

这里是我遇到的问题:有时,我简单的减法公式不能给我一个正确的结果。该公式用于从期初余额(单元格R27)中减去未售出余额(单元格V27)

同样,这个公式本身没有什么问题,因为它99%的时间都是正确的,但偶尔,它只会给我一个与初始平衡相匹配的答案

这里还有一个电子表格副本的链接,供任何愿意查看的人使用


还有其他人有过这种情况吗?是什么原因导致了这种情况,更重要的是,如何将其修复为更可靠?

我们这些专业开发图纸解决方案的人都有一些基本规则,我们可以遵循这些规则,并鼓励其他人不要违反这些规则。其中之一是“永远不要在将要(或曾经可能)执行或评估计算或比较的任何地方合并单元格。”

虽然你看到的可能是个小故障,但我不会这么说。合并的单元格并不能真正去除你看不到的单元格。例如,您的手机R27没有“摆脱”手机S27、T27和U27。它只是把它们保存在内存中,大概是空的。但请记住,在工作表的“内存”中,它不会“看到”网格。只有1和0。当一个网格是新的,并且没有合并单元格时,工作表会“查找”每个单元格(使用我能给出的最佳类比),这些单元格按1和0进行上下计数,这些单元格非常小且紧凑。保持这种想法

还要注意的是,许多人在进行多个复杂的计算时都会感到惊讶,并且得到的结果与他们在计算链下游的单元格中所期望的结果不符。这是因为图纸使用浮动小数点。例如,“一除以三”大约是0.333。但在现实中,这一点延伸得非常远:0.33333333。但这不可能永远持续下去,否则床单将无法运行。所以在某个时候它会被截断。最终,这些额外的十进制数将开始累加,并逐渐增加(或减少)数字。所有这些都由运行其他所有内容的相同1和0处理

返回合并的单元格。查找和准确地“读取”合并的单元格的准确性会随着合并的单元格数量的增加而降低,因为该过程与内存中的其他单元格位置相关。过了一段时间,工作表的“浮点小数点”性质开始迷失方向,特别是(我观察到)如果您使用与您使用的相同类型的相对公式引用合并了单元格(例如,许多堆叠的合并单元格引用的是另一个合并单元格:BB2)。因此(同样通过类比),工作表尝试“利用线索猜它在哪里。"也许它在合并单元格Z-AA-AB-AC23中正确地找到了引用合并单元格合并单元格BB2-BB3-BC2-BC3的内容;但那一次,您要求它添加合并单元格R-S-T-U23和V-W-X-Y23,并减去合并单元格V-W-X-Y24……在下面的合并单元格集合Z-AA-AB-AC24中,您仍然要求使用BB2-BB3-BC2-BC3引用,但不是V-W-X-Y24减法,等等

此外,您还更改了各处的行高度。一些设置为特定高度,而另一些则适合数据

你明白了

如果Sheets试图通过在A1单元上下移动来找到东西,但没有规律性,有时,它只是举起手说,“我在哪里?”然后,当您重新加载工作表或删除并替换公式时,它会再次从A1开始,并在断开的板上播放滑槽和阶梯,可能会将一个“浮动”的小数值1或0移动到与上次不同的方向…并找到您希望它再次查找的内容

您还将得到一个56列的工作表,而您可能只需要它是12或15列。同样,您已经将行数扩展到了所需的范围之外。因此,您的处理速度大大降低

短版本:

尽管合并单元格看起来不错,但它们是一场计算噩梦。自从电子表格发明以来,我就一直在使用它们,而且我从来都不需要合并单元格(尽管我偶尔会在纯粹美观的领域使用它们)

解决方案:

1.)在不合并单元格的情况下重新制作图纸

-或-

2.)尝试在计算中包含所有合并但隐藏的单元格。这至少为床单提供了一个更宽的网。例如,在上面的示例中,您引用了以下公式:

=IF($BB$2<>"Rental","",R27-V27)
=IF($BB$2“租金”,R27-V27)
尝试(在可能的情况下)包括您合并的整个范围:

=IF($BB$2<>"Rental", "", SUM(R27:U27) - SUM(V27:Y27) )
=IF($BB$2“租金”,和(R27:U27)-和(V27:Y27))
从技术上讲,您还可以将所有单元格包括在BB2-BB3-BC2-BC3合并中:

=IF(AND($BB$2<>"Rental", $BB$3<>"Rental", $BC$2<>"Rental", $BC$3<>"Rental"), "", SUM(R27:U27) - SUM(V27:Y27) )
=IF(AND($BB$2“租金”、$BB$3“租金”、$BC$2“租金”、$BC$3“租金”)、“”、SUM(R27:U27)-SUM(V27:Y27))
但是,试着用较短的路线,只对合并的范围求和,看看它是否有效。如果是这样的话,坚持下去。如果没有,请继续引用合并区域中的每个单元格


很明显,你在建立这张表上做了很多工作。所以我相信这不是你希望听到的简单答案。但我希望它确实能为您下一步提供一些指导。

您能否重现您的问题。在您的测试表中似乎效果不错。此外,如果您有合并单元格的美学理由,您可以通过删除单元格之间的边界并允许值溢出单元格(而不是环绕或截断)来近似外观。例如,如果您想要合并O6:W6,您可以删除边框(正如您所做的那样)并将S6中的文本居中。我说“近似”是因为你知道