以下是我的工作表中的内容:
A1=2 B1=3 C1=A1+B1
我希望显示实际的单元格5
,但是当我复制时,C1
我希望显示单元格中的公式=2+3
,而不是显示,=A1+B1
或者5
有办法做到这一点吗?
答案1
您可以在公式栏中执行此操作F9:如果您选择/突出显示公式中的任何术语并按下F9,它将被评估并且显示值而不是术语。
例如,在您的示例中,如果您突出显示,您的公式A1
将变为。=2+B1
如果您突出显示完整的A1+B1
,您的公式将变为=5
。因此,您需要为每个术语手动执行此操作。
话虽如此,我不太确定上述技术是否有用,比如快速检查/调试复杂公式的结果。不过,对于这一点,评估公式功能(在公式审核中的公式选项卡中)更适合......
答案2
在单元格 C1 中尝试此操作:
=A1&"+"&B1
这将为您提供 A1 的实际内容,后跟一个加号,后跟 B1 的实际内容,因此在您的示例中,它将在哪里A1 = 2
,B1 = 3
您将获得C1 = 2+3
答案3
Excel 并不这样看待问题。它使用单元格地址(即)A1
来了解从何处获取公式中使用的值。如果没有单元格引用,公式将无法工作。
我知道的唯一能达到您想要的效果的方法是实际=2+3
在单元格 C1 中输入。它将显示结果5
,但是当您选择单元格时,您将看到=2+3
。
答案4
我找到了解决方案。它以=formulatext()
函数开始,加上几个嵌套=substitution()
函数,然后cell("address",[reference])
。
该解决方案适用于任何类型的公式,即使公式发生很大变化,也可以复制并粘贴到其他单元格。
这是专门针对我的需求而定制的解决方案:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(FORMULATEXT(I6),"$",""),SUBSTITUTE(CELL("address",G6),"$",""),TEXT(G6,"$#,##0.00")&" "&$G$5),SUBSTITUTE(CELL("address",H6),"$",""),H6&" "&H5),SUBSTITUTE(CELL("address",F6),"$",""),TEXT(F6,"$#,##0.00")&" "&$F$5),SUBSTITUTE(CELL("address",E6),"$",""),E6&" "&$E$5),SUBSTITUTE(CELL("address",D6),"$",""),ROUND(D6,2))&" "&$D$5,"*"," × "),"-"," - "),"/"," ÷ ")
=substitution()
嵌套的数量左边取决于用单元格值替换的单元格引用的数量。
对第 5 行的单元格引用实际上是我正在使用的数据表的列标题,因为我希望公式包含每个引用单元格值的标签。例如:
| Chickens | Eggs per Chicken | Total Eggs|
| -------- | ---------------- |-----------|
| 5 | 4 | 20 |
| 3 | 9 | 27 |
此解决方案对第 5 行的单元格引用允许每个值引用进行如下标记:
= 5 Chickens x 4 Eggs per Chicken
单元格引用I6
是要转换的公式的位置。第 6 行上的所有其他单元格引用都是要放入公式中的不同变量,位于I6
。如前所述,第 5 行上的所有单元格引用都是数据表的列标题,因此公式包含每个单元格引用的标签。上面的公式支持五个变量。如果您希望公式处理更多变量,请添加更多嵌套=substitute
函数。如果您希望公式处理更少的变量,请删除相应的嵌套=substitute
函数。修改text()
每个单元格引用的函数,使生成的公式看起来符合您的要求。
阅读这篇文章帮助我找到了解决方案:https://www.ablebits.com/office-addins-blog/2015/10/16/excel-replace-substitute-functions/