一个单元格中的Excel计算会导致另一个
你好我想知道是否有可能在一个单元格中的计算和结果在另一个,所以当计算改变它会自动改变其他单元格的结果。
例如
A1 =(2 * 3 * 4)* 5
B1 =计算结果
如上所述,我希望当特定单元格中的计算被更改时,它会自动调整其他单元格中的结果。
我知道的唯一方法是使用VBA。
Function CustomEval(ByVal formula As String) As Double CustomEval = Evaluate(formula) End Function
这个function可以让你做这样的事情:
这不是Excel的工作原理。 你所说的“计算”实际上只是数字和符号的组合,Excel将其视为文本。
通常将数字值input到单个单元格中,然后在要查看结果的单元格中input公式,而不是将符号和数字组合在一起。 该公式将引用input单元格。 下面的例子。
现在您可以更改列A,B,C和D中的值,F列中的结果将被重新计算。
您所描述的内容可以通过使用“公式”>“名称pipe理器”>“新build”插入的命名公式来实现,然后将此公式input到“引用到”字段
=EVALUATE(Sheet1!$A$1)
然后input命名的范围到像这个截图一样的单元格中
但是,如果你input一个像(2*3*4)*5
这样的“计算”到一个单元格中,那么你可能会在它前面加一个=
号,这就是你的结果。
我很less发表第二个答案,但这是没有VBA的另一种方法。
使用Excel 2013及更高版本,您可以将事情变成现实。 在列B中input完整的计算公式,以a =符号开始,所以它是一个Excel公式。
然后使用列A中的函数Formulatext()来显示正在计算的内容。 如果不需要,用Substitute()去掉=
符号。
A2中的公式是
=SUBSTITUTE(FORMULATEXT(B2),"=","")
…复制下来
好处:运行在任何平台上。 移动,networking,iPad等