今天要跟大家分享的是数据地图系列的第九篇——excel(VBA)数据地图! 关于VBA在excel中的应用非常广泛,本篇仅仅是给出示例代码,不会对基础操作做太过详细的讲解。...下面是VBA数据地图的详细制作步骤: 1、首先你需要一个纯色的矢量地图素材。 ? 这个问题早在数据地图的入门篇里已经解决了。 数据地图入门篇——素材获取!...(中国地图就需要定定义34个省级行政单位名称)。 3、输入数据: 关于作图的数据组织:这里需要三列数据,一列省份名称、一列指标值,一列颜色填充值(需要使用函数自动获取)。 ? 4、定义组距 ?...8、编辑VBA填充代码 Alt+F11打开VBA代码编辑器,在thisworkbook中写入如下代码后关闭VBA窗口。 ?...记得在地图做完之后一定要使用分档阀值区域作为图例引用在数据地图周围。选中D9:E13区域,点击照相机功能,然后在数据地图区域释放。 ? ? ? ?
今天要跟大家分享数据地图系列的第10篇——excel(VBA)数据地图透明度填充法。 这种方法的制作步骤难度与前一篇相比都较低,但是涉及到的VBA代码却要比前一篇略复杂一点。...1、首先我们要准备的是世界地图素材: 本案例中数据多达191个国家,每个国家图形名称都取得是“S_”+“前三个字母大写”,需要一一命名,当然这个过程是非常耗时费力的,推送后我会将本例源文件贡献,如感兴趣...(H3) 4、插入一个矩形(命名为color_label)将作为地图图例 5、输入VBA填色代码 ALT+F11打开VBA编辑器,输入以下代码: Sub fill_color_vba() Application.CalculateFull...Error Resume Next '个别国家无图形,忽略 Application.ScreenUpdating = False '暂停刷新屏幕 For i = 4 To 193 '为数据源的起始和结束行号...最后将插入的矩形(作为地图图例)放在数据地图的合适位置,使用照相机快照功能将整个数据地图牌照引用。 保存的时候仍然要保存为xlsm格式的带宏文件。
今天来谈谈数据地图,在做关于地理位置的数据分析时常常用到。...关于制作数据地图的工具,这里笔者不特意强调用什么工具,而且数据地图也并不是这些工具的核心功能点,excel能做,D3能展示,甚至图片+PS也能做出你要的效果。...所以,以上的工具都带有数据地图功能,但各有差异,比如样式,有没有钻取分析功能,能否精确到经纬度。 之前有写过一篇文章,关于如何利用excel中的数据源制作数据地图,地图样式很丰富,但有些地方需要开发。...本文就来介绍一下如何使用finereport的数据地图制作功能,来提升表格表姐们的数据报表的逼格。...finereport有很强大的地图功能:基本地图、GIS地图、热力地图、大数据流向地图等,有以下一个体系。 ?
地图具有神奇的能力,可以给我们展示不能直接看到的东西。对于记者来说,地图既是一个强大的数据可视化工具,也是一个强大的报告工具。...“地图是信息密度最大的数据通信方式,”洛杉矶时报的数据可视化主管Len De Groot说。因为人们在日常生活中就使用地图,所以能直观理解地图。...这个地图还演示了如何做一个可以揭示新故事的地图——对比最近媒体关注难民在绝望中试图穿越地中海和安达曼海域,地图显示了非洲惊人的移民数量。...单击式界面可以轻松获取到人口普查数据和其他公共数据库,并包括几个可以将照片和文字组合成“故事地图”的模板,如我曾做过的一个佛罗里达野生动物灭绝的故事。...“他们谈论很多关于数据框架思维,你不仅仅为了这个故事我要采访谁,你还要考虑怎样使用数据来找到一个故事或者用数据带入故事背景”他说。“地图是很重要的一部分。
今天跟大家分享数据地图系列的第14篇(最后一篇)——tableau数据地图。 前一篇曾提到说,tableau是全球知名的数据可视化领域独占鳌头的可视化产品,在各种商业及政府工作报告中,都在广泛使用。...创建完成地理角色之后,你会看到右侧的show me 窗口菜单中的那两个地图图表点亮,也就软件读取地区成功。 其中左侧那个地图可以展示两个维度数据,右侧那个只能展示一个维度数据。 ?...将第二个地图(展示一维数据的地图)用鼠标拖入中间画布,显示出中国地图。 ?...然后将左侧的总销售额数据拖入中间画布中的地图,此时地图立马变成热力数据地图,根据各省份不同数值大小填充成同色调的不同颜色。 ?...利用tableau制作数据地图,非常方便,而且作为老牌的数据可视化产品,他的图标之间交互性非常强大,图表之间可以相互通过选择器连接,实现实时交互的强大功能。
之前有过一段时间,特别热衷于数据地图,也分享很多篇关于地图制作的教程(涉及到各种作图软件),但大多是整理拼凑,自己发挥的不多。...最近在看哈德利.威科姆的那本火遍全球的R语言数据可视化经典教程——《ggplot2——数据分析与图形艺术》。书内虽然关于数据地图的内容很少,但是ggplot所渗透的可视化图层理念实在让人叹为观止。...书中完全将复杂的地图图表语言拆解成常规图表思维,通过图层叠加、分组填色、空间映射,让我对地图这种深度可视化形式有了更多深入的理解。...今天这一篇主要分享美国地图的绘图代码,同样是我们之前分享世界地图、中国地图时的代码(局部地方有小改动)。 之前迟迟没有找到好用的美国全境的地理信息数据,最近终于在某网站上找到了。...<- join(American_map_data, mydata, type="full") #合并两个数据框 5、地图映射代码(ggplot2包所支持的ggplot函数,感兴趣可以自行探索,若不感兴趣
今天要跟大家分享的是数据地图系列6——Stata数据地图(下)! 接着前一篇的节凑,这一篇会给大家介绍比较全面的Stata热力地图代码实现。 版本仍然是基于StataSE12.0。...首先需要下载软件外部命令:spmap #这一条命令是数据地图的专用命令。 ssc install spmap #下载并安装spmap命令。...下载数据地图经纬度数据文件:就是昨天用到的那个 http://fmwww.bc.edu/RePEc/bocode/c/china_map.zip 接下来是作图步骤: 1、锁定数据地图数据文件目录:...cd d:\chinamap\ #锁定数据文件目录 2、打开中国地图数据文件(标签版) use china_label,clear ?...当然这些技巧并非是我要讲解的重点,我只负责数据地图作图技巧,不负责软件使用和代码基础哈~
今天是数据地图的第三篇——使用散点图模拟地图轮廓制作数据地图! 这一篇的地图制作思路,相对比较曲折,使用的是散点图的做法。...先用一组数据模拟地图经纬度,制作出虚拟的中国分省地图的轮廓线,然后再用一组数据(虚拟的省会坐标数据)制作各省散点图。 最后通过给散点图添加标签,完成指标数据的添加。...本案例的制作难点是虚拟的经纬度坐标数据,非常难找,有将1300对数据。 ? 这里我是从ExcelPro博主的畅销书《excel图表之道》中直接引用过来的。...步骤: 1、先使用轮廓数据插入散点图,模拟出地图轮廓。 ? ? 2、调整默认输出的散点图格式、长宽比例,尽量真实的还原地图模样。 ?...5、此时我们想要的散点式数据地图已经成型,需要做的只是把指标数据加上。 ? 选中指标系列散点图,添加数据标签。 最后再继续小修小补一下,感觉这个图表就可以用了,是不是很棒啊,连思路都脑洞很大哈哈~ ?
R1C1", _ TableName:="数据透视表1", _ DefaultVersion:=4 'xlPivotTableVersion10=1(03)11=2()12=3(...)14=4(2010)~15=5(2013)6(2016) '必须在表激活情况下才能操作表中的数据透视表 With ActiveSheet.PivotTables("数据透视表1") '
今天跟大家分享数据地图系列的第四篇——图片植入式气泡数据地图!...本篇内容的思路是这样的: 首先利用各个省会的虚拟坐标信息制作气泡图,然后通过将PNG格式的地图轮廓植入图表绘图区模拟出数据地图的整体外观。...气泡图(bubble) 步骤: 1、首选需要搜集到一张纯色背景的地图素材如下: ? 2、根据模拟的省会虚拟坐标信息以及指标数据,制作气泡图。 ?...5、调整完之后,通过添加数据标签选项,给数据点添加数据标签。 ?...这种方式做出来的数据地图,优点是简单易行,不用写VBA代码,缺点也很明显:数据点的位置与地图上实际的省会坐标可能很难做到绝对的一致,不过如果是用于不太正式的场合的话,那么这样的效果应该已经最够了。
今天要跟大家分享数据地图第一讲——热力地图(手工DIY)! 昨天的推送已经跟大家分享过如何获取、导入矢量地图素材,今天教大家怎么编辑矢量素材,进而制作出一幅数据地图来。...2、要整体移动整个地图,需要先将整个地图编组(或者全选(Ctrl+A)),然后在编组或者全选状态下,整体移动地图,否则可能导致只移动了某个省份图形,地图图形错位。...3、要整体缩放地图,需要先将整个数据地图编组,在 编组状态下,选中地图,按住shift键,使用鼠标缩放,这样可以保证地图等比例缩放,不会出现变形和错位。...快捷键:Ctrl+shift+G 下面是制作数据地图的具体步骤: 1、首先准备好地图素材(并解组): ? 2、在excel里准备地图省份数据指标; ? 3、使用条件格式,把指标分类填充颜色。...5、制作热力地图色彩阀值: ? 这个你可以直接把刚才在excel里的复制过来。 6、完善图表其他元素,备注信息,数据来源等。 ? 这样,一幅热力数据地图就搞定了。
今天这篇是昨天美国地图的续篇,同样的方法技巧,不同的对象。...0.99.903/ggplot2 2.1.0 代码过程: 加载功能所需支持的工具包: library(ggplot2) library(plyr) library("maptools") 导入并整理世界地图地理信息数据...world_map_data <- join(world_map1, xs, type = "full") #合并两个数据框 导入指标文件数据并合并成作图数据: mydata <- read.csv(..."full") #合并两个数据框 地图填充过程代码: 这里还是通过调整映射方式参数:coord_map("ortho", orientation = c(30, 110, 0))可以变换地图的呈现视角...但是通常来讲根据数据地图的填色规范: 指标都是正值,应该使用单色系连续渐变填充,只有在存在正负值类型的数据时,双色渐变才比较有意义。
1、VBA数组底层结构: VBA的数组在底层是SafeArray: 'https://docs.microsoft.com/zh-cn/windows/win32/api/oaidl/ns-oaidl-safearraybound...Integer ' cbElements As Long ' // 数组元素的字节大小 cLocksas As Long ' pvDataas As Long ' // 数组的数据指针...像c语言这样的语言,是有指针的,VBA数组的底层实现应该是使用了一个指针来引用SafeArray结构,而VarPtrArray(Arr)获取到的应该是指针的地址。...进一步测试,从pvDataas 中提取数据,看看获取的数据是否能正确: Sub TestArray2() Dim Arr() As Byte ReDim Arr(3) As Byte...扩大的话要更多的内存空间来保存数据,所以应该是要重新分配内存,测试: Sub TestArray() Dim Arr() As Byte ReDim Arr(3) As Byte
今天跟大家分享数据地图系列2——三维立体数据地图(给你的地图加特效)! 昨天已经跟大家分享过了如何在ppt中利用矢量地图图形编辑数据地图,因为是手工编辑,所以门槛不高,掌握编辑过程中的若干技巧足以!...今天继续叫大家怎么在ppt中将矢量地图做出三维效果。...通常我们在用地图展示数据的时候,并不是需要展示所有省份的数据,而是仅仅需要展示几个典型的省份,那么在编辑数据地图的时候,也可以只在地图上单独编辑那几个要显示数据的省份。...首先给地图整体加三维效果(加厚度): 将整个数据地图编组(顺便去掉所有图形轮廓颜色),选择格式——效果——棱台——三维效果。 ? 然后在三维效果中设置:深度20磅,材料:塑料效果;照明:平衡。...给这几个省份添加三维效果的数据条:深度值为根据具体指标换算的值。
我以前一直好奇为什么能有什么数据都可以保存的类型,现在对内存知识有了一定了解才知道,其实说到底,Variant底层也是一种数据结构,16个字节分别会有不同的意义,对于一些VBA里的对象复制给Variant...所以想知道Variant的16个字节具体代表了什么,我们只需要让它保存不同的数据类型,然后查看16个字节的变化就可以了。 Variant16字节是如何分配的?...前8字节 b0:标识数据类型(也就是VarType返回的数字) b1:标识后8字节是数据还是指针 - 0x00 8-15数据类型的是数据本身,String是地址 - 0x40 8-11存的是数据地址...,String是地址的地址 - 0x20 8-11存的是数组地址 - 0x60 8-11存的是数组地址的地址 后8字节8-15:数据或地址 Sub TestVariant() Dim...我们知道,VBA里面,函数的传值默认就是byref,所以加1个Function就可以了。
使用Excel的目的是为了处理大量的数据,而学习VBA是为了更方便的处理大量的数据,用的多了就会发现,在使用VBA处理Excel中的数据的时候,总是花很多的精力在处理那些不规则的数据上。...这个时候你就得去看他的Excel数据是怎么组织的,最后需要什么结果,然后才能去编写VBA处理。...所以,VBA用的多了,最后总还是会回到数据的规范上来,只有规范的数据才更方便用VBA来处理。...Excel用的多了,对数据有了一定的规划,应该都能够接受和理解这种限制。 那么,如何用VBA去操作数据库呢?...只需要安装好对应的数据库驱动程序,在Windows上,VBA只需要使用ADO接口去操作就可以。 所以想使用VBA来操作数据库,需要学习的东西并不多,主要就是ADO和SQL语句。
1、需求: 有1个工作簿,多个工作表,格式一致,按某列作为关键字(具有唯一性),汇总数据,以工作表名称作为汇总后的新列名称,并生成1列合计。...2、实际例子: 有1个记录员工工资的工作簿,姓名是唯一的,需要汇总每一个人当年的工资数据,举例3个月的数据: ? 3个月中,人员也会有变动。 需要的结果表: ?...3、代码实现 简单分析: 读取数据 根据姓名确定数据要存放的行号,并累加到合计列 输出 个人碰到的很多VBA实际问题基本都可以按这3步完成,所以我习惯首先把代码的框架搭好,而且我基本固定按这个模式了...Cols End Enum Type DataStruct Src() As Variant Rows As Long Cols As Long End Type Sub vba_main...因为要汇总的表格数量是不确定的,所以vba_main必须要放一个循环语句,-1是因为最后1个表格是输出的汇总表: For i = 1 To Worksheets.Count - 1
本小程序只适用于,解析TXT文件中保存的发票扫码结果数据! 活不多说!...更多精彩内容请关注公众号:" ''状态栏 End Sub (左右滑动查看完整代码) ''发票数据解析 Sub FP_DATA(Control As IRibbonControl...) On Error GoTo er Erase C ''清空数组 FP_CL Control ''清空数据 Dim path As String...Input As #1 ''读取TXT文本 str = Split(StrConv(InputB(LOF(1), 1), vbUnicode), vbLf) ''取TXT文本每行数据...NumberFormatLocal = "0.00_);[红色](0.00)" ''设置G到H列为数字格式病保留两位小数点 End With End Sub (左右滑动查看完整代码) 第一篇文章的vba
VBA里数值类型Integer、Long那些,内存布局比较简单,无非是1个、2个、4个连续的字节。...深入了解数据类型有什么用? 比如你想用C语言写dll给VBA调用,C语言可是没有String类型的,C的函数该如何去用?这就涉及到了数据类型的内存结构,深入了解才能够使用好。...3、与其他语言的dll交互 经常接触到的是windows的API调用,在VBA里先声明1个String,并且赋值一个足够的长度,调用之后再根据返回长度来取出需要的字符串。...,是不是程序退出的时候VBA的垃圾回收能释放那个内存?...难道是程序结束后,VBA的垃圾回收机制回收这块内存的时候出了问题? 于是尝试在VBA内部用byte数组构建后赋值到VarPtr,结果一样。
受限在网页上右击查看网页源代码,按Ctrl+F搜索form表单,找到post的网址(或者自身就是post的网址),然后找到账号和密码的name,用来做VBA里Send的Data,这样登录完就可以直接post...数据获取网址获取网页数据了,这里举例代码最后是返回文本,可以用left和right配合instr、invinstr、len等反复截取文本,或者直接用正则表达式。...application/x-www-form-urlencoded" Data = "username=账号&password=密码" http.send (Data) http.Open "post", "数据获取网址
领取专属 10元无门槛券
手把手带您无忧上云