本帖最后由 ym 于 2017-5-17 15:55 编辑
首先将两级规则的 xml数据文件分别导入excel中,如图1和图2所示。注意:下面的例子是将两级规则的采集结果整合到一个excel表中,但此方法也适用于其他Excel表的合并处理。
图1 列表
图2 详细
第二步:寻找关联字段
找到可以把两个数据表关联在一起的唯一性字段。本案例是用了网址,比如图1‘列表’的字段<第二级网址>和图2‘详细’的字段<realpath>是一 一对应的网址,都是表示第二级页面的网址,并且该字段信息具有唯一性,即两者是一 一对应的关系,所以我们可以根据这两个字段来合并两个Excel表。
Tips:关于VLOOKUP函数 我们在这里使用Excel的VLOOKUP函数,它是按列查找,在查找区域的第一列搜索要查找的值,找到该值所在的行之后,然后以查找区域的第一列为基准,往后推数,查找第N列所对应的值并返回。语法为:
=VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
参数
| 简单说明 | 输入数据类型 | lookup_value
| 要查找的值
| 数值、引用单元格或文本字符串
| table_array
| 要查找的区域
| 数据表区域
| col_index_num
| 返回值在查找区域的第几列数
| 正整数
| range_lookup
| 模糊匹配/精确匹配
| TRUE/FALSE |
注意:lookup_value查找值必须是在table_array查找区域的第一列。另外,range_lookup通常是选择精确匹配FALSE,查找完全一样的值。
第三步:写函数 如图1和图2所示,我们要将‘详细’表中的<店名>和<所在地区>这两列合并到‘列表’表中,则要在‘列表’表的D2单元格输入函数 =VLOOKUP(C2,详细!A:C,2,FALSE),表示要在‘详细’表中的A:C区域内的第1列(A列)查找出与‘列表’表的C2单元格相对应的那一行,然后把第2列(B列)的数据值返回给‘列表’表的D2单元格。
点击‘列表’表的D2单元格右下角的+号,往下拖动就会填充一整列,如图3所示,‘详细’表中的<店名>都对应匹配到“列表”表的<名称>里。 同样在‘列表’表的E2单元格里输入函数 =VLOOKUP(C2,详细!A:C,3,FALSE) 来匹配‘详细’表中的<所在地区>一列,表示要在‘详细’表中的A:C区域内的第1列(A列)查找出与‘列表’表的C2单元格相对应的那一行,然后把第3列(C列)的数据值返回给‘列表’表的E2单元格。并点击E2右下角+号自动填充一整列。 最后人工补充好D列和E列的字段名,就可以看到完整的合并结果,如图4所示。
图4
注意:三级甚至更多级采集结果也可用同样方法合并。
|
共 22 个关于本帖的回复 最后回复于 2020-4-7 15:38