。如何更改单元格的显示名称,但保留公式
问题描述:
我有一些代码,这些:。如何更改单元格的显示名称,但保留公式
void mActiveSheet_Change(Microsoft.Office.Interop.Excel.Range Target)
{
if (Target.Cells.Formula.ToString().StartsWith("=FR("))
....
}
所以每当有人使用我的自定义函数“= FR”我能应付。
这很好,但该单元格的公式值不错,显示值为“#NAME?”。
我认为这是因为Excel不能识别= FR是什么。
有没有一种方法可以改变显示名称,但不是公式,所以我可以有其他的东西“#NAME?”显示?
我试过Target.Cells.Value2 =“Boo”;但是这也改变了公式
答
您对#NAME?是否正确?这是在识别功能时显示的Excel错误代码。你无法压制这一点。
可能工作的'肮脏的技巧'之一是隐藏信息。检测单元格的背景颜色,并更改字体颜色以匹配背景。除非单元格突出显示(不只是选中),否则实际上会隐藏#NAME?错误信息。处理完= FR函数并返回结果后,您可以将字体颜色重置为之前的效果,以便可以看到答案。
答
我认为你得到了这个颠倒。
真正的目标不是隐藏#NAME?
错误;目标是创建自己的函数,可以像SQRT()或ABS()一样将其插入到Excel中。
搜索谷歌或MSDN的user defined function Excel C#
- 有工作的例子。
我实际上想更改显示名称,而不是隐藏它。任何你认为这可以在公式不变的情况下完成的方式? – Billy 2010-01-05 03:13:34
@比利,你不能改变显示名称,这是一个内置的Excel错误信息。你在帖子中提出的问题的答案是:不,没有办法做到这一点。 filiprem有你的问题的实际解决方案。 – Stewbob 2010-01-05 14:08:07