我有一个要从电子表格单元格内部调用的自定义函数,在某些情况下我不想返回任何内容。换句话说,我希望将带有我的函数的单元格完全视为一个空单元格(除非函数返回一个值)。
我能做到的最接近的是返回一个空字符串""
。COUNTA
不幸的是,具有零长度字符串的单元格不会被or视为空COUNTBLANK
,并且会破坏数学公式(例如1 + "" = #VALUE
)。
我大多数不返回任何内容的尝试都会导致返回 0,但这会被用户解释得非常不同。
我该怎么办?
到目前为止尝试过:
Returns 0:
result = null
result = VbEmpty
result = Range("SomeCellKnownToBeEmpty")
Returns error:
result = Nothing
答:我现在有理由确定这是不可能的,能做的最好的事情就是解决它。
解决选项:
- 返回一个字符串
"-blank-"
并让 VBA 宏删除任何带有"-blank-"
. 一种奇怪的方法,但符合我的需要。我这样做是准备我的工作簿以供发布的步骤之一。 - 返回空字符串并明确获取工作表中的其他公式以将其
""
视为空白。 - 返回并显示 0:返回 0 并使用自定义格式隐藏 0。