马震安
在工作表的F1:F3分别输入月份、地区、产品,H1:H2分别输入地区、产品,I1:I2分别输入月份、产品,J1:J2分别输入月份、地区。
①构建下拉列表1
点击“开发工具→插入→表单控件→组合框”,在合适位置画出一个组合框控件,将组合框的数据源区域设置为F1:F3,单元格链接为G1。
②构建下拉列表2
点击“公式→名称管理器→新建”,名称为“z_cd”,引用位置处为“=CHOOSE(Shee t1!$G$1,Sheet1!$H$1:$H$2,Sheet1!$I$1:$I$2,Sheet1!$J$1:$J$2)”;再画出一个组合框控件,数据源区域为“z_cd”,单元格链接为G2。
在G4单元格输入“=INDIRECT(CHOO SE($G$1,"H","I","J") & $G$2)”(图2)。
点击“开发工具→Visual Basic”进入VBA编辑器,点击“插入→类模块”,选中插入的“类1”,选择“视图→属性窗口”,将类的名称改为“CEventChart”,双击这个类进入编辑窗口,输入如图所示代码(图3)。
接下来,点击“插入→模块”,双击“模块1”,在代码编辑窗口输入如图所示代码(图4)。
接下来,双击“ThisWorkBook”,在右侧编辑窗口输入如图所示代码(图5)。
这样,当点击图表中的系列时,系列名称就会出现在G3单元中。
图表的数据源是根据上述控件的当前索引值获得的。
①构建主图表数据源
分别新建名为lb_11、lb_22、lb_33的3个名称,lb_11的引用位置为“=INDEX(Sheet1!$A$1:$A$41,N(IF({1},SMA LL(99*(MATCH(Sheet1!$A$2:$A$41,Sheet1!$A$1:$A$41,)