OFFICE Excel柱形图自动排序实现方法

在利用图表呈现数据时,很多时候我们不但要求对数据进行排序,而且图表也要进行排序。比如要求柱形图为升序柱形图,比较简单且容易实现的操作,就是把数据按图表的数据源升序排序后再制成图表就可以了。但问题是这样的话如果数据发生了变化,图表就不会自动排序了。那有什么样的方法在数据发生变化时让图表也会自动排序呢?接下来,我们就以柱形图为例分别利用宏录制和排列图两种方法实现柱形图的自动排序。以下操作均在Excel 2019中进行。

● 利用宏录制实现柱形图的自动排序

首先,打开Excel工作表并切换到“开发工具”选项卡(如果没有此选项卡,可点击“文件→选项”,在弹出窗口点击“自定义功能区”,勾选窗口右侧的“开发工具”就可以了),点击“宏录制”,在弹出的窗口中输入宏的名称(如“排序”),点击“确定”后对所需数据进行排序,操作完成后停止录制;然后,点击“Visual Basic→模块1”,就可以看到电脑自动生成的VBA代码,这段代码不用去管它(图1)。

OFFICE Excel柱形图自动排序实现方法

接下来,双击VBA窗口中的Sheet1(因为数据在此工作表中),在右边窗口的“通用”处选择“Worksheet”,在右侧选择“Change”事件,在代码里面加入“Call 排序”,即呼叫录制的宏名称就可以了(图2)。

OFFICE Excel柱形图自动排序实现方法

选中建立柱形图所需要的数据,创建柱形图,这样无论数据如何更改,不但数据能自动排序,图表也会自动排序。最后,将文档另存为启用宏的工作簿就可以了(图3)。

OFFICE Excel柱形图自动排序实现方法

● 利用排列图实现柱形图的自动排序

首先选中建立图表所需要的数据,切换到“插入”选项卡,依次点击“插入统计图表→直方图→排列图”,这样就插入了一个降序的柱形图。然后右击排列图线条,选择“设置排列图线条格式”,将线条设置为“无线条”;再右击柱形,选择“设置数据系列格式”,将间隙宽度调整成所需要的间隔;删除不需要的数值;更改好图表标题就可以了。这种方法只对图表排序(只有降序一种方式),不对数据进行排序,更改数据时,图表会自动进行更改(图4)。

OFFICE Excel柱形图自动排序实现方法