动态数组、过滤和排序

动态数组、过滤和排序

我有一个课程单元列表,我想通过下拉列表显示该列表,具体取决于“课程名称”,我希望相应地显示所有“单元代码”和“单元名称”

在名为“单元列表”的工作表中,我有相应的数据,但我想避免重复,我只需要该表中的每个单元一次。所以我需要以某种方式将一个单元链接到一个或多个课程

在此处输入图片描述

在此处输入图片描述

答案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位置在哪里?TableUnits 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

相关内容