2016-12-26 47 views
0

对数据进行排序我有一个从人收集数据并将其转储到一个谷歌电子表格的形式。在电子表格中,我试图创建一个表格来安排这些数据,以便我和其他人更容易理解。 以下是一般数据的例子。匹配,并从另一片

https://docs.google.com/spreadsheets/d/1iFKUg9vu_kdYe5Se0Fc6I9wcJp5NLXHvCA41CtTuFhc/edit?usp=sharing

在所谓的“表”的片材,这是其中数据是从谷歌形式倾倒。在名为“表格”的表格上,我试图对信息进行分类。每一行都是一个人的名字,每一列都是不同的汽车品牌。

我想有这等“表”表中的单元格将寻找匹配从“形式”表并将其填充在适当的评级为品牌的汽车所记录的每一个人。如果这个人有两个相同品牌的汽车,是否也可以将两个评级放在“表”表中的同一列?

我尝试使用内置的MATCH函数,但我无法弄清楚如何使它返回品牌旁边的评级列的值,如果它找到了一个匹配。在结合不同的功能时,我仍然是一个初学者,并且想知道是否有人可以帮助我。是否可以使用内置函数或仅使用脚本来完成此操作?

回答

0

由于您允许多个匹配项(例如9,10例子),我推荐使用filterjoin。这里是我的公式,为B3单元格,但复制pasteable到其他细胞表写着:

=iferror(join(",", filter(filter(Form!$C:$I, Form!$A:$A = $A3), filter(Form!$B:$H, Form!$A:$A = $A3) = B$2))) 

说明:

  1. filter(Form!$B:$H, Form!$A:$A = $A3)需要BH列有名称A3
  2. 指定的用户
  3. filter(Form!$C:$I, Form!$A:$A = $A3)也是如此,但是与前一个过滤器相比,列的范围向右移动了一个单元格。
  4. 然后,又一filter拾取从所述第二范围中的电池,其中所述第一范围的相应的条目是在B2的汽车模型。这相当于取得模型名称右侧的单元格。
  5. 如果有多于一个的匹配,结果join ED在一个字符串,用逗号分隔。
  6. 如果没有匹配,过滤器会抛出#N/A错误;这被iferror所抑制,因此单元保持空白。
+0

非常感谢。我其实并没有考虑过滤和加入之前。我非常感谢你写下代码的每个部分的解释,以便我更容易学习。再次感谢和节日快乐:)。 –

相关问题