如何创建自定义函数实现单元格存数值却显示指定文本?
实现自定义hideValue函数隐藏数值仅显示指定文本
方法一:使用VBA自定义函数
这是最匹配你需求的方案,Excel原生没有hideValue函数,我们可以自行编写:
- 按
Alt + F11打开VBA编辑器 - 在左侧工程窗口右键点击你的工作簿,选择「插入」→「模块」
- 在模块中粘贴以下代码:
Function hideValue(displayText As String, hiddenValue As Variant) As String ' 返回需要显示的文本内容 hideValue = displayText ' 可选:将隐藏的数值存入单元格备注,方便后续查看 On Error Resume Next ' 避免已有备注时报错 Application.Caller.Comment.Delete On Error GoTo 0 Application.Caller.AddComment CStr(hiddenValue) End Function
- 按
Ctrl + S保存工作簿,格式选择「Excel 启用宏的工作簿(*.xlsm)」 - 返回工作表,输入公式
=hideValue("This is an awesome number.", 15),单元格会直接显示指定文本,隐藏的数值可通过查看单元格备注获取。
方法二:无宏替代方案(利用单元格格式)
如果不想启用宏,可以拆分操作实现类似效果:
- 在目标单元格输入数值
15 - 右键单元格→「设置单元格格式」→「数字」→「自定义」
- 在类型框中输入
"This is an awesome number."(注意带英文双引号) - 确认后单元格显示指定文本,编辑栏仍能看到真实数值
15
这种方法无需公式,但适合文本固定的场景。
内容的提问来源于stack exchange,提问作者JRod
相关产品推荐
相关产品推荐

