ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E文精选 > 图表图形 > 同场加映:百年奥运百米短跑展示图(续)

同场加映:百年奥运百米短跑展示图(续)

作者:绿色风 分类: 时间:2022-08-17 浏览:135
楼主
嘉昆2011
重申数据来源:
  1. http://chandoo.org/wp/2012/08/14/bolt-vs-rest-excel-visualization/
网页展示:
  1. http://www.nytimes.com/interactive/2012/08/05/sports/olympics/the-100-meter-dash-one-race-every-medalist-ever.html/
基于上篇对百年奥运百米短跑展示,不少童鞋或许觉得效果不错,但苦于自己的Excel还是使用2003版本,无法使用Excel 2010操作模拟其效果,这就如不少人仍向往或依稀迷恋民国时期旗袍的旖旎。那么是否有不使用数据透视表中的切片器功能达到类似的效果呢?带着这个问题,可以看看下面这个效果展示:
上篇效果展示:
  1. http://www.exceltip.net/thread-38929-1-1.html

 

在上篇中有提到,还有其它的做法可以实现此展示效果,那我们不凡借助单元格,条件格式,简单VBA来实现。

方法及知识点涉及:
1,简单函数:Vlookup,Index,Small,Match及Cell
2,简单VBA:筛选,选择单元格,图表上点的选择

制作步骤:
1,整理数据,与上例相同,唯一不同的地方在于用函数筛选出不重复的不同国家所获得的奖牌数。
经典的数组公式用于筛选不重复项:
  1. =INDEX(I:I,SMALL(IF(MATCH(I$3:I$87,I$3:I$87,)=ROW($1:$85),ROW($3:$87),99),ROW(A1)))
2,最后把这些项目复制粘贴于Chart表中合适的图表位置,并用名称标签命名。
3,条件格式:设置不同的格式样式,用于区别所选项目与非所选项目。
  1. =ROW(S5)<>CELL("row")
  1. =ROW(S5)=CELL("row")

 

2,把Data表中有用的字段数据想填充到Screen表中,用于筛选之用。
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.     If Not Application.Intersect(Target.Cells(1), Range("CM")) Is Nothing Then
  3.         Application.ScreenUpdating = False
  4.         Worksheets("Screen").ListObjects("Table1").Range.AutoFilter Field:=8, Criteria1:=Target.Cells(1).Value
  5.         Application.ScreenUpdating = True
  6.     Else
  7.         Worksheets("Screen").ListObjects("Table1").Range.AutoFilter Field:=8
  8.     End If
  9.     Target.Parent.Calculate
  10. End Sub
3,选手基本信息;4,组装图表;5,针对图表的VBA都与上例一样。这里不再赘述。

完成效果:

 

附件:

100M_Record.rar




2楼
965502110
好强大哦,支持嘉昆
3楼
嘉昆2011
谢谢支持哦
4楼
CheryBTL
漂亮 V5

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap