二级联动下拉列表
1. Excel内新建sheet用来存放二级联动列表
2. 新建省份名称引用
在省市字典下,单击A1单元格,选择公式
->名称管理器
->新建
,名称为省份
,引用位置为=OFFSET(省市字典!$A$1,0,0,COUNTA(省市字典!$A:$A))
,此引用位置语法意思是:在省市字典sheet的A1位置开始,整列到最后一个值(湖北省)作为一份引用。
3. 新建城市名称引用
在需要设置二级联动下拉列表的sheet下,点击城市列第一格cell(B2),选择公式
->名称管理器
->新建
,名称为城市
,引用位置为=OFFSET(省市字典!$A$1,MATCH(Sheet1!$A2,省市字典!$A:$A,0)-1,1,1,COUNTA(OFFSET(省市字典!$A$1,MATCH(Sheet1!$A2,省市字典!$A:$A,0)-1,1,1,100)))
,此引用位置语法意思是:根据Sheet1的A列的省份取值,从省市字典中获取对应省份引用行位置后面关联的城市cell作为城市字典。
引用位置的第一个OFFSET参数解读:
- 引用位置。
- 根据一级下拉列表的取值,在字典sheet中对应行的位置。
- 偏移1列,即从第二列开始取城市字典。
- 引用行高1行。
- 引用行宽以第二列开始,到最后1列有数据的行结束,此处最后的100代表允许的行宽上限。
4. 设置省份列下拉列表
在Sheet1选择A列,按Ctrl键单击A1(取消表头数据校验),选择数据
->有效性
,允许序列
,来源填定义好的省份引用名称:=省份
。
5. 设置城市列下拉列表
在Sheet1点击A2单元格,选择一个省份,再选择B列,按Ctrl键单击A1(取消表头数据校验),选择数据
->有效性
,允许序列
,来源填定义好的城市引用名称:=城市
,至此二级联动下拉列表设置完成。
6. 最终效果展示
7. 所用函数
=OFFSET ( reference , rows , cols , height , width)
以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以为一个单元格或单元格区域。并可以指定返回的行数或列数。
注意:如果省略 height 或 width,则其高度或宽度与 reference 相同。
= MATCH ( lookup_value , lookup_array , match_type)
为需要在数据表中查找的数值。可以为数值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。
可能包含所要查找的数值的连续单元格区域。Lookup_array 应为数组或数组引用。
match_type为0表示查找等于lookup_value的第一个数值。lookup_array可以按任何顺序排列。
COUNTA()
非空单元格个数