根据不同的产品名和条数进行箱数的排列附原理及实现
程序员文章站
2022-06-26 10:59:34
在表格中输入数据,如下图所示:
现要根据不同的品名和条数进行箱数的排列,效果图如下图所示:
如何进行快速的排列呢?
1、在C2单元格中输入文本数据:1...
在表格中输入数据,如下图所示:
现要根据不同的品名和条数进行箱数的排列,效果图如下图所示:
如何进行快速的排列呢?
1、在C2单元格中输入文本数据:1-6。
注意:如果直接在单元格里面输入:1-6,则excel会默认为日期格式,显示为:1月6日,所以在输入数据之前可先将单元格的格式设置为文本或在数据之前加一个英文的单引号(’)。
2、在C3单元格中输入公式:
=MID(C2,FIND("-",C2)+1,5)+1&"-"&SUM($B$2:B3)。往下填充即可。
3、原理分析:第一个产品的条数一共是6个,那么第一个产品的箱数排列为1-6个箱位,第二个产品的条数一共是8个,那么第二个产品的箱数排列为7-14位,以此类推,即下一个产品的排箱位置是上一个产品的位置加1(即7=6+1),总的位置是条数的累加(即14=6+8)。
4、公式解析:首先利用FIND函数确认横杠的位置:FIND("-",C2),然后再利用MID函数在C2单元格中进行提取:MID(C2,FIND("-",C2)+1,5),需要在横杠的后一位开始提取,所以要加1(FIND("-",C2)+1)。随着数据的往下增加,数量会越多,可以根据实际情况进行调整,这里假设最多为5位数,所以提取5个数符。得出的结果再加个1,作为箱数的起始位置。然后再去连接上所有的箱数之和:SUM($B$2:B3),注意将B2单元格进行绝对引用,B3单元格进行相对引用,即对箱数进行累加求和。可按F9进行检查,可以即时看到公式的结果,帮助分析。