在tableau里可以很轻易的做出下面的图表,但是相比之下,excel的应用更加广泛,于是我尝试用excel将其做出 。我大概倒腾了一个下午,如果只是简简单单的做个一次性的那还算简单,当你看完我这篇文章也就会了,耗费我时间的是怎样让其在筛选的
在tableau里可以很轻易的做出下面的图表,但是相比之下,excel的应用更加广泛,于是我尝试用excel将其做出 。
文章插图
我大概倒腾了一个下午,如果只是简简单单的做个一次性的那还算简单,当你看完我这篇文章也就会了,耗费我时间的是怎样让其在筛选的时候可以动态变换 。
文章插图
先说说怎么做出柱状饼图组合图 。我随机准备了一些数据 。
第一步:制作组合图
文章插图
第二步:制作饼图(每个月份制作一个饼图) 。
文章插图
第三步:调整纵坐标轴(此操作为了让饼图不超出图表区域) 。
文章插图
第四步:逐个将饼图复制黏贴为图片,再剪切图片黏贴到辅助系列的每个数据点上 。
文章插图
文章插图
第五步:再制作一个饼图,将图例截图成图片放到图表里即可 。
文章插图
逐个黏贴,图表就操作完成了 。
如果是制作可筛选的报表,那就需要额外增加进行一些操作 。
首先需要将饼图逐个命名 。比如1月饼图命名为1月,2月饼图命名为2月……
记住名称必须是横坐标那一列文字,图表命名为组合图,因为后面代码要用到 。
文章插图
然后我们再在当前sheet里放置代码 。
文章插图
最后组合框指定宏添加饼图 。
代码需要修改的地方我做了备注,其余代码无需改动即可使用 。这里需要说明的是,图表横坐标的排序需要和单元格中一致(无特殊设置,通常情况是一致的) 。如有疑问,欢迎留言 。
【Excel另类的柱形饼图 excel柱形图和饼图适用场合】
Sub 添加饼图()i = 1Set rg = Range("a2:a6") '横坐标所在位置Set ch = ActiveSheet.ChartObjects("组合图") '图表名称num = 2 '第几个系列改为添加饼图ms = Range("a9").Value '设置纵坐标最大值Application.ScreenUpdating = Falsech.ActivateActiveChart.Axes(xlValue).MaximumScale = msFor Each r In rgActiveSheet.ChartObjects(r).ActivateActiveChart.ChartArea.SelectActiveChart.ChartArea.CopyRange("a1").SelectActiveSheet.Pictures.Paste.SelectSelection.Cutch.ActivateActiveChart.FullSeriesCollection(num).Points(i).SelectSelection.PasteApplication.CutCopyMode = Falsei = i + 1NextApplication.ScreenUpdating = Truech.ActivateEnd Sub
推荐阅读
- 芝麻调味油跟麻油是一样的吗?
- 汽车上有哪些看着不起眼但是技术含量特别高的零部件?
- 龙门的由来,龙门水都名字的由来?
- 关于朋友和背叛的句子说说心情 关于朋友和背叛的句子
- kd多素是什么食物,kd多素什么品牌的好?
- 电脑里面directx的作用是什么?
- 遍护众生的千手观音菩萨为什么会有千只手?
- 盘点越野性能最强的十辆车 全球十大顶级越野车品牌排行榜
- 衣服上沾上油漆怎么洗掉小窍门 教你如何清洁衣服上的油漆
- 乒乓球拍胶皮涩性和粘性区别分析 粘性胶皮和涩性胶皮的区别是什么