excel

关注公众号 jb51net

关闭
软件教程 > 办公软件 > excel >

excel下拉菜单空白值该怎么去除?

脚本之家

为了规范表格数据录入,我们常用到Excel的“数据有效性”功能在单元格设置下拉菜单,引用固定区域数据作为标准录入内容。有很多时候,这个区域的数据是用公式生成的,如果直接引用一个固定范围,比如说D1:D50,可能实际返回的数据只有8个,下拉菜单会出现很多空白,不方便选择。本例向大家介绍如何去除下拉菜单中的空白。

一、问题描述

1、如下图,利用公式在D列返回某些表格的不重复值,作为下拉菜单的数据源。D列数据的个数不确定。

2、为了使数据有效性能够显示所有的备选数据,所以一般我们选择一个较大的范围,比如说D1:D8区域。制作数据有效性如下:

3、这样制作的下拉菜单中就会包括数目不定的空白,如果空白非常多的话在用下拉菜单选择数据时就非常不方便。

二、解决方案

1、选中要设置下拉菜单的E1单元格,选择【公式】-【定义名称】。

2、定义一个名称为“Data”的名称,在【引用位置】输入下面的公式并点击【确定】。=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)

3、选中E1单元格,选择【数据】-【数据有效性】。

4、如下图,选择“序列”,“来源”处输入=Data,然后【确定】。

5、这样,在E1的下拉菜单中就只有非空白单元格的内容了。E1的下拉菜单会自动更新成D列不为空的单元格内容。

6、使用公式的简单说明:=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)

其中的LEN($D:$D)>0判断单元格内容长度是不是大于0,也就是如果D列单元格为非空单元格就返回TRUE,然后SUMPRODUCT统计出非空单元格个数。最后用OFFSET函数从D1开始取值至D列最后一个非空单元格。

相关推荐:

EXCEL表格中怎么制作三级联动的下拉菜单?

Excel下拉菜单怎么设置可选的下拉数据?