龙空技术网

Excel可以做这样的高级图表?柱形饼图组合

Talk数据 409

前言:

如今我们对“饼状图怎么更改图例名称”大致比较着重,各位老铁们都需要剖析一些“饼状图怎么更改图例名称”的相关内容。那么小编也在网络上网罗了一些对于“饼状图怎么更改图例名称””的相关内容,希望你们能喜欢,我们快快来了解一下吧!

在tableau里可以很轻易的做出下面的图表,但是相比之下,excel的应用更加广泛,于是我尝试用excel将其做出。

我大概倒腾了一个下午,如果只是简简单单的做个一次性的那还算简单,当你看完我这篇文章也就会了,耗费我时间的是怎样让其在筛选的时候可以动态变换。

先说说怎么做出柱状饼图组合图。我随机准备了一些数据。

第一步:制作组合图

第二步:制作饼图(每个月份制作一个饼图)。

第三步:调整纵坐标轴(此操作为了让饼图不超出图表区域)。

第四步:逐个将饼图复制黏贴为图片,再剪切图片黏贴到辅助系列的每个数据点上。

第五步:再制作一个饼图,将图例截图成图片放到图表里即可。

逐个黏贴,图表就操作完成了。

如果是制作可筛选的报表,那就需要额外增加进行一些操作。

首先需要将饼图逐个命名。比如1月饼图命名为1月,2月饼图命名为2月……

记住名称必须是横坐标那一列文字,图表命名为组合图,因为后面代码要用到。

然后我们再在当前sheet里放置代码。

最后组合框指定宏添加饼图。

代码需要修改的地方我做了备注,其余代码无需改动即可使用。这里需要说明的是,图表横坐标的排序需要和单元格中一致(无特殊设置,通常情况是一致的)。如有疑问,欢迎留言。

Sub 添加饼图()    i = 1    Set rg = Range("a2:a6") '横坐标所在位置    Set ch = ActiveSheet.ChartObjects("组合图") '图表名称    num = 2 '第几个系列改为添加饼图    ms = Range("a9").Value '设置纵坐标最大值    Application.ScreenUpdating = False    ch.Activate    ActiveChart.Axes(xlValue).MaximumScale = ms    For Each r In rg    ActiveSheet.ChartObjects(r).Activate    ActiveChart.ChartArea.Select    ActiveChart.ChartArea.Copy    Range("a1").Select    ActiveSheet.Pictures.Paste.Select    Selection.Cut    ch.Activate    ActiveChart.FullSeriesCollection(num).Points(i).Select    Selection.Paste    Application.CutCopyMode = False    i = i + 1    Next    Application.ScreenUpdating = True    ch.ActivateEnd Sub

标签: #饼状图怎么更改图例名称