![动态数组、过滤和排序](https://linux22.com/image/1617318/%E5%8A%A8%E6%80%81%E6%95%B0%E7%BB%84%E3%80%81%E8%BF%87%E6%BB%A4%E5%92%8C%E6%8E%92%E5%BA%8F.png)
答案1
如果您拥有带有动态数组的 Office 365 Excel,如您的问题所建议的那样Dynamic array
,那么:
B5:=INDEX(FILTER(courseCodes,courseCodes[Course Name]=$C$2),0,1)
C5:=INDEX(FILTER(courseCodes,courseCodes[Course Name]=$C$2),0,2)
工作表上的表格中命名的courseCodes
位置在哪里?Table
Units List
注意,您只需要在指定单元格中输入公式即可。附加结果将spill down
显示所有结果。
感谢 @teylyn 指出这是 Excel/O365 的功能,而不是 Excel 2016+ 的功能
@AlexM 指出,我没有解决课程名称重复删除问题,我猜是针对您的下拉列表。如果您有动态数组,那么您就有函数UNIQUE
,因此您可以使用以下公式为下拉列表创建一个唯一列表:
=UNIQUE(courseCodes[Course Name])
在工作表的某个位置输入。然后通过命名公式引用它(假设它在Units List
工作表中以 开头J1
:
Courses refers to: ='Units List'!$J$1:INDEX('Units List'!$J:$J,COUNTA('Units List'!$J:$J))
然后在数据验证列表框中输入=Courses