主题:【第十三届原创】【偷懒技巧】巧妙利用EXCEl函数功能,实现气质记录的自动生成

浏览 |回复6 电梯直达
myoldid
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
维权声明:本文为v2963297原创作品,本作者与仪器信息网是该作品合法使用者,该作品暂不对外授权转载。其他任何网站、组织、单位或个人等将该作品在本站以外的任何媒体任何形式出现均属侵权违法行为,我们将追究法律责任。
前言 单位最近承检了一批农药,需要通过GCMS和液相光谱的方法来确定农药里是否有未标明农药。总计有1500个样品,也就是要出3000份原始记录。我们的记录是电子版,但要一个一个的手动敲入样品名称,编号这些,效率就太低了。所以就构想了一个自动填写编号,名称外观的模板,测试后效果棒棒的。以下是示例,各位需要的朋友可以借鉴一下

1. 我的构思是通过原始记录文件名来截取样品编号,根据编号再拉取样品名称和外观。原始记录文件名如下原创2020-色谱-001_GCMS.xlsx,其中的“原创2020-色谱-001”既是样品编号,如图1;



图1. 文件名

2. 样品编号,样品名称,样品外观是导出的excel,A列是样品编号,B列是名称,C列是外观,如图2,这个表复制到记录的表单Sheet2中;



图2 样品信息

3. 回到记录的首页Sheet1,要通过文件名来获取编号,那要现在单元格里获取到样品名,用CELL("filename")函数,本文中的文件名为C:\Users\WHS\Desktop\原创大赛\自动生成报告\[原创2020-色谱-001_GCMS.xlsx]Sheet1这里的文件名是包含了路径和表单的,真正的文件名是[原创2020-色谱-001_GCMS.xlsx]如图3

图3

4. 这里有[]框起来。有特殊的标记就好办了,用midfind函数即可解决MID(CELL("filename"),FIND("[",CELL("filename"))+1,13)mid函数意思是从字符串的第几位开始截取字符,一共取n位,CELL("filename")既是字符串FIND("[",CELL("filename"))+1意思是从字符串中查找[出现的位置并从该位置的后一位开始取,13既是字符串长度,也正是样品编号的长度,如图4;

图4 截取样品编号

5. 有了编号就好办了,样品外观就可以从表单2中的C列对应的样品编号行号获取。获取行号可以用MATCH(B6,Sheet2!A:A,0))意思是从表单2中的A列返回B6(样品编号)所在的行号,如图5

图5 获取行号

6. 有了行号再用INDIRECT("Sheet2!C"& MATCH(B6,Sheet2!A:A,0)),组合起来既是Sheet!C2,既是表单2的C2,也就是原创2020-色谱-001”对应的样品外观了,如图6;

图6



7. 同理,用INDIRECT("Sheet2!B"&MATCH(B6,Sheet2!A:A,0))即可获取样品外观,图7

7

8. 这样一来只需要修改excel的文件名,即可自动填写样品编号,名称和外观了。报告样品信息自动生成后,再对检出情况做确认即可完成一份报告啦,算下来这效率比手动修改提高了3倍。

最后附上一个xlsx文档供大家研究一下

为您推荐
推荐帖
Last edit by v2963297 举报
竖琴老人
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
symmacros
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
myoldid
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 竖琴老人(Ins_2c568028) 发表:
好文章。能有Excel附件更好。
谢谢,已经上传了excel文档,可以研究一下
myoldid
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 symmacros(jimzhu) 发表:
Excel应用的好例子,回头学习一下试试。
谢谢朱老师
zyl3367898
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
myoldid
结帖率:
100%
关注:0 |粉丝:0
新手级: 新兵
原文由 zyl3367898(zyl3367898) 发表:
非常实用,准备下载你这个附件试试
谢谢,这种方式就是要注意模板其他地方信息是否一致,比如检测日期,温湿度