在Excel中,如何引用单元格的外观(显示的结果)而不是其底值?例如:
3.1415
中输入A1
,然后按 Ctrl + Enter A1
会将值显示为$3.14
A1
将显示$3.141
A2
中,键入="Amount: $3.141"
,A2
将显示Amount: $3.141
。我的问题是,在单元格A2
中,有没有办法引用A1
并显示Amount: $3.141
而不是硬编码的$3.141
?
答案 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),输出也将重新进行计算。