switch函数和choose函数区别

switch函数和choose函数区别

先看定义

switch函数和choose函数区别

IIf,Switch和Choose

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

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

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

switch函数和choose函数是编程语言中常见的条件语句函数,用于在多个选项中选择执行不同的操作。它们有以下区别:

1. 语法和用法:switch函数用于根据一个表达式的值匹配多个不同的选项,并执行相应的代码块。它通常采用多个case语句来表示每个选项。而choose函数是一种函数式编程中的概念,用于从一个列表或数组中选择特定的元素。它通常采用索引参数指定要选择的元素在列表中的位置。

2. 选项数量:switch函数的选项数量是固定的,通过每个case语句来表示。而choose函数的选项数量可以是可变的,取决于列表或数组的长度。

3. 执行方式:switch函数在运行时依次检查每个case语句的匹配条件,并执行匹配的代码块,直到找到匹配的选项。choose函数根据索引参数提供的位置选择相应的元素,无需逐个检查每个选项。

4. 返回值:switch函数通常没有返回值,其执行结果体现在不同选项的代码块中。choose函数根据选择的元素返回相应的值。

需要注意的是,switch函数和choose函数的具体实现和用法可能会因编程语言而异。以上是一般的概念性区别,具体的语法和功能细节应参考所使用编程语言的相关文档或手册

choose函数数组用法

1、条件区域求和

Choose()函数可以返回内存数组参与其它的运算,单元格G14键入公式“=SUM(CHOOSE(MATCH(A14,$C$1:$D$1),$C$2:$C$11,$D$2:$D$11))”,公式MATCH(A14,$C$1:$D$1)在此处返回的索引为“1”即指定序号,根据序号“1”返回列表的第一项即单元格区域$C$2:$C$11,生成内存数组{1800;1200;600;9900;4700;3900;5000;500;1200;3200},最后通过Sum()函数求和得出结果。

2、与Vlookup()函数嵌套使用,实现逆序查找

Vlookup()函数本身只能实现从左往右的查找,即查找列在左,返回列在右,但是可以利用辅助列或者其它方法,譬如与Choose()函数嵌套重构查找区域,从而实现逆向查找。

单元格C2键入公式“=VLOOKUP(F2,CHOOSE({1,2},$B$2:$B$11,$A$2:$A$11),2,0)”,其中CHOOSE({1,2},$B$2:$B$11,$A$2:$A$11)重构了一个名称在前序号在后的数组,从而实现Vlookup()函数的逆向查找。

天生我材必有用,Choose ()函数当然也有它的用武之地。

发表评论

评论列表

还没有评论,快来说点什么吧~