choose函数

时间:2021-11-03 03:44:01 100字

篇一:《巧用LOOKUP或CHOOSE函数替代IF函数解决现实问题》

巧用LOOKUP或CHOOSE函数替代IF函数解决现实问题

电子表格中有什么别的函数能代替IF函数?

单位的人员身份很多,工资还不一样。如果IF 局长 2000,IF 副局 1000……,这样下去得IF10多次,但是IF超过7层就不行了。有什么别的函数可以也达到这样的功能还不受功能限制吗?

可以使用vlookup或lookup

假设职称在C列从C2开始

在D2中输入以下公式:

=VLOOKUP(C2,{"局长",2000;"副局",1000;"处长",800;"副处",600;"科长",400;"副科",300;"员工",200;"其它",100},2,0) 或者

=LOOKUP(2,1/({"局长";"副局";"处长";"副处";"科长";"副科";"员工";"其它"}=C2),{2000;1000;800;600;400;300;200;100}) 注意在构建数组的时候要一一对应,支持下拉填充,

相信你根据自己的情况,微调一下公式就可以实现目的。

excel vlookup函数使用方法

今天在百度知道的时候,看到旁边有人问的问题,有几位高手都知道使用vlookup作答,可惜都是没有经过测试,直接复制别人的答案。有图详细解答一下这个问题:

问题:如下图,已知表sheet1中的数据如下,如何在数据表二 sheet2 中如下引用:当学号随机出现的时候,如何在B列显示其对应的物理成绩?

首先我们介绍下使用的函数 vlookup 的几个参数,vlookup是判断引用数据的函数,它总共有四个参数,依次是:

1、判断的条件

2、跟踪数据的区域

3、返回第几列的数据

4、是否精确匹配

根据问题的需求,这个公式应该是:

=vlookup(a2,sheet1!$a$2:$f$100,6,true)

详细说明一下在此vlookup函数例子中各个参数的使用说明:

1、a2 是判断的掉条件,也就是说如果sheet2表中a列对应的数据和sheet1表中的数据相同方能引用;

2、sheet1!$a$2:$f$100 是数据跟踪的区域,因为需要引用的数据在f列,所以跟踪的区域至少在f列,$是绝对引用(关于绝对引用可以参考这里);

3、6 这是返回什么数的列数,如上图的物理是第6列,所以应该是6,如果要求英语的数值,那么此处应该是5

4、是否绝对引用,如果是就输入 true 如果是近似即可满足条件 那么输入false (近似值主要用于带小数点的财务、运算等){choose函数}.

5、vlookup是垂直方向的判断,如果是水平方向的判断可使用Hlookup函数

结果如下图:

不知道你是否已经会使用vlookup这个条件查找函数,如果你有兴趣可以试试本例。与本例结合紧密的是数据引用,更多的excel可以参考这里。

vlookup代替if实现任意多条件判断

答:在excel中函数最多只能嵌套七层,IF函数也不能例外,遇到需要进行多次判断的怎么办呢?可以用VLOOKUP函数替代。

例如:下表中需要根据提供的销售额判断提成比率,这里可能有很多,为了演示方便,只列中三种。这种情况下怎么判断呢?

公式1:=vlookup(C2,A$1:B$100,2,0)

如果区域不想放在单元格区域,可以直接写成常量数组,即:

=VLOOKUP(C2,{"销售额","提成比率";"电视",0.1;"洗衣机",0.05;"吸油烟机",0.06},2,0)

如果IF是进行的区间判断,怎么用VLOOKUP替换呢?答案是可以用vlookup的模糊查找功能。看下例:

公式为:=VLOOKUP(D2,A1:B11,2)

示例附件下载

if函数嵌套最多是多少层?如何突破层数限制?

Excel中if函数嵌套是指一个函数里还可以再套另外一个函数,另外函数里再套下一个函数。

例如,见下图就是一个if函数的四层嵌套。在A2-A6单元格是成绩分数,在B2-B6单元格分别进行等级评定。前提是我们先用IF函数设定条件,即在B2单元格输入公式:=IF(A2>89,"A",IF(A2>79,"B",

IF(A2>69,"C",IF(A2>59,"D","F")))),确定后,就为第一个成绩指定一个字母等级 (F)。

在Excel 2003及以前的版本中,最多允许7层IF函数嵌套,在Excel 2007中允许使用64层IF函数嵌套。IF函数既然有嵌套层数限制,但有没有办法突破层数限制呢?if函数不可能嵌套百层,但不代表没办法。

我们可以借助lookup和vlookup函数、CHOOSE函数代替IF函数,来达到最终想要的效果。

当遇到这种嵌套层数过多的情况应该怎么办呢?其实,在Excel中,还有另外两个函数可以解决嵌套层数过多的问题,这两个函数那就是LOOKUP函数和CHOOSE函数。

篇二:《EXCEL中CHOOSE函数用法》{choose函数}.

CHOOSE

