我一直在寻找解决方案,但找不到。

假设我输入单元格A1:= if(A2> 1,1,0)

Excel将对此进行解释,并返回1或0。

但是,我想做的是从字面上将该公式转换为字符串:'= if(A2> 1,1,0)'

如果按Ctrl +〜进入Excel,您将看到所有公式。总之,总的来说,我想做的就是采用所有这些公式并使其成为字符串。

(如果您愿意的话,目的是将这些字符串与另一个工作簿进行比较,以确保我没有删除任何内容)

最佳答案

您可以为此创建用户定义的函数。

将此代码放入Module(而不是工作表代码表,类或表单)中

Function GetFormula(rng As range, Optional asR1C1 As Boolean = False) As String
    If asR1C1 Then
        getFormula = rng.FormulaR1C1
    Else
        getFormula = rng.Formula
    End If
End Function

像这样在工作表中调用它
=GetFormula(A1)

或者如果您想要结果为R1C1
=GetFormula(A1,TRUE)

09-25 20:10