可以搜到:产品、技术、资料、新闻、检测、企业、视频

产品分类
当前位置: 首页>技术文档> 线束工艺 >一键汇总裁线表内的所有材料明细的函数操作技巧

一键汇总裁线表内的所有材料明细的函数操作技巧

来源:作者:线束世界-Jimmy2021-04-02 13:50

你是否也在汇总裁线表bom 的时候觉得很繁琐?

你是否也在想,电线、端子防水塞,内联点,热缩管,号码管的所有物料能够智能一键提取?

你是否也想知道如何制作一个一键汇总的裁线表格?


今天就和大家分享一个简单的操作,一键汇总裁线表内的所有材料明细的函数操作技巧!

当我们按照公司的要求进行裁线表的制作后,相当于把电线,端子,防水塞的数量进行了一定的处理,今天这节课就来重点讲讲这个信息的自动汇总。进行数据的进一步处理,今天这节课集中讲的是怎么把多行的数据进行集中的处理,系统性的汇总数据综合。这个操作有点深奥,但是一定要好好学哦~

图片1.png 

函数拿出,先干为敬,只要你能看到和悟透,就不用继续往下面看了~嘿嘿~

图片2.png 

=OFFSET('CXB1'!$A$1,MOD(ROW('CXB1'!A2)-1,

(COUNTA(裁线表!A$1:C$65536)-1)/3),

IF(INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))

INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3)),""))


函数解析:

有人看了上面的这一大段函数后,蒙了,问我,这个可以教教他吗,我说可以,但是你要先慢慢听我说,其实函数本身不难,就是把函数拆开,然后一点点的吃透,就好了。吃透函数的本质,这样就不用被函数所吓破了胆。

最近也在整理这些已经学会的函数,初始也是觉得很难,这个我能看懂吗,后来发现其实没多么难,只不过自己把自己吓到了。一点点的拆开这个函数,函数本身没啥,就是一段段的函数和参数的集合,最后把所有的信息集中起来。最后就组成了这个实用的函数。来,我带你慢慢的解密这个头疼的东西。


首先这串代码拆开,作为几个部分进行理解:

函数A=OFFSET(函数B,函数C,函数D,“”)

函数B=CXB1!$A$1

函数C=MOD(ROW('CXB1'!A2)-1,(COUNTA(裁线表!A$1:C$65536)-1)/3)

函数D=IF(INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))

函数E=INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))


总的概括下此函数的逻辑:

创建一个以A1为起始的一个引用区域,横向执行函数E(每列获取非空单元格数的列值),纵向获取值为函数C(连续获取1-5,1-5的列值),最后呈现出来的结果就是把A列,B列,C列连续的获取在我们所需的A列中。


函数A=OFFSET(函数B,函数C,函数D,“”)

OFFSET函数,简单的来就是创建一个引用区域,然后包含四个参数ABCD,A代表的是这个区域的左上角第一个值,B是向下(正数)或者向上(负数)偏移的行数,C是向右(正数)或者向左(负数)偏移的列数,CD是获取的区域,1,1就是获取一个单元格,不写的时候默认是1,1,获取的是一个单元格内容。


OFFSET函数,作为一个创建区域,然后区域的信息化处理的巧妙之处,在于不同的区间范围内的信息可以进一步的更新和变化,从而达到一种近乎神技的效果。

简单实操一下获取一个名叫香港的美丽地方。

图片3.png 


函数B=CXB1!$A$1

从A1的起始位置进行数据开始,谨记固定参数的$符号,这个是所选区域锁定的符号,这里可以进行初始区域的“定桩”的效果,锁死,那么就是从这里创建区域,进行条件引用。


函数C=MOD(ROW('CXB1'!A2)-1,(COUNTA(裁线表!A$1:C$65536)-1)/3)

函数C=MOD(ROW(XXB1!A2)-1,COUNTA(XXB1!A:A))

这列先说MOD函数是求余数函数,两个参数分别是A和B。

A=ROW(CXB1!A2)-1

A求得的结果是每行的行值-1,获得一个列为123456的行值

B=COUNTA(CXB1!A:A)

B求得结果是获取A列的非空单元格的数量。

用A去取B的余数,获得的数组结果就成了:

1/N=1 2/N=2 3/M=3 直至 N/N=0

N+1/N=1 N+2/N=2 N+3/N=3 直至 N+N/N=0

获得结果是一个1至N然后0至N的循环结果,这就是后面要连续取行值循环做准备。


这个求余函数的巧妙在于,在后面的“跨行”取值的时候进行了一个跨行操作。刚开始取值数据处理的时候,一直在纠结这个函数的运用,怎么能巧妙的处理和优化这个取值范围。就在这个求余的函数出现后,豁然开朗,跨行操作,无非就是不知道什么时候开始跨行。怎么跨行,结束语句就是这个关键,通过信息的处理,来进行数据跨行。

图片4.png 


函数D=IF(INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))

函数D=IF(INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))

这个简单来说就是判断抵达第6列,就结束,没到第6列就继续取值,直至第6列结束。

跨行的操作最开始的取多少行上一条已经解释了,这一条就是简单的阐述,怎么进行数据的分析和处理。我们取行信息在这里开始,取多少行?就是在int函数的运算后进行数据的分析和结束。


函数E=INT((ROW('CXB1'!A2)-0.1)/((COUNTA(裁线表!A$1:C$65536)-1)/3))

INT函数是向下去最近一个整数,2.5INT取值是2,然后通过行值减去0.1除以本行的非控制的个数,获取的值就是一列有1111,2222,3333,4444,的循环数列,然后通过这个信息来向右进行偏移。获得我们需要的值。


INT函数在取值的时候,取值现象就呈现了一个很巧妙的方式,通过信息的处理,我们在取行,换行的时候,通过一个一个的取值,来进行数据的处理。

图片5.png 


结尾

本期函数可能对于某些同学看上去有些难,但是细细的理解每个函数的含义,最后融会贯通就可以看出这串函数的含义。汇总裁线表的内部所有的材料明细,必须要有这样一个统计过程。


我们有时候学习一个很难的东西可能需要半天,一天甚至是一个星期,但是学会了,改变则是成倍的。你不用再去做简单的裁线表bom核对,一键就可以搞定,你说是不是很值得学习呢?你品,你细品~


谢谢大家,我今天要讲的内容就这么多了,有问题可以评论留言,谢谢大家~

0

评论

评论
立即获取技术支持
提供全天候客户服务支持
需要更多技术支持?
致电:17135242547