我有一张包含 3 列的数据表,我需要根据这 3 列创建下拉列表。
- 第 1 列具有重复的值。
- 第 2 列也有重复值。选项取决于从下拉列表 1 中选择的值。
- 第 3 列取决于第 1 列和第 2 列中选择的选项,同时仅显示每列的唯一值。
我已经找到了根据之前的选择来限制下拉菜单中的选项的方法,但是找不到任何根据 1 和 2 的选择来限制第 3 列中的选项的方法。
这是不使用 VBA 就能实现的吗?工作簿必须为 XLSX 格式,因此不能包含任何宏。
例子:
如果用户选择 John,则下拉列表 2 中只会出现 North 和 West。
如果用户选择 John 和 West,那么下拉列表 3 中只会出现 South。
答案1
您可以使用数据验证来完成此操作,创建第一列 A 而不重复,然后第二列(例如 John)是标题,然后向下指向北,西,选择北和西,Define Name as John
对北和西执行相同操作(将北写为标题,在它下面输入您想要的值,选择所有值并将名称定义为北)之后在您想要下拉列表 L1 的单元格中,从第一列开始使用正常数据验证列表并使用第一列,在第二列 M1 中也使用数据验证列表,但在源中写入INDIRECT(L1)
并重复相同操作,对 N1 中的第三个数据验证源应为 INDIRECT(M1)