在Excel中,如何引用单元格的外观而不是其底值?

时间:2019-01-17 23:38:23

标签: excel reference

在Excel中,如何引用单元格的外观(显示的结果)而不是其底值?例如:

  1. 3.1415中输入A1,然后按 Ctrl + Enter
  2. Ctrl + Shift + $ A1会将值显示为$3.14
  3. Alt + h 0 (按住 Alt ,按 h ,释放它们,再按 0 ), A1将显示$3.141
  4. A2中,键入="Amount: $3.141"A2将显示Amount: $3.141

我的问题是,在单元格A2中,有没有办法引用A1并显示Amount: $3.141而不是硬编码的$3.141

1 个答案:

答案 0 :(得分:2)

正如您所发现的,显示只是实数的掩码。要执行您想要的操作,可以使用TEXT应用遮罩并以相同格式返回字符串:

="Amount: " & TEXT(A1,"$#,##0.000")

但是格式是静态的。数字将随着A1的更改而改变,但是如果您更改A1的格式,则格式或掩码也不会更改。

顺便说一句,所有这些键盘快捷键都可以通过简单地应用自定义格式$#,##0.000

来完成

现在有了一点vba,我们实际上可以使用单元格的text(display)值了。将此代码放在工作簿附带的模块中。

Function MyStr(rng As Range)
    MyStr = "Amount: " & rng.Text
End Function

然后您可以像公式一样从工作表中调用它:

=MyStr(A1)

这将返回显示的内容,因此随着格式的更改,您将需要强制重新计算工作表(F9),输出也将重新进行计算。