我可以手动完成,但我确信有一种公式化的方法可以做到这一点 这是数据:
Column-A Column-B Column-C
C Y
D
E Y
F
E Y
我想做的是分两步:
a。)选择Column-A中的所有值,其中Column-B中的对应值为“Y”
b。)从上面从A列中选择的数据中,仅选择唯一值并将它们放在Column-C中
c。)因此,上述数据的C列中的数据将是“C”和“C”。 “E”
任何指针?
答案 0 :(得分:6)
假设您有excel 2007
,这是一个选项将此公式放在C1
中 =IFERROR(INDEX(A1:A5,MATCH("Y",B1:B5,0)),"")
然后C2中的这个被复制下来
=IFERROR(INDEX(A$1:A$5,MATCH(1,INDEX((B$1:B$5="y")*(COUNTIF(C$1:C1,A$1:A$5)=0),0),0)),"")
您可以在早期版本中执行此操作,但它需要一些较长的公式,以确保在有效匹配用尽后您不会收到错误值
说明:
公式1使用MATCH
查找B1:B5
中第一个“y”的位置,然后INDEX
返回A1:A5
中的相关值。如果你的列是相反的,你可以使用VLOOKUP
,INDEX/MATCH
是执行“左查找”的标准方法。
公式2使用MATCH
查找满足2个条件的第一行的位置,B1:B5
=“y”和A1:A5
<>已找到的值。已经找到的值位于上面的C列中,因此COUNTIF
函数会查看上面的单元格,并对上面该范围内的A列中的每个值进行计数(当您向下拖动公式时会扩展) - 计数零表示尚未选择该值。在MATCH
标识行号INDEX
后,将从A列中的该行获取值。