Excel IFBLANK 相当于 IFERROR

mrr*_*010 7 worksheet-function microsoft-excel microsoft-excel-2016 blank

IFERROR效果很好,因为它通过默认行为显着缩短了公式,如果不满足条件(无错误)则返回结果。我正在寻找IFBLANK此行为的版本,即如果不满足条件(非空白)则返回结果。

假设我有一个复杂的多行公式作为“核心公式”。我可以用来=IFERROR(Core Formula, "")处理错误。

我想要类似的东西=IFBLANK(Core Formula, "")

我知道我可以用 来做到这一点=IF(Core Formula="","",Core Formula),但如果我的“核心公式”确实很复杂且冗长,“如果公式”会使我的公式长度加倍,并使遵循/跟踪/修改变得极其困难,特别是当需要审查公式时由其他贡献者提供。

PS 我总是必须处理由具有不同含义的零和空格组成的数据。

Mát*_*ász 5

Excel 中不存在此类函数,您有两种选择:

LET函数仅适用于较新版本的 Excel 365,您可以这样写:

=LET(x,<core formula>,IF(x="","",x)

创建您自己的用户定义的 VBA 函数

打开 VBA 编辑器并键入以下代码:

Function IFBLANK(param1 As Variable, param2 As Variable) As Variable
  If param1 = "" or param1 Is Null then
    Return param2
  Else 
    Return param1
  End If
End Function
Run Code Online (Sandbox Code Playgroud)