数据处理工作中,有时候经常会遇到EXCEL数据的合并、截取和匹配工作,在这里进行一下简要的介绍。

接下来的例子和景观格局计算有关,景观格局批量计算的结果需要和ArcGIS数据进行挂接,需要进行一些调整。景观格局批量计算请参阅:fragstats景观格局指数批量计算

01

单元格合并

两个单元格合并为一个单元格,在EXCEL中只需使用“&”符号。如下图所示,在EXCEL中输入“=”,然后选取要合并的两个单元格,中间用“&”连接即可。




java JSONArray剔除最后几条 jsonarray截取前几个_数据


02

单元格字符串提取

EXCEL中的字符串拆分比较麻烦,需要使用公式。如下所示,我要将计算结果中LID单元格中的PAC值(行政区划代码 )取出,这个时候我就要对A列进行字符串的截取。


java JSONArray剔除最后几条 jsonarray截取前几个_jsonarray截取前几个_02


首先我们切到公式选项卡,对B2单元格插入函数,选择MID函数


java JSONArray剔除最后几条 jsonarray截取前几个_jsonarray截取前几个_03


具体参数如下:


java JSONArray剔除最后几条 jsonarray截取前几个_字符串_04


Text选择要截取数据的单元格

Start_num从这里要应用一下FIND函数,"PAC"——要从这里开始截取;A2——所在单元格;1——我也不太清楚咋回事,但是必须得填;+3——跳过“PAC”三个字符

Num_chars字符长度,在这里行政区划代码是6位,所以选择6

最后输入的公式如下所示,即可得出计算结果。


java JSONArray剔除最后几条 jsonarray截取前几个_oracle按特定字符截取字符串_05


03

单元格匹配VLOOKUP

表格如下,有行政区划代码PAC,我想直接看出县名,sheet1中有县名NAME和行政区划 代码PAC的对应关系,那么,我如何把县名自动填充过来呢?


java JSONArray剔除最后几条 jsonarray截取前几个_数据_06


java JSONArray剔除最后几条 jsonarray截取前几个_oracle按特定字符截取字符串_07


这个时候就需要VLOOKUP函数了,公式如下:

=VLOOKUP(E2,Sheet1!A2:B67,2,FALSE)


java JSONArray剔除最后几条 jsonarray截取前几个_jsp截取字符串前几位_08


java JSONArray剔除最后几条 jsonarray截取前几个_jsonarray截取前几个_09


Lookup_value,在这里是行政区划代码,要根据这个来选择县名

Table_array,选择sheet1中的县名和行政区划代码对应区域

Col_index_num,sheet1中县名在第2列,我们要填充的就是这个第二列的值,所以在这里选2

Range_lookup在这里是FALSE,完全匹配选择

公式输入好了,下拉自动填充,可以看到,前几个没问题,后面为啥就不行了呢?


java JSONArray剔除最后几条 jsonarray截取前几个_字符串_10


原因就是,公式下拉填充的过程中,Table_array范围也会跟随发生变化,这样就超过了sheet1中数据所在的范围,导致填充出错,这个时候就需要让这个变量为常数。


java JSONArray剔除最后几条 jsonarray截取前几个_字符串_11


这个时候,我们需要在指定单元格位置时加入“$”符号,公式如下:=VLOOKUP(E2,Sheet1!A$2:B$67,2,FALSE),如此即可完成填充。


java JSONArray剔除最后几条 jsonarray截取前几个_jsp截取字符串前几位_12