使用Excel UNIQUE()函数制作依赖下拉列表的问题求助
解决Excel依赖下拉列表复制后关联错误的问题
问题根源
你当前D列的数据验证引用了固定指向Result!C4的辅助单元格公式,导致复制后所有D行下拉列表都只关联C4的分类。要实现Dn对应Cn,需让引用逻辑动态适配当前行的C列单元格。
解决方案一:直接修改数据验证公式(推荐,无需额外辅助列)
- 选中
Result工作表的D4单元格,打开「数据验证」(数据选项卡→数据验证)。 - 「允许」选择「序列」,在「来源」框输入动态公式:
=SORT(UNIQUE(XLOOKUP($C4, Result!$H$3:$L$3, Result!$H$4:$L$8),,TRUE))$C4是混合引用:固定C列,行号随当前行自动变化(复制到D5时会变成$C5)。Result!$H$3:$L$3和Result!$H$4:$L$8用绝对引用,防止复制时数据区域偏移。
- 点击「确定」后,选中D4,拖动单元格右下角的填充柄到D12,完成批量适配。
解决方案二:修改Code工作表的辅助列公式(保留原有辅助列逻辑)
- 选中
Code工作表的A5单元格,修改公式为:=SORT(UNIQUE(XLOOKUP(Result!C&ROW()-1, Result!H3:L3, Result!H4:L8),,TRUE))ROW()-1实现动态行匹配:A5对应Result的C4(ROW(A5)=5,5-1=4),向下复制时会自动对应C5、C6等。
- 回到
Result工作表,设置D4的数据验证来源为Code!A5,拖动填充柄下拉到D12,数据验证的引用会自动偏移为Code!A6、Code!A7等。
完成设置后,D5会关联C5的分类、D6关联C6的分类,以此类推,下拉列表将显示对应分类的产品。
内容的提问来源于stack exchange,提问作者Batata
相关产品推荐
相关产品推荐

