关于这个问题,我一直很郁闷。昨晚在编写油耗计算的v0.08d版。当时需要一个三目运算函数。
一直以来,三目运算都是各个编程语言中的基本运算符:$x=($y>0)?"positive":"negative" 类似的写法。我以为VBA也是,在google中搜索了一下,似乎谈到了这个,但没有一个能举个实例的,全是天下文章一大抄,自己却不验证的。
在VBA中始终报错,说是问号处错误啊之类的,令我很郁闷。最后实在没办法了,上百度知道问了一下,原来VBA中是没有这个运算符的,但有一个专门的函数来实现这个。
这个函数就是iif,格式为iif(条件,条件为真时的返回值,条件为假时的返回值)。举个例子,x=iif(y>0,"positive","negative")。这样,就可以了。
郁闷了很久的问题,终于得到解决了。但需要注意,不管真假,如果返回值是个函数,而此函数出错了,会导致整个语句出错。不过,这个已经是小问题了
