如何在VBA中实现工作表函数SIGN
创始人
2024-03-13 21:17:08

Excel中有一个公式sign,其返判断数字的符号,正数返回值为1,负数返回值为-1,0返回值为0。

但是在VBA中即无法使用Application.WorksheetFunction调用工作表函数,也没有提供相应的VBA函数实现此功能,也许MS的产品经理认为根本不需要这个功能,呵呵。

前一阵子在论坛看板有个帖子就是关于这个的提问,其实实现起来也很简单,单行IIF嵌套就可以实现,代码如下。

Sub demo1()n = 0Debug.Print IIf(n < 0, -1, IIf(n = 0, 0, 1))n = 100Debug.Print IIf(n < 0, -1, IIf(n = 0, 0, 1))n = -100Debug.Print IIf(n < 0, -1, IIf(n = 0, 0, 1))
End Sub

运行实例代码,结果如下。

0
1
-1

IIF用法很简单,这里就不再赘述。

这里给大家提供一个另类的实现思路,利用逻辑值True和False的整数值,也可以快速实现符号判断,代码如下。

Sub demo2()n = 0Debug.Print Int(n < 0) - Int(n > 0)n = 100Debug.Print Int(n < 0) - Int(n > 0)n = -100Debug.Print Int(n < 0) - Int(n > 0)
End Sub

需要大家注意的是True和False的整数值为-1和0,通过组合两个判断条件,然后将逻辑值进行运算,得到相应的结果。

相关内容

热门资讯

重大通报作弊器!乐乐上海麻将a... 重大通报作弊器!乐乐上海麻将ai智能透视辅助插件,乐乐上海麻将本来存在有外挂(有辅助挂方略)1、很好...
分享给玩家透视挂!家乡大贰ai... 分享给玩家透视挂!家乡大贰ai智能透视辅助工具,家乡大贰其实真的有外挂(有辅助挂细节)家乡大贰破解侠...
科普攻略开挂!英豪娱乐城ai智... 科普攻略开挂!英豪娱乐城ai智能透视辅助教程,英豪娱乐城好像真的是有外挂(有辅助挂头条)1、英豪娱乐...
总算了解辅助器!和悦游戏ai智... 总算了解辅助器!和悦游戏ai智能透视辅助教程,和悦游戏确实是真的有外挂(竟然有辅助挂)暗藏猫腻,小编...
揭秘关于辅助器!九九麻将ai智... 揭秘关于辅助器!九九麻将ai智能透视辅助技巧,九九麻将一贯是有外挂(有辅助挂方略)1、用户打开应用后...