首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

3秒完成一天工作,先进先出算成本的Excel公式不收藏太可惜了!

在进销存管理中,最难、最复杂的一个工作就是根据销售数量,用先进先出法计算销售成本。这不,兰色在设计《Excel进销存系统》时就遇到了这个棘手的难题:

如下图所示在销售表中根据出库数量计算成本金额。

先跟兰色一起了解先进先出的计算原理。

先进先出:就是先入库的产品先出库,计算成本价时优先。

【例】如下图所示,A产品先后入库3个批次,每次的价格都不同。

情形一,A产品第一次销售20个,因为A的第1批进了50个,所以可以全部按该批次的价格算成本,成本应为:

=20*2=40

情形二,A产品第一次销售51个,那么第一批进的不够用,所以要从第二批拿出一个算成本。成本总额为:

50*2+1*5=104

情形三:A产品第一次销售70个,前两批都不够用,所以得从第三批中拿出10个算成本。

=50*2+10*4+10*9=230

情形4:A产品后续又销售了5个,因为前面已把前2批货卖完了,所以直接从第3批(价格为9)中拿货并计算成本。

=5*9=45

以后再销售以此类推。

如果你没从事过会计,估计看的有点晕了。这个公式不但要考虑入库表的所有批次价格,而且还要考虑销售表已卖的数量。所以你可以想象用Excel公式来设置有多么的难。如果都用手工,一个几百行的小表也会花费你一天的时间。

为了解决这个,用VBA编写了一个自定义函数。完美解决了先进先出算成本的难题。

=成本(H2,H$1:H2,I$1:I2,J$1:J1,B$2:B$18,C$2:C$18,D$2:D$18)

语法:

成本(商品名称,商品区域,销量区域,已计算成本区域,入库表商品名称,入库表数量区域,入库表单价区域)

参数说明:

商品名称:引用单元格中的商品名称

商品区域:销售表中截止本行之前的商品列2行区域,锁定开始行,如H$1:H2

销量区域:销售表中截止本行之前的销量2行区域

已计算成本区域:输入公式位置的上一个单元格,要用区域的形式录入,如:J$1:J1,

入库表商品名称:入库表中商品名称或商品编号区域(商品的唯一标识)

入库表入库数量区域:入库表中商品入库数量所在列区域

入库表单价区域:入库表中商品单价所在列区域(商品的唯一标识)

如果你也想在自已的excel中使用这个函数,就跟兰色一起操作吧。

第1步 复制下面代码

第2步 打开你的Excel表格,然后通过开发工具-Visual basic打开编辑器,再插入  -模块,然后把代码粘到右侧的窗口里。最后把文件另存为:启用宏的excel工作簿类型。

以后,在这个excel文件里就可以直接使用“成本”函数了。

兰色说:解决先进先出公式是兰色很多年的愿望,但一直手懒没去编写。这次要做进销存管理系统绕不过去了,嘿嘿,只能耐下心搞定它了。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230328A019OM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券