在excel工作簿中,有两个Sheet工作表。
Sheet1:
Sheet2(数据源表):
要实现Sheet1中的“班级”内容,从数据源Sheet2中获取并形成下拉选项,且Sheet2中“班级”内容更新后,Sheet1中“班级”的下拉选项也随之变动。
看了网上不少视频,都是将数据源设置为超级表。经过测试,如果它们是在同一个工作表中是可以的,但若在不同的表中,则没有自动更新的效果。
在此,使用OFFSET实现自动更新式下拉选项。
(1)选择需要应用的数据区域,这里是“班级”列。
(2)点击“数据”,“数据验证”,“数据验证...”
(3)选择“序列”,来源填写公式=OFFSET(Sheet2!$A$2,0,0,COUNTA(Sheet2!$A:$A)-1,1)然后“确定”
若数据源改为(增加了456):
下拉选项也自动更新:
这里的难点和重点就是OFFSET函数的写法:
=OFFSET(Sheet2!$A$2,0,0,COUNTA(Sheet2!$A:$A)-1,1)
意思是:
获取Sheet2中的A2单元格,向下直至到非空单元格处的区域。
也可以缩写为=OFFSET(Sheet2!$A$2,,,COUNTA(Sheet2!$A:$A)-1)
具体参考OFFSET的用法:
(1)Excel OFFSET函数超详细的基本语法运算机制讲解_哔哩哔哩_bilibili
(2) Excel快捷菜单:如何跨表制作联动下拉菜单列表?