我一直在寻找解决方案,但找不到。
假设我输入单元格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)