给定给定列的值,选择excel表的子集

问题描述 投票:1回答:1

我在excel中有一个表,如下所示:

col1 col2
A    1
B    0
A    2
B    2
B    3

我无法找到一种方法来选择表格的子集,就像使用excel函数一样。

col11 col22
B    0
B    2
B    3

基于列"B"的值col1或者只能从给定子集中选择col22'

我想有一个不需要VBA和数组公式的解决方案。我在互联网上找到了功能FILTER,但它还没有,Structured References没有这样的功能。

我想将结果col22用作电子表格另一个地方的列。其他语言如R,提供了一个函数subset,它以一种非常简单的方式完成。在excel中,使用Excel界面(过滤器按钮)进行过滤非常容易,但我不知道以编程方式执行类似操作的函数。

excel excel-formula
1个回答
0
投票

假设col1为A且col 2为B且结果集的col1和col2分别为E和F,请在C列中尝试此公式:=IF(A2=$E$2,MAX($C$1:C1)+1,0)

现在,在单元格E2中(我离开标题的第一行),我物理地键入“B”以使其成为输入源并允许动态报告。对于你想要的下面的多个单元格,下面的公式将只显示输入源中的“B”的总数:=IF(ROW(A2)>MAX(C:C),"",E2)注意我没有用$修复单元格,因为你的后续行取决于前者。

单元格F2(结果集的col2字段的顶部)包括:=INDEX(B:B,MATCH(G2,C:C,0))和G2放置:=IF(E2="","",G1+1)并将两者都向下复制到E列(或结果集col1)中的公式。

IF语句的原因是格式化而不是在失败的查找上显示错误。

© www.soinside.com 2019 - 2024. All rights reserved.