Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Microsoft Excel中的大型相关下拉菜单中删除空白选项?_Excel_Vba_Drop Down Menu_Dropdown_Excel Indirect - Fatal编程技术网

如何从Microsoft Excel中的大型相关下拉菜单中删除空白选项?

如何从Microsoft Excel中的大型相关下拉菜单中删除空白选项?,excel,vba,drop-down-menu,dropdown,excel-indirect,Excel,Vba,Drop Down Menu,Dropdown,Excel Indirect,我在Excel中构建了一个表单,它使用数据验证应用下拉选择。用户从一个类别中进行选择,该类别基于所选类别创建从属列表,这将扩展到另一个选择。这是使用查询和VBA设置的,如下所示:每个依赖下拉列表都依赖于前者,使用类似代码=间接(A1),其中A1是第一个选择,下一个列表使用A1中的标题指定给命名范围 不幸的是,在最后的列表选择中,命名范围的数量似乎超过了Excel的容量(>10k),因此我引用了一个固定范围,它在每个单元格中使用索引匹配函数来显示选项。问题是,这个最终下拉列表的某些版本需要5个选项

我在Excel中构建了一个表单,它使用数据验证应用下拉选择。用户从一个类别中进行选择,该类别基于所选类别创建从属列表,这将扩展到另一个选择。这是使用查询和VBA设置的,如下所示:每个依赖下拉列表都依赖于前者,使用类似代码=间接(A1),其中A1是第一个选择,下一个列表使用A1中的标题指定给命名范围

不幸的是,在最后的列表选择中,命名范围的数量似乎超过了Excel的容量(>10k),因此我引用了一个固定范围,它在每个单元格中使用索引匹配函数来显示选项。问题是,这个最终下拉列表的某些版本需要5个选项,而其他版本需要150个选项,因此我必须将最终列表设置为静态150个单元格,以容纳尽可能大的数据集

“忽略空白单元格”在数据验证中不起作用,因为使用了“间接”。有没有其他方法可以让这个系统(或任何其他系统)为如此大的数据集工作


作为说明,我曾考虑在选择之间强制使用按钮[调整命名范围],但我认为这不适合此用户群。

这里所涉及的所有步骤都不完全清楚。您是否尝试对数据验证设置条件?类似于
=IF(INDIRECT(A1)”,INDIRECT(A),“)
@David,它可以用于单个单元格,但它必须引用命名范围才能提取任何内容。