马上注册,结交更多财务经理人,享用更多功能,成就财务总监之路……
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
基于地图选择的Excel动态图表(鼠标滑动版)
文 / ExcelPro的图表博客
上篇日志《基于地图选择的Excel动态图表》之后,有朋友提出,能否增加这样的效果,即让鼠标停在某省图形上的时候,动态显示省名。
我以为Excel中自选图形没有鼠标事件,不想马上有高手给出了个台湾的案例文件,11楼。研究了那个文件,将其技巧借用到我的地图选择模型,经过反复试错,果然就成功了:只要在地图上移动鼠标,地图会相应变化填充色,并显示区域名称,图表也会自动切换,很爽。
基本原理大致是这样的:
1、首先创建一个空的图表对象,将地图图形贴入其中。地图图形要先按地域命名,以便后面引用其名称。例子中因借用以前的文件,为拼音命名,其实可以命名为中文的。
2、再封装一个鼠标移动事件的类,使用图表的GetChartElement方法,根据鼠标的坐标值x、y,返回所在对象的lElementID(类型)和lArg1(编号);判断该对象若是地图图形,则改变其填充色,并将其名称填入到A1,供动态图表模型引用。
3、动态图表模型引用A1的区域名,完成动态图表切换。
由于对VBA特别是类并不了解,这个模型我只是依样画葫芦,反复google和试错做出来的,因此具体制作过程就不叙述了。有兴趣的朋友自行研究,不想研究的就直接使用。其中代码不妥或不规范的地方,望VBA高手指正。
这个版本使用了小博最大读者群来源之一广东省的地图,希望广东的读者们喜欢:)。要将这个模型改造为其他省的地图是非常方便的,只需要删除现地图图形,贴入你的地图图形,再更换你的数据即可,这是其优点。
实用性:★★★★★
制作难度:★★★★★
源文件下载:基于地图选择的Excel动态图表(鼠标滑动版) 2010-2/20102210314066709.rar
(本文由ExcelPro的图表博客原创,转载请注明出处。ExcelPro的图表博客 探讨专业有效的商务图表沟通之道,欢迎交流讨论!)
[此贴子已经被作者于2010-2-2 10:31:54编辑过] |