存货先进先出法核算EXCEL公式

舟飞浪扬 2023-11-23 20:40:57

元浩开的小卖部经过我的帮助,他现在只需登记物资进出台账,库存自动生成。上次他还提出了一个新需求,怎么知道结存商品的库存金额呢?

要知道结存商品的库存金额,需要先知道出库的金额,这是一个比较复杂的问题,如果干过财务,我们知道商品出库计价有三种方法,先进先出法、个别计价法、移动加权平均法,对于小卖部适合采用先进先出法。

我们先了解一下什么是先进先出法,先进先出法(FIFO)是一种指定库存价值的方法,它将库存中最早采购或生产的物品第一个卖出,而将最新采购或生产的物品最后卖出。 由此,借助于先进先出法,公司可以按照该原则准确估算其存货的成本,从而准确地测算利润。

以元浩店里销售的硬中华香烟为例解释一下先进先出法,如下图是他的出、入库情况,

商品名称

日期

入库数量

入库单价

硬中华香烟

2023/11/1

45

40

硬中华香烟

2023/11/1

20

30

硬中华香烟

2023/11/5

20

45

硬中华香烟

2023/11/11

10

48

硬中华香烟

2023/11/11

21

40

硬中华香烟入库表

硬中华香烟

2023/11/5

25

硬中华香烟

2023/11/5

40

硬中华香烟

2023/11/8

10

硬中华香烟

2023/11/10

20

硬中华香烟

2023/11/11

20

硬中华香烟出库表

2023年11月5日出的首笔25包,是最先入库的45包中25包,对应单价40元,出库成本应当为25*40=1000元,2023年11月5日出的第二笔40包,对应的是最先入库的45包中剩下的20包(单价40元)和2023年11月1日入库第二笔20包(单价30元),出库成本应当为20*40+20*30=1400元。后续以此类推,对电脑数据结构而言,从一端进,从另一端出,就好像排队一样。

先进先出法计价一直是现实成本核算中的一个难题,对于小店来说购买一个库存商品核算软件也不划算,那么如何在EXCEL中实现呢?这里主要介绍3种方法,根据数据结构特点的数据重组法、函数公式法和VBA编程法。我们将逐一介绍这三种方法,今天我们先来学习函数公式法。

首先我把硬中华香烟的出入库明细贴出来:

硬中华香烟入库表

硬中华香烟出库表

如果你是付费版本OFFICE 365,可以采用TAKE和DROP等函数,这里就不介绍了,如果我们用的是其他不付费版本,在R2中输入公式:

IF(SUM($L$2:$L$6)SUM($Q$2:$Q$6)>=0,SUMPRODUCT(FREQUENCY(ROW(INDIRECT("1:"&SUM($Q$2:Q2))),SUBTOTAL(9,OFFSET($L$2,,,ROW($1:$3))))*($M$2:$M$5)),0)

这个公式核心是用了FREQUENCY函数,以一列垂直数组返回某个区域中数据的频率分布。FREQUENCY函数有2个参数,我们这里需要构造第1参数应该是出库数量连续区间,第2参数应该是有递增属性的各批次累计入库离散点。

(1)出库数量连续区间构造ROW(INDIRECT("1:"&SUM($Q$2:Q2)),构造了一个从1到当前出库量(步长为1)的数组。

(2)接下来,我们需要完成各批次累计入库离散点构造 SUBTOTAL(9,OFFSET($L$2,,,ROW($1:$3)))通 过offset函数位移构造二维数组,然后通过SUBTOTAL降维求和,得到累计入库离散点数组,

(3)通过FREQUENCY函数将出库数量映射到对应的入库数量。

(4)利用SUMPRODUCT函数,将相应的入库数量和入库单价乘积后求和。

(5)最后在外面再加一个if判断函数,如果累计出库数量大于累计入库数量,则可取上述函数的结果,如果不准确报错或者返回零。

在R2中输入公式后,下拉即可以得出每批次出库的成本金额。累计入库金额减去累计出库成本金额就是结存商品的库存金额,这里不再演示了。

大家对函数有些细节不理解的地方,欢迎留言讨论,下次我们将介绍VBA编程法和数据结构重组法,欢迎关注。

1 阅读:11

舟飞浪扬

简介:Excel领域的耕耘者