作者:乔山办公网日期:
返回目录:excel表格制作
可以用函数实现动态引用。 假定引用的数据源序列在C列,且行数不固定(随时可能增加或减少)。 数据有效性: 公式=INDIRECT("C1:C"&COUNTA($C:$C))
选中要设置下拉菜单的E1单元格,选择【zhidao公式】-【定义名称】。
定义一个名称为“Data”的名称,在【引用位置】输入下面的公式并点击【确定】。
=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)
选中E1单元格,选择【数据】-【数据有效性】。
选择“序列”,“来源”处输入=Data,然后【确定】。
这样,在E1的下拉菜单回中就只有非空白单元答格的内容了。E1的下拉菜单会自动更新成D列不为空的单元格内容。
使用公式的简单说明:
=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)
其中的LEN($D:$D)>0判断单元格内容长度是不是大于0,也就是如果D列单元格为非空单元格就返回TRUE,然后SUMPRODUCT统计出非空单元格个数。最后用OFFSET函数从D1开始取值至D列最后一个非空单元格。
方法/步骤
1
A列为序列引用的内容,对百C1单元格进行数据有效性的设置。
选中C1,点击菜单 数据-数据有效性,在有效性条件的允许条件中选择“序列”,度然后在文本知框中输入=OFFSET($A$1,,,COUNTA($A:$A)),确定退出。
2
我们对A列内容进行编辑,可以发现,C1下拉菜单中空白没有了,并且还根据A列内容自动更新了。
END
OFFSET函数介绍
OFFSET函数格式如下:
OFFSET(reference,rows,cols,[height],[width])
这是一个偏置函数,reference是偏置的基道准,rows和cols都是偏移量,前者是行偏移,后者是列偏移,[height]和[width]是偏移后返回范围。如果rows和cols值为0,可省略不内写,但半角逗号需保留;[height]和[width]值为1,可省略不写。
END
COUNTA函数介绍
1
COUNTA函数格式如下:
OFFSET(value1,[value2],...)
这是一个计数函数,计算区域里非空单元格个数。value1为必需,后面的可选容。如图所示,H列非空单元格个数为5,运用COUNTA函数可以轻松进行计数。
选中要设置下拉菜单的E1单元格,选择【公式】-【定义名称】。
定义一个名称为“Data”的名称,在【引用位置】输入下面的公式并点击【确定】。
=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)
选中E1单元格,选择【数据】-【数据有效性】。
选择“序列”,“来源”处输入=Data,然后【确定】。
这样,在E1的下拉菜单中就只有非空白单元格的内容了。E1的下拉菜单会自动更新成D列不为空的单636f7079e799bee5baa6e997aee7ad94361元格内容。
- 使用公式的简单说明:
=OFFSET($D$1,,,SUMPRODUCT(N(LEN($D:$D)>0)),)
其中的LEN($D:$D)>0判断单元格内容长度是不是大于0,也就是如果D列单元格为非空单元格就返回TRUE,然后SUMPRODUCT统计出非空单元格个数。最后用OFFSET函数从D1开始取值至D列最后一个非空单元格。
图文步骤请参考:
excel制作下拉菜单时如何去除空值_百度经验
http://jingyan.baidu.com/article/e8cdb32b662b8b37052bade7.html