可以使用 index_num 返回数值参数列表中的数值。使用函数 CHOOSE 可以基于索引号返回多达 29 个基于 index number 待选数值中的任一数值。例如,如果数值 1 到 7 表示一个星期的 7 天,当用 1 到 7 之间的数字作 index_num 时,函数 CHOOSE 返回其中的某一天。

语法

CHOOSE(index_num,value1,value2,...)

Index_num 用以指明待选参数序号的参数值。Index_num 必须为 1 到 29 之间的数字、或者是包含数字 1 到 29 的公式或单元格引用。

如果 index_num 为 1,函数 CHOOSE 返回 value1;如果为 2,函数 CHOOSE 返回 value2,以此类推。

如果 index_num 小于 1 或大于列表中最后一个值的序号,函数 CHOOSE 返回错误值 #VALUE!。

如果 index_num 为小数,则在使用前将被截尾取整。

Value1,value2,... 为 1 到 29 个数值参数,函数 CHOOSE 基于 index_num,从中选择一个数值或执行相应的操作。参数可以为数字、单元格引用、已定义的名称、公式、函数或文本。

说明

如果 index_num 为一个数组,则在函数 CHOOSE 计算时,每一个值都将计算。 函数 CHOOSE 的数值参数不仅可以为单个数值,也可以为区域引用。

例如,下面的公式:

=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))

相当于:

=SUM(B1:B10){choose函数}.

然后基于区域 B1:B10 中的数值返回值。

函数 CHOOSE 先被计算,返回引用 B1:B10。然后函数 SUM 用 B1:B10 进行求和计算。即函数 CHOOSE 的结果是函数 SUM 的参数。

篇三:《CHOOSE函数使用方法》

=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))相当于:

=SUM(B1:B10)然后基于区域 B1:B10 中的数值返回值。{choose函数}.

函数 CHOOSE 先被计算,返回引用 B1:B10。然后函数 SUM 用 B1:B10 进行求和计算。即函数 CHOOSE 的结果是函数 SUM 的参数。

在EXCEL中,如何使用CHOOSE函数?

2008-11-23 14:59

提问者:lschance | 悬赏分:5 | 浏览次数:6390次

有编号如10322,10341,10283,10123,10222,10146,如何使用CHOOSE函数使101代表"数学",102代表"物理",103代表"化学"?

如果是前三位为课程代码,这样准确一些:

=CHOOSE(LEFT(A1,3)-100,"数学","物理","化学")

如下图,如果想要将一个单元格中的数字,对应到某些单元格中勾选,该如何做呢?可以利用SEARCH函数。在单元格B2中输入公式:

IF(ISERROR(SEARCH(B$1,$A2)),"","√"),如果不使用ISERROR函数,则当找不到要搜索的字时,便会显示#VALUE!的错误信息。

利用这个公式,即使输入的数字,没有按一定的数序,但仍可顺利的将对应

位置打勾。

SEARCH函数,会在某个文本字符串内找到另一个文本字符串,并返回该文

本字符串在第一个文本字符串中的起始位置。例如,若要找出字母 "n" 在单词 "printer" 中的位置:

=SEARCH("n","printer")

此函数会返回4,因为 "n" 在单词 "printer" 中位于第四个字符。

您也可以搜索其他单词内的单词。例如:

=SEARCH("base","database")

函数会返回5,因为单词 "base" 在单词 "database" 中是从第五个字符开始。可以使用SEARCH函数来判断某个字符或文本字符串在另一个文本字符串中的位置,然后再使用MID函数返回文本,或使用REPLACE函数来变更文本。

A列1-4行如下:

数据

销售数据

2008 年第一季度

2011 年第1季度

公式 说明(结果)

=SUBSTITUTE(A3, "一", "二", 1) 用 2 代替第一个实例中的 1(2008 年第二季度)

=SUBSTITUTE(A4, "1", "2", 3) 用 2 代替第三个实例中的 1(2012 年第2季度)

大概明白筛选后,计算第一个补筛选出的行数减一

{=MATCH(1,SUBTOTAL(3,OFFSET(Sheet1!$A$2,ROW(Sheet1!$A$2:$A$43)-2,)),)}

解:ROW为行号函数,ROW(Sheet1!$A$2:$A$43)-2得到0-41,用0-41作为OFFSET函数的行偏移量,通过OFFSET函数每次得到A2:A43区域中的一个单元格(从上到下),用SUBTOTAL函数(参数为3相当于COUNTA函数)计算该单元格是否可见(1为可见,0为隐藏),将所有1和0组成一个数组,用MATCH查找1在该数组中的顺序号。

总的意思就是该列中第一个筛选结果的位置,因为是从第二行开始,实际上也就是得到第一个筛选结果所在的行号减1。

使用函数

"=INDEX($A$2:$A$1001,MATCH(P2&"|"&Q2&"|"&R2,$B$2:$B$1001&"|"&$C$2:$C$1001&"|"&$D$2:$D$1001,0),1)"后可以在按下函数"fx"按钮下看到计算结果,但在表格内却显示"#VALUE!"的错误提示

