原理:利用EXCEL中建立任意多边形功能。具体实现思路:把每省当成一个任意多边形,通过VBA绘制制每个任意多边形Shapes。这些省的边界的每个点数据存放在EXCEL中当数据调用。然后通过VBA 循环每个省,绘制出中国地图。
作者:源理-Office中国
操作步骤:1、通过CAD、或是画图软件导出或是网上下载。把每个省的形状的坐标下载下来。如图:
0.jpg
(133.31 KB, 下载次数: 0, 售价: 1 金钱)
2、写VBA代码:Sub 建立地图() Dim i, j As Integer Dim sha As Shape i = 1 Dim a As FreeformBuilder For Each cel1 In Range("B2:B" & Range("B65536").End(xlUp).Row + 1) If cel1 = "" Then ReDim p(cel1.Row - i - 1) Set a = Sheet1.Shapes.BuildFreeform(msoSegmentCurve, Range("B" & i).Offset(1, 0), Range("B" & i).Offset(1, 1)) For Each cel2 In Range("B" & i + 2 & ":B" & cel1.Row - 1) a.AddNodes msoSegmentCurve, msoEditingSmooth, cel2, cel2.Offset(0, 1) Next i = cel1.Row Set sha = a.ConvertToShape sha.Name = cel1.Offset(-1, -1) Set a = Nothing End If NextEnd Sub
到这里完成了。效果如图
0.gif
(810.19 KB, 下载次数: 0, 售价: 4 金钱)
如喜欢此技巧,手机右上角点开,分享到QQ空间,方便自己以后看 |