EXCEL如果A列不等于0,则返回相应B列的值

详情如图,想要得到的结果是D列的内容,请问应该用哪个公式,如何实现?... 详情如图,想要得到的结果是D列的内容,请问应该用哪个公式,如何实现? 展开
 我来答
本本经销商
推荐于2016-02-07 · TA获得超过5449个赞
知道小有建树答主
回答量:1662
采纳率:69%
帮助的人:469万
展开全部

假设判断从A1单元格开始,可以用IF函数写公式:=IF(A1<>0,B1),然后下拉填充即可。


  • IF函数用途:执行逻辑判断,它可以根据逻辑表达式的真假,返回不同的结果,从而执行数值或公式的条件检测任务。

  1. 语法:IF(logical_test,value_if_true,value_if_false)。

  2. 参数:Logical_test 计算结果为TRUE 或FALSE 的任何数值或表达式;Value_if_true 是Logical_test 为TRUE 时函数的返回值,如果logical_test 为TRUE 并且省略了value_if_true,则返回TRUE。而且Value_if_true 可以是一个表达式;Value_if_false 是Logical_test 为FALSE 时函数的返回值。如果logical_test 为FALSE 并且省略value_if_false,则返回FALSE。Value_if_false 也可以是一个表达式。

  3. 实例:公式“=IF(C2>=85,"A",IF(C2>=70,"B",IF(C2>=60,"C",IF(C2<60,"D"))))”,其中第二个IF 语句同时也是第一个IF 语句的参数。同样,第三个IF 语句是第二个IF 语句的参数,以此类推。例如,若第一个逻辑判断表达式C2>=85 成立,则D2 单元格被赋值“A”;如果第一个逻辑判断表达式C2>=85 不成立,则计算第二个IF 语句“IF(C2>=70”;以此类推直至计算结束,该函数广泛用于需要进行逻辑判断的场合。

ExcelPower
2014-12-17 · 专业Excel公式图表数据分析VBA
ExcelPower
采纳数:4494 获赞数:11835

向TA提问 私信TA
展开全部
=index(B:B,small(if($A$1:$A$1000>0,row($A$1:$A$1000),4^8),row(A1)))&""
按Ctrl+Shift+Enter 结束公式
追问
大神,求问small(if($A$1:$A$1000>0,row($A$1:$A$1000),4^8),row(A1)))&""这句什么意思?
追答
数组公式,
数组公式 的最大特点 就是将 一组数 一起处理
if($A$1:$A$1000>0,row($A$1:$A$1000),4^8)
如果A1:A1000 >0 ,返回A1:A1000的行标, 否则返回 4^8次
按照你的 例子 0 1 3 0 5 0 7
会返回例如 65536 2 3 65536 5 65536 7 8 9 65536 。。。。 16.。。 65536

Small( 65536 2 3 65536 5 65536 7 8 9 65536 ,row(A1)) 提取 65536 2 3 65536 5 65536 7 8 9 65536 第1 小的, 下拉 提取第2小的, 。。。。。。第N小的,
最后肯定是 65536 , 就是B列 第65536 行,为空, &"" 确保让它不返回0 , 返回空
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wu_zhenjiu
科技发烧友

2014-12-17 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:3.1万
采纳率:79%
帮助的人:1亿
展开全部
D2公式:
=INDEX(B$2:B$100,SMALL(IF(A$2:A$100<>0,ROW($1:$99),9^9),ROW(A1)))
数组公式,按CTRL+SHIFT+回车,下拉。
追问
大神,这句什么意思?求解释
SMALL(IF(A$2:A$1000,ROW($1:$99),9^9),ROW(A1)))
追答
IF(A$2:A$1000,ROW($1:$99),9^9),如果A$2:A$1000,就是ROW($1:$99),否则为9^9(就是9的9次方,一个比较大的数),这样就得到一个符合条件的数组,符合条件的是行号,不符合的是9^9;
用SMALL找到第ROW(A1)小的行号;
最后用INDEX得到行号对应的数据(B$2:B$100中)。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友ea5320e8a
2014-12-17 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:101
采纳率:0%
帮助的人:55.8万
展开全部
公式在C1中输入=IF(A1<>"0',b1,"") 下拉公式,ok。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友deff8e6
2014-12-17 · 超过17用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:29.2万
展开全部
=IF(A1=0,,B1)
if(条件,条件为真返回数据,条件为假返回数据)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式