vba - 如果值为空,则使用默认值

标签 vba

在我编写自己的函数之前,VBA 中是否有内置函数允许我在变量/函数返回值为空时指定默认值?我知道写出一个 if 条件语句,但这有点冗长。在其他语言中,我可以执行三元条件语句,或者(我认为在 Excel 中)使用函数来指定默认值。

例如

Dim v as integer
v = DefaultValue(SomeFunction(), 5) ' put 5 in v if SomeFunction returns null

最佳答案

这是我自己写的函数:

Public Function DefaultValueIfNull(unknown As Variant, optional defaultValue As Variant) As Variant
    If IsNull(unknown) Then
        DefaultValueIfNull = defaultValue
    Else
        DefaultValueIfNull = unknown
    End If
End Function

这似乎与内置函数完全相同 Nz(value, valueIfNull)在访问中

关于vba - 如果值为空,则使用默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33090154/

相关文章:

vba - 网络文件路径无法在 VBA/MS Access 中打开

升级到 Office 365 专业增强版后,Excel VBA 运行速度极慢

excel - vba excel打开unicode文件名进行二进制访问读取

vba - 循环PDF文件并将它们转换为带有word的文档

vba - 对于仅使用时间初始化的 Date 变量,默认日期不是我所期望的

excel - 将工作表名称添加到工作表更改日志

vba - 使用 sendKeys 函数使用另一个宏(按钮)停止执行宏

excel - 给定一个固定的单元格宽度,我可以更改字体大小以使文本适合单元格吗?

excel - 在 Excel 中的合并单元格上键入错误以显示消息功能

excel - 使用 vba 进行具有单元格功能的剪切粘贴代码时出现对象错误