标签:
举例:前提是要搭建好基表,稍后会写一篇文章告知如何搭建完美基表。
一、最简单的一级菜单形式:
有甲、乙、丙三个工厂,要求通过点选工厂看到三天的生产趋势图。
备注:基表的搭建非常重要,日期严格按照列排布。
1、通过excel开发工具-插入-列表框-选中列表框右键设置控件格式,如图:
当选中甲时,单元格链接A1的数据显示为1,当选乙时显示2,……
2、通过excel开发工具-插入-滚动条-选中滚动条右键设置控件格式-控制,单元格链接A2,通过点击滚动条来前后呈现不同日期工厂的生产情况。
3、通过index函数结合上述单元格链接中的数据取出所选中的工厂
index(甲乙丙选项所在的单元格,单元格链接)
4、通过index函数结合滚动条的单元格链接数据,将日期摘出。每次展现几天的数据可通过设置滚动条的属性。
index(全部日期,滚动条单元格链接)
5、通过vlookup函数结合match函数匹配日期,取出所选工厂在某天的生产数据,可以结合iferror函数。
最终达到:随着点选滚动条可以看到不同日期的数据
二、二级菜单制作
举例:甲工厂生产A、B、C三种产品,乙工厂生产A、D、E、F四种产品,丙工厂生产B、F、G、H四种产品,要看到一个工厂的不同产品的生产情况
1、通过数据透视表,生成需要列表框选中的排序,
一级:工厂:A、B、C
二级:工厂:甲:A、B、C
工厂:乙:A、D、E、F
工厂:乙:B、F、G、H
2、插入两个列表框及一个滚动条,分别设置控件属性。一级菜单根据透视数据正常操作。
3、为了使第一个列表框中选中某工厂后,第二个列表框中相应的呈现对应产品,需要使用名称管理器对名称进行定义
ctrl+f3:打开名称管理器,新建名称,定义需要利用offset偏移函数结合match函数取相应偏移的行数,输入偏移的列数,结合countif函数截取需要的厚度(几行)。
4、二级菜单列表框的数据源区域为新定义的名称
5、二级菜单被选中项的体现需要通过if函数结合index函数呈现。(即告诉excel你选中的是什么)
6、时间的设置需要通过index函数结合滚动条的定位单元格中的数据。
7、最后通过vlookup函数定位到选中的一级和二级选项名称,基表区域,match匹配时间,0.
标签:
原文地址:http://www.cnblogs.com/smallcrystal/p/4868646.html