强制Excel公式引用当前工作簿

强制Excel公式引用当前工作簿,excel,Excel,我在工作簿中使用了一个简单的公式引用,但是当我使用另一个函数立即打开默认工作表并将其复制到活动工作簿时,它会变得复杂 问题是此工作簿中的单元格引用了默认工作簿中的其他工作表。其中的工作表和我正在处理的所有其他工作簿都有相同的名称。这是“形式” 当我使用代码复制工作表时,单元格会自动更改其引用以包含上一个工作簿 我希望公式始终使用当前工作簿 这是我用的 =Form!B6 这是我掉床单时得到的结果 ="filepath"Form!B6 以下是一种将公式从一个工作簿复制到另一个工作簿的方法,不做任

我在工作簿中使用了一个简单的公式引用,但是当我使用另一个函数立即打开默认工作表并将其复制到活动工作簿时,它会变得复杂

问题是此工作簿中的单元格引用了默认工作簿中的其他工作表。其中的工作表和我正在处理的所有其他工作簿都有相同的名称。这是“形式”

当我使用代码复制工作表时,单元格会自动更改其引用以包含上一个工作簿

我希望公式始终使用当前工作簿

这是我用的

=Form!B6
这是我掉床单时得到的结果

="filepath"Form!B6

以下是一种将公式从一个工作簿复制到另一个工作簿的方法,不做任何更改

Sub ytrewq()
    Dim s As String

    s = Workbooks("book2.xlsm").Sheets("Sheet1").Range("G8").Formula
    Workbooks("temp.xlsm").Sheets("Sheet1").Range("H1").Formula = s
End Sub

诀窍是使用间接()。例如:

=INDIRECT("Form!B6")

您可以通过将
“filepath”
替换为空白来执行
替换所有
。您可以在开始时用
附加所有单元格,复制/粘贴然后删除
Scott,有趣的是您提到了这一点。实际上,这是我的临时解决办法。我仍然在寻找一个可靠的解决方案。伊恩也一样。我正在寻找一个无步骤的解决方案。