根据2个条件使用HLOOKUP查找值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据2个条件使用HLOOKUP查找值相关的知识,希望对你有一定的参考价值。
我有一个基于大量数据的数据透视表。我想将此数据过滤到一个简单的表中以生成报告。我尝试了HLookup,但由于更改数据透视表的设置而失败。所以我需要做类似的事情;
=如果团队为EN,其下午班次为下午班次,则为x。
这里是Google工作表链接以获取更多说明:https://docs.google.com/spreadsheets/d/1mk5xhn9Su26ptmRMLINcKxViP2SgkKrjiA9jfy5a9wM/edit?usp=sharing
尝试:
=ARRAYFORMULA(IFNA(VLOOKUP(L2:L, TRANSPOSE(A1:I11), {2,3,4,5,6,7}, 0)))
全部合一:
=ARRAYFORMULA({IFNA(VLOOKUP(L2:L9, TRANSPOSE(A1:I11), {2,3,4,5,6,7}, 0));
QUERY(QUERY(IFNA(VLOOKUP(L2:L9, TRANSPOSE(A1:I11), {2,3,4,5,6,7}, 0)),
"select sum(Col1),sum(Col2),sum(Col3),sum(Col4),sum(Col5),sum(Col6)", 0), "offset 1", 0)})
您可以使用
=QUERY(ARRAYFORMULA(TRANSPOSE($A$1:$I$11)),"SELECT Col2 where Col1 = '"&$L2&"'",0)
这是将数据转置为所需格式的数据,然后您可以根据左列的索引指定列,即Col2 = afternoon
如果您只是希望在不进行任何查询或筛选的情况下进行转置,就可以这样做
=ARRAYFORMULA(TRANSPOSE(A1:I11))
将为您提供
您可以像这样使用Hlookup:
=transpose( {{"Team";A2:A7}, arrayformula( hlookup( if( row( A1:A7)^0*COLUMN(B1:I1)^0=1,B1:I1,""),B1:I7,sequence(counta(A1:A7),1),false))})
说明:
{“ Team”; A2:A7}带有转置符将给出标题:
Team Afternoon AL MC ML Morning Night
行(A1:A7)^ 0 * COLUMN(B1:I1)^ 0具有数组公式将给出
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
if(row(A1:A7)^ 0 * COLUMN(B1:I1)^ 0 = 1,B1:I1,“”]
EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL EN DE FR UK GE BR EG IL
hlookup(if(row(A1:A7)^ 0 * COLUMN(B1:I1)^ 0 = 1,B1:I1,“”),B1:I7,序列(counta(A1:A7),1 ),false)与arrayformula将给出:
EN DE FR UK GE BR EG IL 9 5 8 5 5 3 2 2 1 1 1 2 1 2 1 6 6 5 4 4 2 1 1 15 7 6 5 4 3 2 1
所有公式将给出(转置后:)>
Team Afternoon AL MC ML Morning Night EN 9 1 2 6 1500% DE 5 1 6 700% FR 8 1 1 5 600% UK 5 2 4 500% GE 5 4 400% BR 3 2 300% EG 2 1 1 200% IL 2 1 100%
但是简单的方法,只需使用转置:
=transpose({"team",B1:I1 ;A2:I7})
以上是关于根据2个条件使用HLOOKUP查找值的主要内容,如果未能解决你的问题,请参考以下文章
excel公式中:查找值,数据表,列序表,匹配条件各是啥意思?