作者:绿色风
分类:
时间:2022-08-18
浏览:220
楼主 wise |
Q:Excel的If函数与IIF函数有什么区别? A: IF函数:为Excel中的工作表函数,其执行真假值判断,根据逻辑计算的真假值,返回不同结果。 可以使用函数 IF 对数值和公式进行条件检测。语法为:IF(logical_test,value_if_true,value_if_false) IIF函数:为Excel中的VBA函数,其也可以用在Excel的SQL中,IIf函数与Excel工作表函数IF函数相似, 有三个输入参数:第一个参数是逻辑判断,第二个是判断结果为真时执行的表达式,第三个是判断结果为假时执行的表达式。 但是也是有点区别的,特别是在VBA中使用这两个函数的时候。 1、在IF语句中,区别如下: IIf函数与单行的If语句之间的一个区别是,在单行的If语句中的Else部分是可选的,而IIf函数的第三个参数必须被定义。 在VBA中,经常忽略Else子句;还有一个区别是,IIf函数仅能够给单个的变量返回值,而单行的If语句则可以给多个变量赋值: If a>b then a=a+1 Else b=b+1 2、在IF结构,区别如下: 如果当判断结果为True时想要执行以上的操作,则可以使用If结构:
- If a>b then
- a=a+1
- Else
- b=b+1
- End If
If结构与IIf的区别:IIF函数,程序将对其中的两个条件都要进行判断;而使用IF THEN语句时,程序只判断其中满足条件的条件语句。 也就是说,如果IIF中两个条件中,有一个是出错的,则这个函数会出错。
- Sub test1()
- Dim a As Integer
- Dim b As Integer
- Dim c
- a = -1
- b = 0
- If a > 0 Then
- c = a / b
- Else
- c = a * b
- End If
- MsgBox c
- End Sub
- Sub test2()
- Dim a As Integer
- Dim b As Integer
- Dim c
- a = -1
- b = 0
- c = VBA.IIf(a > 0, a / b, a * b)
- MsgBox c
- End Sub
|
2楼 yfan17 |
小7总结得比较全面,适合我这种初学VBA的“生手”。 |
3楼 海洋之星 |
厉害,谢谢帮我解决这个问题, |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一