600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Excel使用控件创建动态地图图表

Excel使用控件创建动态地图图表

时间:2022-09-06 20:14:48

相关推荐

Excel使用控件创建动态地图图表

[本文软件Excel ]

效果图:

首先我们看一下数据源

数据源中第二列是对应图形的名称。

首先创建图形,我们可能在网络中找到各个地图的矢量图形。

不过不是每个地图图形都适合我们,或许企业划分非按照行政区划分。因此可以尝试自己绘制,如下图:

绘制的方法,可以复制过一张地图。然后通过插入“形状”来按照自己的需求描。

完成后,我们在“开发工具”选项卡中选择插入“组合框”。组合框右键“设置控件格式”

当我们选择这个组合框时,链接的单元格中的数值就会随之改变,我们的数据就以此变化。

控件链接的内容:

此时需要建立图例和辅助数据来帮助完成图形色彩的选择,如图:

因为是从小到大排序,且兼顾控件的数据源,因此公式如下:

第一列,选择的占比

=SMALL(OFFSET($R$79:$R$86,0,$N$72-1,8,1),ROW(1:9)) 复制代码

第二列,图例的标识名称

=INDEX($N$79:$N$86,MATCH(M62,OFFSET($R$79:$R$86,0,$N$72-1,8,1),0)) 复制代码

第三列,单元格颜色对应的形状名称,此处为拼音,和数据源中的形状名称保持一直

=INDEX($O$79:$O$86,MATCH(N62,$N$79:$N$86,0)) 复制代码

以上均为数组公式,需要按Shift+Ctrl+Enter执行。为了能使图例显示清晰,选中第三列右键“设置单元格格式”,“自定义”,类型中输入三个分号,即“;;;”。

此操作会使公式形成的内容不可见。如图

接着就是定义单元格的颜色名称,定义的颜色名称会被引用添加至图形的填充颜色。

“公式”选项卡“名称管理器”新建各个单元格的名称,如图:

随后按Alt+F11打开VBE编辑器,输入图形填充的VBA代码:

Sub 图表填色()On Error Resume NextFor i = 62 To 69 ActiveSheet.Shapes(Range("O" & i).Value).Select Selection.ShapeRange.Fill.ForeColor.RGB = Range(Range("P" & i).Value).Interior.Color Next iEnd Sub 复制代码

然后右键控件“指定宏”

选择刚才创建的宏名称。

此时如果我们选择控件“组合框”的内容,将会得到不一样的图表类型。不过为了得到更好的显示效果,我们可以采用照相机的方式来组合。

首先将照相机找到,并添加到快速访问工具栏。位置是“开始”,“选项”,如下图:

选择我们已经完成的图形所在的单元格,然后点击“照相机”。接着在需要的位置拖动鼠标,即可放置图片。此时再选择图例,照相机,拖动鼠标,完成图例放置。

这样就完成了一个跟随控件变化而变化的图表了。

源文件可查看下面的附件。

附件:/data/2359859\

本文转自

kirin51CTO博客,原文链接:/kirin/782628,如需转载请自行联系原作者

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。