文章目录
使用场景
-
我现在有2个表,需要做数据对比
-
一个表是从平台上导出的数据,我且称这个表为B表,这个表数据很详细,什么都有

-
一个表是我新建的表,我且称这个表为A表,后续公式也在这个表里面执行,这个表是个新表,我只根据资产表(第三个表了)里面把所有资产的ip拿过来。

-
-
A表是一个平台导入模版表,而且A表中的ip是资产表中信息全量的IP,而且顺序也是和资产表对应起来的,这样方便我后续和资产表做对比啥的,B表是从平台导出的,顺序不对,而且不全,会少一些数据,我现在就是需要确定哪些是少的数据,然后补充完整,重新导入到平台上。
-
所以我现在就需要通过ip匹配,然后将平台上已有的数据慢慢拿过来
公式
-
a表名称是:资产导入模板-服务器-毕节98台20260609,b表名称是:资产server20260609123422
- 我在a表中b5列执行。用a表中的c5列,匹配b表中的au2列。然后取b表中的a2,放到a表中的b5
- 公式为
=XLOOKUP(C5,[资产server20260609123422.xlsx]sheet1!AU:AU,[资产server20260609123422.xlsx]sheet1!A:A,"",0)

-
详细解释【【可以复制上面现成的公司,然后放到wps中,点击下图中的值选择列头也可以的】
=XLOOKUP(查找值, 查找数组, 返回数组, [未找到值], [匹配模式], [搜索模式])
=XLOOKUP(C5,[资产server20260609123422.xlsx]sheet1!AU:AU,[资产server20260609123422.xlsx]sheet1!A:A,"",0)
参数部分 内容 含义 第 1 参数(查找值) C5 你要用来匹配的 "关键字",就是当前表(资产导入模板)的 C5 单元格的值(比如 IP 地址、设备编号)。 第 2 参数(查找数组) 资产server20260609123422.xlsxsheet1!AU:AU 在哪个地方找这个关键字:文件是 资产server20260609123422.xlsx,工作表是 sheet1,查找的列是 AU列。 第 3 参数(返回数组) 资产server20260609123422.xlsxsheet1!A:A 找到匹配的行后,要从这一行的哪一列取数据:这里取的是 A列 的值。 第 4 参数(未找到值) " " 如果找不到匹配的结果,单元格就显示空白,而不是错误值。 第 5 参数(匹配模式) 0 表示精确匹配,只有完全一样的内容才会被识别。 表的格式可能乱,给你放个图

-
想取其他列,该改哪里?
bash公式是固定的,匹配值不变,只需要改取的参数列就行了,然后要放到哪里,就在哪里执行公式 =XLOOKUP(C5,[资产server20260609123422.xlsx]sheet1!AU:AU,[资产server20260609123422.xlsx]sheet1!【这里改列标】,"",0) 示例 2:取 Z 列数据 =XLOOKUP(C5,[资产server20260609123422.xlsx]sheet1!AU:AU,[资产server20260609123422.xlsx]sheet1!Z:Z,"",0) 只把 A:A 改成了 Z:Z。 示例 3:取第 100 列(CV 列)数据 =XLOOKUP(C5,[资产server20260609123422.xlsx]sheet1!AU:AU,[资产server20260609123422.xlsx]sheet1!CV:CV,"",0) 只把 A:A 改成了 CV:CV。 -
如我这继续取厂商的信息,只需要改这一处就行了【有个惊天bug,需要注意,看最后的注意事项】

注意事项
- 取的值一定要放在对比源值的前面,不然取不到相关值。具体看下图

- 取的值一定要放在对比源值的前面,不然取不到相关值。具体看下图
-
换一个表继续取值

-
取到值以后,ctrl+c,然后ctrl+alt+v粘贴值就行了。

这样值就不是公式了,必须要转换的

-
上面方式重复,直到取完你要的所有值
