我有一份表格调查表。工作表中的数据具有以下标题:
B:
Name1
,C:Name1_Grade
,D:Name1_Shoe_Size
,E:Name2
,F:Name2_Grade
,G:Name2_Shoe_Size
,H:Name3
,I:Nanme3_Grade
,J:Name3_Shoe_Size
响应表单中有更多数据。因此,我使用查询将这些数据放入新的工作表=query('Data !B2:J150,"Select B, C, D, E, F, G, H, I where (C=4 OR F=4 OR I=4)"
。
这会将我的数据放入新工作表中,但是,一旦将其放入工作表中,我需要将所有名称,等级和鞋码移至3列,因此,一旦数据在新工作表中,最终结果将看起来像:
Names | Grade | Shoe_Size
John F | 4 | 6.5
上面的公式有效,但是,我需要将所有名称,等级和鞋子尺寸归为一列。并非每个人都有多个条目。因此,该公式需要能够检查其他列中是否包含某些内容。设置生成数据的表格,以便一个人可以为多达5个孩子的整个家庭填写表格。
是否有一种简单的方法可以通过一个公式完成此操作?
这里是示例电子表格的链接:https://docs.google.com/spreadsheets/d/1P9qgh0o3gjDikuaX75bBr9RyYz9ofxedAuJy0tXuRko/edit?usp=sharing
尝试这样:
=QUERY({Data!B2:D; Data!E2:G; Data!H2:J},
"select Col1,Col2,Col3
where Col2=4", 0)
技巧是将各列彼此堆叠。这样数据就可以按列排列。
您可以通过在括号中加上分号来做到这一点,就像这样:
{B2:D;E2:G;H2:J}
然后按player0所述,您可以使用Query()
。或者您可以尝试使用Filter()
:
=filter({B2:D;E2:G;H2:J},{C2:C;F2:F;I2:I}=4)