问题来源

这个双控件图表制作的问题,也是一位工作中经常使用EXCEL的朋友提出来的。

效果如下:

双向柱形图制作(双控件动态柱形图的制作)(1)

以上效果是通过单选控件选择查询方式,再通过组合框进行相应的数据查看。相对原来讲过的单控件图表,这种图表查询数据更详细,更具体。

步骤详解第一步:插入单选控件

单选控件决定了查询方式,只有知道了查询方式,组合框内才出现不同的选项,图表数据才知道该如果显示,所以,必须先插入单选控件。

单选控件插入过程如下:

双向柱形图制作(双控件动态柱形图的制作)(2)

第二步:建立单选引用区域名称

为了后面的组合框根据单选控件的选项不同而出现不同的选项系列,需要建立一个引用区域名称。

分别将三个销售部门和三个月份写入F2:F4和G2:G4,作为辅助区域。

双向柱形图制作(双控件动态柱形图的制作)(3)

【公式】——【定义名称】,定义名称“单选引用”,引用位置输入公式:

=IF(Sheet1!$A$7=1,Sheet1!$F$2:$F$4,Sheet1!$G$2:$G$4)

公式含义是:

如果A7是1,即选择“按部门查询”,则引用$F$2:$F$4,否则引用$G$2:$G$4。

双向柱形图制作(双控件动态柱形图的制作)(4)

第三步:插入并设置组合框

组合框的插入如下:

双向柱形图制作(双控件动态柱形图的制作)(5)

组合框的数据源区域为上一步定义的“单选引用”名称,单元格链接到B7:

双向柱形图制作(双控件动态柱形图的制作)(6)

第四步:建立数据源名称

利用上一步组合框链接到的B7单元格,利用OFFSET函数,建立图表数据源。

【公式】——【定义名称】,定义名称“销售数据”,引用位置输入公式:

=IF(Sheet1!$A$7=1,OFFSET(Sheet1!$A$1,Sheet1!$B$7,1,1,3),OFFSET(Sheet1!$A$1,1,Sheet1!$B$7,3,1))

公式的含义:

如果A7=1,即选择“按部门查询”,则数据源区域为以A1位基准点向下偏移B7行、向右偏移1列后的1行3列的区域;否则(即A7=2),数据源区域为以A1位基准点向下偏移1行、向右偏移B7列后的3行1列的区域;

双向柱形图制作(双控件动态柱形图的制作)(7)

第五步:根据名称创建图表

添加一个空白柱形图,右键,选择数据源,添加数据系列,系列值为:

=sheet1!销售数据

双向柱形图制作(双控件动态柱形图的制作)(8)

双向柱形图制作(双控件动态柱形图的制作)(9)

第六步:创建动态横坐标轴

横坐标,要根据查看方式的不同,显示不同部门或者月份,所以,要定义一个单独的名称。

【公式】——【定义名称】,定义名称“坐标轴”,引用位置输入公式:

=if(Sheet1!$A$7=1,Sheet1!$G$2:$G$4,Sheet1!$F$2:$F$4)

公式含义是:

如果$A$7=1,按部门查询,则横坐标显示月份,否则显示部门:

双向柱形图制作(双控件动态柱形图的制作)(10)

图表区,右键,选择数据源,添加水平轴,轴标签为:

=sheet1!坐标轴

双向柱形图制作(双控件动态柱形图的制作)(11)

双向柱形图制作(双控件动态柱形图的制作)(12)

第七步:美化

将图表美化,即得文章开始的双控件柱形图表。

,