ARCGIS:结合excel的VLOOKUP函数+挂接excel表到ARCGIS!

本人还是GIS菜鸟,在此记录自己的学习历程,以实际应用成功、解决实际问题为目标,如有错误,欢迎指正!
————————————————————————————————

1:为什么要用到vlookup?

大家都知道,在ARCGIS中进行分析的时候,如计算一个区内包含了森林公园的县。通过intersect工具,得到了其中只包含森林工园的县。这时候如果你需要做一张整表(即包含了每个县的表)。

因此,就需要将两张表进行挂接,且必须有一个字段是相同的才可以挂接哦。

这个挂接操作在ARCGIS中当然也可以做到。
但是个人认为excel上更方便,并且学习excel的适用性更广泛(据我观察专业人员也更喜欢excel)~


2:使用步骤

步骤
1:从ARCGIS上把属性表导入至EXCEL
2:确认两个表的相同字段
3:进行VLOOLUP操作(必要时结合iferror函数)
4:将得到的整表挂到ARCGIS的属性表中

3:VLOOKUP实际操作

  1. 确定相同字段

确定相同的字段。两张表中必须有一部分相同的东西才可以合并哦,如下面两个表相同字段就是“县名”
整表
需挂接的表

2.VLOOKUP函数的使用

其中,第一行是待检索的单元格,应该是下图的A县开始往下检索,因此选A2单元格。
第二行是表二,由于我给表命名的是“森林公园面积”,选中该表的A至B两行。(多选几行也可以)
第三行是指你想要返回的值在第二行的表中是第几列,因为我们要森林公园面积,因此返回表2的第二列。
第四行是大致匹配和精确匹配,通常填0即可。在这里插入图片描述

  1. 得到结果后往下拖即可让整列都得到值。
    是不是觉得#N/A特别丑,接下来使用IFERROR函数叭!
    在这里插入图片描述
  2. IFERROR函数
    IFERROR函数的使用语句是,IFERROR(a,b),如果a错误则返回b。
    因此在这里我们可以用
    =IFERROR(VLOOKUP(A2,森林公园面积!A:B,2,0),0)
    让它返回正确值。在这里插入图片描述

4:EXCEL与ARGIS属性表互相转换(很简单,所以只说一下步骤)

导出

  1. 在ARCGIS中打开属性表,在菜单栏第一个“表选项”里点导出。
  2. 选择导出的位置,这时候注意选择格式为“文本文件”。(dbf也可以,我个人更习惯用文本文件罢了)
  3. 导出后打开一个空的excel,菜单栏选 数据-自文本-导出的文本-下一步-勾选“逗号分隔”-下一步-完成。即可导入完成。

导入

  1. 右击图层,选择连接和关联-连接。
  2. 中间一行选择要导入的表和sheet。最上面填原本属性表里的相同字段(县名),最下面填excel表中的相同字段。(县名)
  3. 导入后打开属性表,发现excel的数据已经出现在了属性表。
  4. 不要以为这就完了,重新右击图层,选择数据-导出数据,重新存一下,属性表才是一直在的哦。(不然连接-关联-移除连接之后就没啦~)