在使用excel的vlookup函数时遇到一个难题,请高手帮忙看一下下面的公式为什么不能运行呢
因为这个函数的第二个参数要求是一个区域的,但是你的公式给出的是一个文本,所以不正确
在用文本表示的区域前加上INDIRECT函数就可以了(看你公式里面有用到,应该是忘加上了)
另外,既然要用INDIRECT,冒号就要当作文本放到引号里面去
多了一个"工资系统导出!"(冒号后面的那个,这个会导致引用区域错误,加上就是两个单元格,去掉就是一片区域)
下面是我改出来的公式,可以试试对不对,然后根据需要调整
(因为我没有你的数据,不知道公式的目的,所以不知道结果是不是符合预期,不过用我自己编的数测试是没有错误的)
=VLOOKUP(C2,INDIRECT( "工资系统导出!E" & COUNTIF(工资系统导出!A:A,"<" & INDIRECT("工资系统导出!A" & COUNTA(工资系统导出!A:A))) & ":F" & COUNTA(工资系统导出!A:A)),2,0)
下面是VLOOKUP的语法,供参考
麻烦使用excel表格公式的高手帮我看看我的这两个表格的公式哪里出了问题?
原来公式的问题是逻辑关系没有搞清楚;
公式可以复制粘贴直接使用,如有问题可以继续交流;问题得到解决请给个认可:
第一个问题:
当JKL这三列的最大值大于H10,就在A列显示差(三者中的最大值与H10的差);
当JKL这三列的最大值等于或者小于H10,就在A1显示三者中的最大值。是这个意思吧?
那么公式可以这么写:=if(max(J10:L10)<=H10,MAX(J10:L10),MAX(J10:L10)-H10)
第二个问题:
当JKL这三列的最小值小于I10,就在B列显示差(三者中的最小值与I10的差);
当JKL这三列的最小值大于或者等于I10的时候,就在B列显示三者中的最小值。
这么叙述逻辑就清晰了,
公式为:=if(min(J10:L10)>=I10,MIN(J10:L10),MIN(J10:L10)-I10),