这是数组公式,要在编辑框内,按ctrl+shift+enter三键才可以

篇四:《CHOOSE函数的语法介绍》

请参阅

可以使用 index_num 返回数值参数列表中的数值。使用函数 CHOOSE 可以基于索引号返回多达 29 个基于 index number 待选数值中的任一数值。例如,如果数值 1 到 7 表示一个星期的 7 天,当用 1 到 7 之间的数字作 index_num 时,函数 CHOOSE 返回其中的某一天。

语法

CHOOSE(index_num,value1,value2,...)

Index_num 用以指明待选参数序号的参数值。Index_num 必须为 1 到 29 之间的数字、或者是包含数字 1 到 29 的公式或单元格引用。

如果 index_num 为 1,函数 CHOOSE 返回 value1;如果为 2,函数 CHOOSE 返回 value2,以此类推。

 如果 index_num 小于 1 或大于列表中最后一个值的序号,函数 CHOOSE

返回错误值 #VALUE!。

 如果 index_num 为小数,则在使用前将被截尾取整。 

Value1,value2,... 为 1 到 29 个数值参数,函数 CHOOSE 基于 index_num,从中选择一个数值或执行相应的操作。参数可以为数字、单元格引用、已定义的名称、公式、函数或文本。

说明

如果 index_num 为一个数组,则在函数 CHOOSE 计算时,每一个值都将计算。

 函数 CHOOSE 的数值参数不仅可以为单个数值,也可以为区域引用。 

例如,下面的公式:

=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))

相当于:

=SUM(B1:B10)

然后基于区域 B1:B10 中的数值返回值。

函数 CHOOSE 先被计算,返回引用 B1:B10。然后函数 SUM 用 B1:B10 进行求和计算。即函数 CHOOSE 的结果是函数 SUM 的参数。

示例 1

如果您将示例复制到空白工作表中,可能会更易于理解该示例。

操作方法

1. 创建空白工作簿或工作表。

2. 请在“帮助”主题中选取示例。不要选取行或列标题。

从帮助中选取示例。

3. 按 Ctrl+C。

4. 在工作表中,选中单元格 A1,再按 Ctrl+V。

5. 若要在查看结果和查看返回结果的公式之间切换,请按 Ctrl+`(重音符),

或在“工具”菜单上,指向“公式审核”,再单击“公式审核模式”。

A

1st 1 2nd 2 3rd 3 完成 4{choose函数}.

5

B 数据 Nails Screws Nuts Bolts 数据 公式 说明(结果) =CHOOSE(2,A2,A3,A4,A5) 第二个参数 A3 的值 (2nd)

=CHOOSE(4,B2,B3,B4,B5) 第四个参数 B5 的值 (Bolts)

示例 2

如果您将示例复制到空白工作表中,可能会更易于理解该示例。

操作方法

1. 创建空白工作簿或工作表。

2. 请在“帮助”主题中选取示例。不要选取行或列标题。{choose函数}.

从帮助中选取示例。

3. 按 Ctrl+C。

4. 在工作表中,选中单元格 A1,再按 Ctrl+V。

5. 若要在查看结果和查看返回结果的公式之间切换,请按 Ctrl+`(重音符),

或在“工具”菜单上,指向“公式审核”,再单击“公式审核模式”。

A

1 23 2 45 3 12 4 10 5 数据 公式 说明(结果) =SUM(A2:CHOOSE(2,A3,A4,A5)) 单元格区域 A2:A4 中所有数值的和 (80)

篇五:《用excel函数choose()、match()实现多条件计算》

用excel函数choose()、match()实现多条件计算

(汕头电信 林武)

在excel中,如果进行条件计算,一般用if()函数,如果有多个条件,则采用多个if()嵌套的方式实现,例如计算函数:

假设x的值在A1,f(x)的值在B1,则在B1单元格中采用If()函数嵌套的公式为:

=if(a1<0,-(a1^2),if(a1>0,a1^2,0))

采用if()函数的缺点是:

1、 逻辑关系混乱。若干平行的条件经过嵌套以后成了若干

个主从关系的条件,很难看懂。

2、 容易出错,如果条件越多,嵌套的if()函数就越多,就要

套越多的括号,一不小心就弄错了。

能否找到一组函数,使多条件能够并列显示,一目了然。可以采用choose()和match()相结合的公式来解决这个问题。上例在B1单元格中填入公式:

=choose(match(TRUE,choose({1,2,3},a1<0,a1=0,a1>0),0),-(a1^2),0,a1^2)

解读:

1、 内层用choose()构建一个数组,这个数组由3个值组成,

按顺序分别为a1<0、a1=0、a1>0的逻辑值,当a1符合某个条件是,那个值为TRUE,其它值为FALSE,例如当A1=4时,3个值得排列为{FALSE、FALSE、TRUE};

2、 中间层的match()函数用TRUE逻辑