用IF和vlookup函数混合运用

发布时间:2019-07-29 16:43:31

当表2A1&B1两列与表1AB两列区域中的某个相同,且表2中C1<=0.5,则取表1C列对应值;当表2A1&B1两列与表1AB两列区域中的某个相同,且表2中C1>0.5,则取表1D列对应值*表2(C1-0.5)+表1C列对应值;当表2A1&B1两列与表1AB两列区域中的某个相同,且表2中C1<=1,则取表1E列对应值;当表2A1&B1两列与表1AB两列区域中的某个相同,且表2中C1>1,则取表1F列对应值*表2(C1-1)+表1C列对应值;当表2A1&B1两列与表1AB两列区域中的某个相同,且表2中C1>1,则取表1G列对应值*表2中的C1,如果条件都不符合,为0,一共5个条件,求解!

补充:如图所示

推荐回答

1 由于要判定两列的条件,VLOOKUP函数不适用;

2 综合表二C1的条件:

C1<=0.5

C1>0.5

C1<=1

C1>1

C1>1

其他

明显的,有逻辑错误;姑且先更改为:

C1<=0.5

0.5<C1<=1

1<C1<=1.5

1.5<C1<=2

2<C1<=2.5

其他【即C1>2.5】

如不合需求,请据实更改;

3 假设表一在工作表单Sheet1,其数据位于A1:G100,没有标题行;

在表二的D1,或第1行合适的列,录入公式:

=IF(C1<=0.5,SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$C$1:$C$100)),IF(C1<=1,(C1-0.5)*SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$D$1:$D$100))+SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$C$1:$C$100)),IF(C1<=1.5,SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$E$1:$E$100)),IF(C1<=2,(C1-1)*SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$F$1:$F$100))+SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$C$1:$C$100)),IF(C1<=2.5,C1*SUMPRODUCT((Sheet1!$A$1:$A$100=A1)*(Sheet1!$B$1:$B$100=B1)*(Sheet1!$G$1:$G$100)),0)))))

下拉复制即可;

注:这里假设表二每一行的D列从属于该行C列的值;如果所有行只有C1一个值,则将公式中的所有C1更改为$C$1

其他回答

就是先用if完成筛选,然后用vlookup来查找的,望采纳

以上问题属网友观点,不代表本站立场,仅供参考!