复制没有链接移位的公式

市场问题

假设我们有一个像这样的简单表格,其中计算了两个城市每个月的金额,然后按照黄色单元格 J2 中的汇率将总额转换为欧元。

复制没有链接移位的公式

问题是,如果您将 D2:D8 范围内的公式复制到工作表的其他位置,Microsoft Excel 将自动更正这些公式中的链接,将它们移动到新位置并停止计数:

复制没有链接移位的公式

任务:用公式复制范围,使公式不变,保持不变,保持计算结果。

方法一、绝对链接

从上图可以看出,Excel 只移动相对链接。 对黄色单元格 $J$2 的绝对引用(带有 $ 符号)没有移动。 因此,为了精确复制公式,您可以暂时将所有公式中的所有引用转换为绝对引用。 您将需要在公式栏中选择每个公式并按 键 F4:
复制没有链接移位的公式
对于大量单元格,这个选项当然会消失——太费力了。

方法 2:暂时禁用公式

为防止公式在复制时发生更改,您需要(暂时)确保 Excel 停止将它们视为公式。 这可以通过将等号 (=) 替换为公式中通常不存在的任何其他字符来完成,例如用于复制时间的井号 (#) 或与符号对 (&&)。 为了这:

  1. 使用公式选择范围(在我们的示例中为 D2:D8)
  2. 点击 Ctrl + H 在键盘或选项卡上 主页 – 查找和选择 – 替换 (首页—查找&选择—替换)

    复制没有链接移位的公式

  3. 在出现的对话框中,输入我们要查找的内容和替换的内容,然后在 参数 (选项) 不要忘记澄清 搜索范围 - 公式. 我们按 全部替换 (全部替换).
  4. 将带有已停用公式的结果范围复制到正确的位置:

    复制没有链接移位的公式

  5. 更换 # on = 使用相同的窗口返回,将功能返回给公式。

方法3:通过记事本复制

这种方法更快更容易。

按键盘快捷键 Ctrl+Ё 或按钮 显示公式 标签 公式 (公式 - 显示公式), 打开公式检查模式——单元格将显示计算它们的公式,而不是结果:

复制没有链接移位的公式

复制我们的范围 D2:D8 并将其粘贴到标准中 笔记本:

复制没有链接移位的公式

现在选择粘贴的所有内容(Ctrl + A),再次将其复制到剪贴板(Ctrl + C)并将其粘贴到工作表上您需要的位置:

复制没有链接移位的公式

它只剩下按下按钮 显示公式 (显示公式)将 Excel 返回到正常模式。

注意:此方法有时在具有合并单元格的复杂表格上会失败,但在绝大多数情况下它可以正常工作。

方法 4. 宏

如果您经常需要在不移动引用的情况下复制公式,那么为此使用宏是有意义的。 按键盘快捷键 Alt + F11键 或按钮 Visual Basic中 标签 开发人员 (开发商), 通过菜单插入一个新模块 插入 - 模块  并在此处复制此宏的文本:

Sub Copy_Formulas() Dim copyRange As Range, pasteRange As Range On Error Resume Next Set copyRange = Application.InputBox("选择包含要复制的公式的单元格。", _ "准确复制公式", Default:=Selection.Address, Type := 8) If copyRange Is Nothing Then Exit Sub Set pasteRange = Application.InputBox("Now select the paste range." & vbCrLf & vbCrLf & _ "该区域的大小必须等于原来的 " & vbCrLf & _ " 单元格区域复制。”, “精确复制公式”, _ Default:=Selection.Address, Type:=8) If pasteRange.Cells.Count <> copyRange.Cells.Count Then MsgBox “复制和粘贴范围的大小不同!”, vbExclamation, "Copy error " Exit Sub End If If pasteRange Is Nothing Then Exit Sub 否则 pasteRange.Formula = copyRange.Formula End If End Sub

您可以使用该按钮运行宏。 标签 开发人员 (开发者——宏) 或键盘快捷键 Alt + F8键. 运行宏后,它会要求您选择原始公式的范围和插入范围,并自动复制公式:

复制没有链接移位的公式

  • 方便的同时查看公式和结果
  • 为什么 Excel 公式中需要 R1C1 引用样式
  • 如何快速找到所有带有公式的单元格
  • 从 PLEX 插件复制精确公式的工具

 

发表评论