当您将一个公式从一个单元格复制到另一个单元格时,Excel会根据接收该公式的目标自动更新该公式内的所有相对引用。例如,假定单元格B7包含以下公式:

=B6+A7

如果将此公式复制到单元格D22,Excel将自动更新引用,因此它们相对于单元格D22,如下所示:

=D21+C22

当您将公式从一个工作表复制到另一个工作表,并且该公式包含对先前工作表的引用时,Excel不会进行这种类型的公式更新-至少不在工作表名称上进行。例如,假设您有三个按顺序排列的工作表,分别称为一月,二月和三月。在二月工作表上,您具有以下公式:

=January!B7*1.075

如果将此单元格复制到March工作表,Excel将自动更改B7参考(如有必要),但不会更改工作表名称(一月,比第一次出现该公式的工作表少“一”)调整后的相对工作表名称(2月,比将公式复制到的工作表“少”一个)。

如果您在复制的公式中只有几个工作表引用,则只需编辑公式就相当容易,因此它们引用了正确的工作表。但是,如果您有数十或数百个此类引用,则该任务很快就会成为噩梦。

解决方案是在Excel中进行简单的搜索和替换操作,如下所示:

。将公式从2月工作表复制到3月工作表上的所需位置。

。在3月工作表可见的情况下,按Ctrl + A。这将选择目标工作表中的所有单元格。

。按Ctrl + H。 Excel将显示“查找和替换”对话框的“替换”选项卡。 (请参见图1。)

。在“查找内容”框中,输入“一月!” (不带引号)。

。在“替换为”框中,输入“二月!” (不带引号)。

。单击全部替换。

现在,工作表中的公式已更新,因此它们引用了正确的工作表。

请注意,在第4步和第5步中,要搜索和替换的不是连续的月份名称。这样做是因为单独的月份名称(一月,二月等)很容易在工作表的其他位置出现而无需成为公式的一部分。您不想更改这些实例,因此包含了多余的字符以帮助缩小搜索范围。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(9869)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处找到适用于Excel的较旧菜单界面的本技巧的版本: