我的 B 列中有一个公式,里面全是 IF,每个单元格都引用其上方的单元格。有时我需要删除一些行。删除一行后,B 列中的公式会为已删除行下方的其余单元格提供 #REF。我怎样才能删除一行,然后公式会通过引用其上方的新单元格自动更新?此外,添加行时,公式是否可以自动在单元格 B 中执行,而无需我每次都添加它?
答案1
取决于您的情况和布局。根据情况,有 2 个选项。
注释掉您可以使用绝对引用,我认为这是您想要的,例如
=IF($A$1)
$ 表示它会粘附到该单元格,无论其值是多少!
但是,根据你删除的内容,你可能会发现使用间接删除很有用
返回由文本字符串指定的引用。立即计算引用以显示其内容。当您想要更改公式中单元格的引用而不更改公式本身时,请使用 INDIRECT。
=INDIRECT($A$2)
更多的信息和引述及图片来源
答案2
我之前遇到过同样的问题。这是我引用当前单元格上方的单元格的方式(在本例中为 A2):
=OFFSET(A2,-1,0)
但是,添加行时,需要复制并粘贴公式。除非创建脚本来自动执行此操作。
有关偏移公式的更多信息:https://support.office.com/en-us/article/OFFSET-function-c8de19ae-dd79-4b9b-a14e-b4d906d11b66
答案3
我有一本工作簿,其中的工作表通过公式从另一张工作表中提取数据。数据的性质意味着可能有许多行包含重复或错误的数据,需要删除。删除源工作表中的行会打乱导入和计算。我在清理数据时使用了一种编辑解决方法。这个过程很简单。我创建一个编辑数据工作表。将源数据的整个工作表复制到其中。编辑数据,根据需要删除行,然后将数据粘贴回源工作表。简单而高效!