![](/img/trans.png)
[英]How to define cells formula in VBA with previously defined custom function
[英]Define a custom VBA function that returns blank
如果公式的結果為空白,如何定義一個返回空白的excel函數?
如果vlookup發現空白,則返回零。 我想將vlookup嵌入到一個函數中,如果vlookup找到一個空白單元格,則返回一個空白而不是零。
我不想輸入:
=if(vlookup(args) = "", "", vlookup(args))
我希望有一些類似於內置的Iferror函數的語法:
=blankreturn(function)
如果函數導致空白,則返回空白;否則,返回函數的結果。
我試圖定義一個自定義函數,但是當找到一個空白單元格時它仍然返回零
public Function Blankreturn(formula as variant)
If IsEmpty(formula) = True Then
Blankreturn = ""
Else
Blankreturn = formula
End if
End Function
甚至更好,盡管我不知道從何處開始:
ifblank(function, "This is blank")
如果第一個參數為空,則返回第二個參數。
謝謝
您可以構建特殊的VLookup函數
Option Explicit
Public Function MyVLookup(Arg1, Arg2, Arg3, Optional Arg4 = True)
MyVLookup = Application.VLookup(Arg1, Arg2, Arg3, Arg4)
If VarType(MyVLookup) = 0 Then MyVLookup = vbNullString
End Function
但是可能使用VBA用戶定義函數比使用此方法慢=if(vlookup(args) = "", "", vlookup(args))
我可以想象(需要進行測試)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.