动态图表的动态交互效果直观地表现在它的选择器上。在Excel中,选择器主要用控件来实现。本章将介绍常用的控件类型及相应的制作方法。
启动Excel2007,在菜单栏能够看到“开发工具”选项卡标签,如图6.1。
图 6.1
图 6.2
如果找不到“开发工具”选项卡标签,请单击窗口左上角的Office按钮?,在弹出的窗口中单击“Excel选项”按钮,如图6.2所示。
弹出“Excel选项”对话框,在左侧选择“常用”项,在右侧勾选“在功能区显示‘开发工具’选项卡”复选框,如图6.3所示。
单击“确定”按钮,Excel功能区即会自动加载“开发工具”选项卡。
单击切换到“开发工具”选项卡,在功能区单击“插入”图标弹出控件箱。Excel提供了两种类型的控件——表单控件和ActiveX控件,各自分别包含12个控件选项,如图6.4所示。
图 6.3
图 6.4
可以看到,很多具体控件(如单选按钮、复选框、滚动条等)都可以同时在表单控件和ActiveX控件中找到,那么到底在使用时选用表单控件还是ActiveX控件呢?
通常,表单控件更容易使用,而ActiveX控件则提供了更大的灵活性;表单控件通过“设置控件格式”对话框进行单元格的链接设置,而ActiveX控件则在控件“属性”窗口中进行设置。某些具体的控件(如列表框),表单控件和ActiveX控件返回“信号”值的方式不同,如表单控件的列表框返回的是数字,而ActiveX控件的列表框则直接返回列表选项。
为避免混淆,开始建议使用表单控件,等熟练掌握动态图表制作后,可根据情况选择其他合适的控件类型。
下面分类介绍动态图表制作中常用的控件。
能够起到单选功能的控件有单选按钮、组合框和列表框。
单选按钮 用于制作一组并列关系的选项,每次只能单击其中一个按钮,使该按钮选项处于选中状态。
这组按钮被链接到同一个单元格,存放控件发出的“信号”。即每做出一次单击选择操作,控件就会发出一个不同的“信号”,并保存在链接单元格内。
单选按钮可以实现一组并列选项中特定对象数据的切换和展示。例如,图6.5中的单选按钮可以控制不同区域销售数据的切换和展示。
图 6.5
表单控件和ActiveX控件中都有单选按钮,建议选用表单控件(表单控件箱内第1行第6个图标),如图6.6所示。
下面以图6.5所示示例为例,介绍单选按钮的制作步骤。
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“单选按钮”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按下鼠标左键并向右下方拖曳,松开鼠标左键即可生成一个名为“选项按钮1”、呈编辑状态的单选按钮,如图6.7所示。
图 6.6
图 6.7
Step02 按Ctrl+C组合键复制,在旁边位置依次按Ctrl+V粘贴。以此方式连续粘贴5个单选按钮,如图6.8。
图 6.8
Step03 在单选按钮上右击可进入编辑状态,将6个单选按钮依次改名为“罗湖”、“福田”、“南山”、“华强北”、“梅林”和“宝龙”,如图6.9所示。
图 6.9
Step04 在“罗湖”单选按钮上右击,在弹出的快捷菜单中选择“设置控件格式”命令,弹出“设置控件格式”对话框,切换到“控制”选项卡,在“单元格链接”编辑框中选择任意一个空白单元格(如B1),然后单击“确定”按钮,如图6.10所示。
图 6.10
这时,所有单选按钮都被自动链接至B1单元格,B1单元格可以返回单选按钮的输出“信号”。按照选项顺序,设置6个单选按钮分别对应数字1至6。例如,单击“罗湖”选项,B1返回数字1;单击“宝龙”按钮,B1返回数字6。
B1单元格中的“信号”值在动态图表制作中将作为变量性质的参数通过引用函数确定数据的引用范围。
小技巧:如何快速对齐单选按钮?
单选按钮较多时,手动排列很难做到整齐划一,利用对齐功能可以实现快速对齐和平均分布。
Step01 按住Ctrl键依次选中所有单选按钮将其同时选中,如图6.11所示。
图 6.11
Step02 切换到“页面布局”选项卡,功能区右侧有“对齐”功能图标,如图6.12所示。
图 6.12
Step03 单击“对齐”图标,在弹出的下拉菜单中选择“顶端对齐”项,如图6.13所示。
图 6.13
Step04 再次单击“对齐”项,再在弹出下拉菜单中选择“横向分布”,完成效果如图6.14所示。
图 6.14
1. 表单控件下的组合框
组合框 用于制作下拉菜单式选择器,同样是单选性质的控件。组合框在控件箱中的位置如图6.15所示。
图 6.15
下面以图6.5所示示例为例,用组合框来制作一个区域名称的下拉菜单。
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“组合框控件”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按下鼠标左键并向右下方拖曳,松开鼠标左键即出现一个空白的组合框,如图6.16所示。
图 6.16
Step02 在表格区任意空白处制作一个连续的区域名称列表,如图6.17所示。
图 6.17
Step03 在组合框上右击,在弹出的快捷菜单中选择“设置控件格式”命令弹出“设置对象格式”对话框。切换到“控制”选项卡,在“数据源区域”编辑框中选择B9:B14(下拉列表区域);在“单元格链接”编辑框中选择任意单元格作为“信号”存放位置(此处选D7);“下拉显示项数”文本框中的数字可改为"6",也可以不改,只要数值不小于要显示的选项个数即可,以保证能够全部显示列表项,如图6.18所示。
图 6.18
Step04 单击“确定”按钮,即可将选项列表链接到组合框,并以D7作为“信号”单元格。如图6.19所示,此时单击组合框右侧的箭头即可出现下拉菜单。
同单选按钮一样,单击任意一个选项,D7单元格将返回该选项在下拉列表中的位置序号,即单击“罗湖”时返回1,单击“宝龙”时返回6。
2. ActiveX控件下的组合框
ActiveX控件也提供了组合框控件,在控件箱中的位置如图6.20所示。
图 6.19
图 6.20
ActiveX控件组合框的列表和单元格链接方式不同于表单控件,需要在控件“属性”对话框中进行设置;且“信号”单元格返回的不是数值,而是选项名称。
Step01 用ActiveX控件制作一个空白的组合框。
Step02 在组合框上右击,在弹出的快捷菜单中选择“属性”命令弹出“属性”窗口,如图6.21所示。
Step03 如图6.22所示,在"LinkedCell"栏输入H7,"ListFillRange"栏输入B9:B14,然后关闭窗口。
图 6.21 |
图 6.22 |
Step04 单击退出“设计模式”,如图6.23所示。
图 6.23
此时,单击组合框右侧的箭头可显示下拉菜单。选择并单击任意一个选项,H7单元格即返回此选项名称,如图6.24所示。
图 6.24
1. 表单控件下的列表框
列表框 是单选性质的控件,可以直接在控件中以列表的形式显示选项内容。列表框控件图标在控件箱中的位置如图6.25所示。
下面以图6.5所示示例为例,用列表框控件来制作一个区域名称的选择器。
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“列表框控件”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按下鼠标左键并向右下方拖曳,松开鼠标左键即出现一个空白的列表框,如图6.26所示。
图 6.25
图 6.26
Step02 在列表框控件上右击,选择“设置控件格式”命令弹出“设置控件格式”对话框。切换到“控制”选项卡,在“数据源区域”编辑框中选择B9:B14,在“单元格链接”编辑框中选择任意单元格作为“信号”存放位置(此处选C17),如图6.27所示。
Step03 单击“确定”按钮,即可将选项列表链接到列表框,并以C17作为“信号”单元格,如图6.28所示。
此时列表框中已经出现定义好的区域列表,单击任意一个选项,C17单元格将返回该选项在选项列表中的位置序号,即单击“罗湖”时显示1,单击“宝龙”时显示6。
图 6.27
2. ActiveX控件下的列表框
ActiveX控件也提供了列表框控件,在控件箱中的位置如图6.29所示。
图 6.28
图 6.29
ActiveX控件列表框的链接方式可参照6.2.2节中组合框的设置,它返回的“信号”同样是选项名称,完成效果如图6.30所示。
单选按钮、组合框和列表框都可以作为单选控件使用,选用哪种控件可根据个人喜好及选项个数来定。如选项个数较少,可以使用单选控件;选项个数适中,可以使用组合框控件制作下拉式菜单;选项个数较多的,则可以使用列表框。
单选控件要解决的是“显示哪项数据”的问题,只能选其一,而无法控制每一项数据显示与否。
要解决每项数据“显示与否”的问题,则需要用到多选控件。Excel中的多选控件是复选框,图标在控件箱中的位置如图6.31所示。
图 6.30
图 6.31
下面介绍一个复选框控件的应用示例。如图6.32所示,该动态图表基于市场调查数据制作而成,用以比较六家国内银行在提及率、品牌形象、品牌使用率及品牌传播度四个属性上的表现。
图 6.32
图6.32下方一行即为复选框,单击任意选项可以勾选或取消勾选。当选项处于勾选状态时,图中显示该选项对应的数据;否则,选项未选中时,图中不会显示该选项对应的数据。
由于复选框控件可以控制任意选项对应数据的显示与否,因此可以实现选项数据间的任意比较。例如,若要了解工商银行和中国银行在四个属性上的表现,就可以勾选工商银行及中国银行复选框,这时图中将只显示这两家银行的数据,有利于清晰地进行比较而不会受到其他四家银行数据的干扰。显然,在提及率与品牌形象方面,两家银行表现基本相近;但是在品牌使用率及品牌传播度上,工商银行均要优于中国银行。
与单选控件输出数字“信号”或文本“信号”不同,复选控件输出的是逻辑值"True"或"False",且必须为每个复选框选项各自指定一个存放“信号”的单元格。当选项处于勾选状态时,该选项的链接单元格返回"True";当选项未选中时,则返回"False"。
仍然以图6.5所示示例为例,来制作一组复选框控件。
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“复选框控件”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按住鼠标左键并向右下方拖曳,松开鼠标左键,一个空白的复选框就出现了。另外再复制5个控件,并进行对齐,如图6.33所示。
图 6.33
Step02 如图6.34所示,依次将6个复选框命名为“罗湖”、“福田”、“南山”、“华强北”、“梅林”、“宝龙”。
图 6.34
Step03 在“罗湖”复选框上右击,选择“设置控件格式”命令,弹出“设置控件格式”对话框,切换到“控制”选项卡,在“单元格链接”编辑框中选择B26单元格,如图6.35所示。
图 6.35
Step04 同Step03,依次为其他选项指定链接单元格为C26、D26、E26、F26、G26。这样,当选中或取消选中复选框时,链接单元格会自动返回逻辑值"TRUE"或"FALSE",如图6.36所示。
图 6.36
单选和多选控件与选项有关,本节要介绍的控件只是单纯地根据单击返回“数字”信号,这就是数值调节类控件。
图表的空间是有限的,这里我们可以在一张图表里清晰地展示12个数据。但如果是120个甚至1200个数据呢?会发生什么情况呢?
如图6.37所示的折线图,显示的是某产品于2010~2012三年中每天的销量,包括近1100个数据。
图 6.37
图6.37采用传统图表的制作方法,强制将1100个数据绘制在一张图上。显然,由于数据太多而空间有限,导致图表变得拥挤不堪,信息严重失灵。很难从中看出某天的销量是多少,从而失去了数据展现的意义,更谈不上可视化。
为解决这一问题,我们可以借助滚动条控件。滚动条控件图标位于表单控件箱第2行、左起第3个图标处(见图6.38),可以用来控制展示数据的移动或翻页。
图 6.38
如果利用滚动条来进行展示图6.37中的产品销量数据,则可以实现如图6.39所示的效果。图下方的横条即为滚动条。
可以看到,滚动条左右各有一个方向箭头,中间则有一个可左右滑动的指针。单击左侧或右侧的箭头,指针会随之向左或向右移动一个单位(称为步长),此时图中的数据及坐标轴标签也会相应向左或向右移动一个单位。而当在指针左右两侧单击时,则会起到数据翻页的作用。将鼠标指针定位到指针上,按下鼠标左键随意向左或向右拖动,可以灵活控制图表的数据展示。
图 6.39
滚动条控件的制作步骤如下所述。
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“滚动条控件”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按下鼠标左键并向右下方拖曳。松开鼠标左键,即可生成滚动条控件,如图6.40所示。
图 6.40
此时,滚动条还不具备数据控制功能,而必须根据源数据进行控件参数的关联设置。
Step02 在滚动条控件上右击,选择“设置控件格式”,弹出“设置对象格式”对话框。切换到“控制”选项卡,如图6.41所示。
图 6.41
“设置对象格式”对话框中各项参数含义如下所述。
单元格链接:“信号”单元格,意义同其他控件。
当前值:滚动条指针当前所在位置对应的“信号”值。
最小值:滚动条指针处于最左侧时的“信号”值,默认值为0。
最大值:滚动条指针处于最右侧时的“信号”值,默认值为100。
步长:在左侧或右侧箭头上每单击一次指针滑动及“信号”值变动的单位,默认值为1。
页步长:即在滚动条上单击翻页时指针滑动及“信号”值变动的单位,等于图表页面内正常显示的数据个数。
Step03 按照图6.41设置好以上指标后,单击“确定”按钮。此时,拖动滚动条指针,链接单元格(H32)内可显示数字“信号”,如图6.42所示。
图 6.42
在滚动条上随意单击或滑动指针,可看到“信号”单元格内数值会发生变化。
数值调节钮在表单控件箱中的位置如图6.43所示,其可用于控制变量的数值增减。
数值调节钮控件的制作步骤如下。
图 6.43
Step01 选择“开发工具→控件→插入→表单控件”命令,在弹出的控件箱中单击“数值调节钮”图标,将鼠标指针移至表格区,此时鼠标指针呈十字形。在任意位置按下鼠标左键并向右下方拖曳。松开鼠标左键,即可生成一个数值调节钮控件。
Step02 在数值调节钮上右击,选择“设置控件格式”命令,弹出“设置对象格式”对话框。切换到“控制”选项卡,如图6.44所示。
图 6.44
在“控制”选项卡中可设置最小值、最大值、步长及单元格链接,参数含义同于滚动条控件。
图 6.45
Step03 设置好以上指标后,单击“确定”按钮。此时,单击数值调节钮即可控制链接单元格内的“信号”值发生变化,如图6.45所示。
ActiveX控件箱中有一个图像控件,位置如图6.46所示。
图 6.46
利用图像控件,可以制作图片的切换效果,详见15.3节。此处不单独介绍图像控件的制作。
涉及日期数据的查询,可以使用日历控件作为选择器,以增强数据的交互效果。日历控件隐藏得比较深,在ActiveX控件箱“其他控件”(见图6.47)中可以找到。
图 6.47
以下是详细制作步骤。
Step01 单击“其他控件”图标,打开“其他控件”对话框,如图6.48所示,在控件列表中找到并单击选择“日历控件12.0”项。
Step02 单击“确定”按钮,在表格空白区域按下鼠标左键向右下方拖曳,即可生成日历,如图6.49所示。
图 6.48
图 6.49
Step03 在日历控件上右击,选择“属性”命令打开“属性”窗口,在"LinkedCell"栏中设置链接单元格为B57,如图6.50所示。
图 6.50
Step04 退出设计模式。在日历控件上单击任意日期,B57单元格都会自动返回对应的日期值,如图6.51所示。
图 6.51
分组控件可以对相关控件进行组合,形成一个可视单元,如图6.52所示。
图 6.52
如图6.53所示,分组控件位于表单控件箱第2行第1个图标处。
图 6.53
分组控件不需要像其他控件一样进行单元格关联,只要用画好的分组控件将要组合的控件包围起来即可。组合框的名字可以根据组合的控件性质进行修改,如图6.52中的“区域选项”就代表这组单选按钮的性质。