整理期初数据用到的EXCEL里面的函数操作

项目上线切换阶段,上线策略之后确定后各模块需要做的工作,最重要的是期初数据的整理,会涉及待多个表的数据匹配关联等,包括物料与数量、物料与价格、物料与单位等

本人在PP模块期初切换系统时用到的EXCEL里面的函数如下:

  • 旧系统的在制工单数据在导入前需要检验新系统中的物料是否存在marc表中,以及检查生产物料的BOM、工艺路线、生产版本是否存在,就会用到:

    =IF(ISERROR(MATCH(A2,B:B,0)),A2,"")

    MATCH(A2, B:B, 0):在B列中查找A2单元格的值,如果找到,返回其在B列中的位置;如果未找到,返回错误。
    ISERROR(...):检查MATCH函数是否返回错误,如果返回错误(即A2中的物料不在B列中),则ISERROR返回TRUE。
    IF(..., A2, ""):如果ISERROR返回TRUE(即物料不在B列中),则将A2的值放入C列;否则,放入空字符串(即C列不显示任何内容)。

上面的方法会把不存在的值显示出来,也可以仅仅判断存不存在,可以用:

复制代码
=COUNTIF(A:A, B1)

如果结果大于0,表示B列的编码在A列中存在;如果结果为0,则表示不存在。

或者返回"存在"或"不存在",直观显示匹配结果:

复制代码
=IF(ISNA(VLOOKUP(B1, A:A, 1, FALSE)), "不存在", "存在")
  • 有新旧单位不匹配的情况,需要批量替换或者直接拿底表中的单位匹配,就会用到:

    =IFERROR(VLOOKUP(C2, A:B, 2, FALSE), "")

    VLOOKUP(C2, A:B, 2, FALSE):在 A 列中查找 C2 的值,如果找到,返回同一行 B 列的值。
    IFERROR(..., ""):如果找不到(即 C2 不在 A 列中),返回空字符串,而不是错误值。

同样匹配数量也可以用VLOOKUP;还可以用使用 INDEX + MATCH 函数:

复制代码
=IFERROR(INDEX(B:B, MATCH(C2, A:A, 0)), "")

MATCH(C2, A:A, 0):返回 C2 在 A 列中第一次出现的位置(行号)。
INDEX(B:B, ...):根据行号返回 B 列中对应的值。
IFERROR(..., ""):处理找不到的情况,返回空字符串。

更灵活实现"列A物料匹配列B物料后,将列C的单位对应到列A物料"的需求:

复制代码
=XLOOKUP(I2,M:M,O:O,"未找到")

注意:如果 A 列中有多个相同的物料,VLOOKUP 和 MATCH 都只会返回第一个匹配到的数量。

补充:

在数据表格式不确定的时候,直接的列总和和分类汇总数据会不准确(测试时候发现格式会影响计算结果),这时候就需要用到数据透视表,这个数据就是不会考虑到格式的差异,得到的结果是准确的。

此外,期初数据导入的准确性非常非常重要,一定要细心!!!!

相关推荐
ZX0X学习中19 小时前
一句话让 AI 生成 Excel 多文件合并工具:码道 CLI 实战
人工智能·excel·ai编程·华为云码道
Metaphor6922 天前
使用 Python 冻结 Excel 文件中的行、列和单元格
开发语言·python·excel
花 满 楼2 天前
EB引脚配置自动化方案|告别手动繁琐配PIN,Excel+Python批量生成ARXML实现一键配置
python·excel·eb
用户298698530142 天前
Python 实现 Excel 新旧格式互转:告别 Office 依赖的自动化方案
后端·python·excel
未来之窗软件服务3 天前
Excel物业台帐租金合同资产—万象EXCEL应用(28) —东方仙盟
excel·仙盟创梦ide·东方仙盟·万象excel
AI刀刀3 天前
豆包智能体 7 月 15 日全面下线:技术解读、数据迁移与自动化备份方案
运维·人工智能·自动化·word·excel·ai导出鸭
xurime3 天前
Excelize 开源十周年,发布 2.11.0 版本
golang·开源·github·excel·导出·导入·excelize·基础库
littleBoy7774 天前
Excel 文件合并工具
excel
wtsolutions4 天前
Excel-to-JSON本地化Excel插件发布 - 在Excel中安全离线转换数据
安全·json·excel
用户298698530144 天前
Python 实现 Excel 与 TXT 文本的高效转换与导出
后端·python·excel