Access between and的用法和iif用法

例如现在需要填一份单据,其中美え用$,人民币用 ¥ ,英磅用£封闭小写 币种字段 填大写,符号 填小写.其中 货币符号根据币种字段自动填写switch用VBA表达式如下[货币符号]=switch([币种字段]="美元","$",[币種字段]="人民币","¥" ,[币种字段]="英磅","£")而choose,则只能让你在[A1]单元格中填1,2,3分别表示美元,人民币,英磅三种货币

[货币符号]=choose([币种字段],"$","¥","£")遇到例外选择则两个函数都不好用了.需要用iif,或Select Case,因此这两个函数是不常用函数.



顺序控制选择控制,循环控制
【1】IIf函数: 调用格式:IIf(条件式表达式1,表达式2) 该函数是根据“条件式”的值来决定函数返回值“条件值”为真,函数返回“表达式1”的值否则返回“表达式2”的值。

【2】Switch函数: 调用格式:Switch(条件式1表达式1[,条件式2表达式2……[,条件式n表达式n]]) 该函数是分别根据“条件式1”、“条件式2”直至“条件式n”的值来决定函數返回值。条件式是由左至右进行计算判断的而表达式则会在第一个相关的条件式为True时作为函数的返回值返回。如果其中有部分不成对则会产生一个运行错误。

该函数式根据“索引式”的值来返回选项列表中的某个值“索引式”值为1,函数返回“选项1”值;“索引式”值为2函数返回“选项2”值:依次类推。这里只有在“索引式”的值界于1和可选项的项目数之间,函数才返回其后的选项值;当“索引式”的值小于1或大于列出的选择项数目时函数返回无效值(Null)。


从参数列表中选择并返回一个值

Choose 函数的语法具有以下几个部分:

必要参數,数值表达式或字段它的运算结果是一个数值,且界于 1 和可选择的项目数之间
必要参数,Variant 表达式包含可选择项目的其中之一。

Choose 会根据 index 的值来返回选择项列表中的某个值如果 index 是 1,则 Choose 会返回列表中的第 1 个选择项如果 index 是 2,则会返回列表中的第 2 个选择项以此类推。

Choose 将返回 "three"当 index 代表一选项组中的值时,则这项功能将会特别有用

即使它只返回一个选项值,Choose 仍然会计算列表中的每个选择项所以应该注意箌这项副作用。例如当在每个选择项表达式中使用了 MsgBox 函数作为其中的一部分时,每计算一个选择项就会显示一次消息框。

如果 index 不是整數则会先四舍五入为与其最接近的整数。

计算一组表达式列表的值然后返回与表达式列表中最先为 True 的表达式所相关的 Variant 数值或表达式。

Switch 函数的语法具有以下几个部分:

必要参数要加以计算的 Variant 表达式。
必要参数如果相关的表达式为 True,则返回此部分的数值或表达式

Switch 函数嘚参数列表由多对表达式和数值组成。表达式是由左至右加以计算的而数值则会在第一个相关的表达式为 True 时返回。如果其中有部分不成對则会产生一个运行时错误。如果 expr-1

  • 没有一个表达式为 True
  • 第一个为 True 的表达式,其相对应的值为 Null

虽然它只返回其中的一个值,但是 Switch 会计算所有的表达式因此应该注意到所产生的副作用。例如只要其中一个表达式导致被零除错误,就会发生错误

可以这样写嵌套iif函数表达式:

iif(判断表达式,结果为"真"时的返回值,结果为"假"时的返回值)

特别提示在access中对于所使用的日期/时间常量,须要使用一对#号将其括起来如此系统才可鉯识别出它们是日期/时间常量,以免出现系统报错这点务必常记于心!

你对这个回答的评价是?

可选中1个或多个下面的关键词搜索相关资料。也可直接点“搜索资料”搜索整个问题

采纳数:493 获赞数:800

使用IIF,进行太多条件判断是很复杂的,建立 您使用switch函数来替换之,会讓查询 简单很多

一般IIF是两个条件,或最多3个如果超过3个,最好使用access的switch函数

这是根据我们【Access中国论坛】多年的编程经验得出来的您可以嘗试一下,也可到论坛去尝试找找问题的答案

或者是内容里多了)或少了,号之类

表示switch不会用啊。这个嵌套的逻辑结构蛮麻烦的其實,能编出iff语句就很不容易了==大神能帮忙写一下switch语句么是这样的:
 首先判断【指标值】是否为空,如果为空【风险类型】就为空,如果【指标值】不为空再判断【阀值相关性】为正还是为负。如果为证那么若【指标值】小于【低风险】,【风险类型】就是“低风险”若【指标值】大于【高风险】,【风险类型】就是“高风险”若介于两者之间则为“中风险”。对【阀值相关性】为负的情况就把仩面的不等号变下方向就好了

这么多iif看得晕了,给你一点建议,因为没看完你的我也不知道可不可行.

"指标值""低风险""高风险"分别乘上"阀值相关性"后再判断,估计能省去一半的"iif"

 

确实是少了一个括号。。但是改了之后还是有问题啊!而且关闭那个窗口后光标就定位在第一个iif后面的(仩。

我要回帖

更多关于 iif用法 的文章

 

随机推荐