基于范围滑块的动态图表

作者:  //  2012 年 5 月 9 日  //  Excel图表  //  2 个评论

             

在互联网中,可见一类基于范围滑块的动态图表,尤其是在交互式股票图中非常常见。使用范围滑块的好处是可以动态查看数据全局,也可以就数据局部进行查看。但遗憾的是,在微软的相关控件集中根本没这样的控件,在遍寻Web后也未有收获,于是自己动手搞了一个,并将其放在了《演绎生动:Excel图表》一书的随书案例附件中,并附有相关图表制作的具体介绍,可见P427页和P460页及相关内容。

书中提到使用 [RangeSlider.ctlRangeSlider] 范围滑块控件有如下限制:
  1. 在Excel2007及2010中该控件无法嵌入到工作表中;
  2. 在缩放比例非100%显示中,该控件的尺寸大小会出现非预期的变化;
  3. 仅支持使用在97~2003格式保存的Excel文档中[即:Excel2007及2010中需要使用兼容模式来打开]。

有关上述问题,一直比较困惑,曾问人无数,终未获得有价值的帮助。前几日在周教主360神软协助下,后知后觉打了个关于Office安全补丁的更新,面向Office2003、2007、2010各提供了3个补丁包。居然奇迹般发现:在Excel2010中已经可以很完美的解决上述第2和第3个问题,于是在Excel2007 [ 版本:SP2 MSO 12.0.6545.5004 ] 中测试,一样顺畅通过。在Excel2003中尝试,终于将第2个问题給完美了。

欣喜之余,于是测试是否可以解决上述的第1个问题,开发工具>插入>ActiveX控件>其它控件>RangeSlider.ctlRangeSlider,出现十字星鼠标指针,然后拖拽画出,居然在Excel2007中没有丝毫障碍的就嵌入了!但在Excel2010中却出现如下图所示的警告:

既然在Excel2007中可以顺利嵌入,2010其实也可以,直接无视警告提示窗口,点下方[确定],以Excel2007和2010的新格式保存该文档,退出,再次打开,这个控件就被绘制到工作表中了。看来关于问题的定义应该是这样的:如果你没有错,那就是对方错了,无论问题是神马,总有一方是错误的 :twisted: 。好了,来看看下方的案例演示效果:


相关下载 Download:

使用注意
❶ Office需打过微软更新的补丁;
❷ 需要开启宏;
❸ 打开案例后先执行:“注册 RangeSlider.bat” 文件注册控件

关于作者

Ms Office爱好者,仅仅就是一个懂得高效偷懒的伙计,但绝对不是属于Office软件的骨灰级玩家,相对注重实用。比较热衷数据可视化,当然这个爱好中忒注重视觉的部分,和我的工作基本无关,但就是喜欢。

查看所有 的文章

2 个评论 来自 "基于范围滑块的动态图表"

  1. fukadalwx 2013 年 1 月 29 日 上午 11:45 ·

    2003的无法运行该控件吗,怎么托拉那个滑动控件变成移动控件了?

  2. 演绎生动 2013 年 1 月 29 日 下午 5:04 ·

    无法运行该控件?首先需要注册这个控件,如果是win7,则需要Administrator身份登录windows,才可注册。如果能看到控件,拖拽操作请刷新网页详见看gif的动画演示

留下您的评论

您必须 方可发表评论。