根据销售量从 ROW 中选择正确的 PRODUCT COST

问题描述

我正在制作一张表格,以计算我在网上商店进行的每次销售的实际收入。

问题是我的产品的成本并不总是恒定的。它因许多因素而异,因此每次购买时,我都会添加新产品成本(最新成本)。

每次我进行新购买时,我都会添加数量和新的成本。 (购买 1、购买 2、购买 3 等)。

我的工作表屏幕截图,其中包含第 41 行的示例

Screenshoot of my sheet with example on ROW 41

在 B 列中,我想知道根据每种产品的总销售额计算的当前成本是多少。

例如:

如果我的销量低于 100(采购 1 数量),那么我需要公式来选择 E41 的价值(采购 1 成本)。

如果我已售出超过 100 件且少于 300 件(这是购买 1 和购买 2 的总和),我需要使用公式来选择 G41 的值(购买 2 成本)等等...

到目前为止我想出的公式是这样的:

=INDEX(41:41,IF(C41<=D41,COLUMN(E41),IF(C41<=D41+F41,COLUMN(E41)+2,IF(C41<=D41+F41+H41,COLUMN(E41)+4,COLUMN(E41)+6))))

此公式有效,但仅适用于前 3 次购买。

我需要一个没有限制的公式,但我不知道如何制作 VARIABLE 公式。

解决方法

当我说我不会浪费一分钟尝试用您当前的图纸设计来解决您的问题时,请从字面上理解我的话。您将需要 VBA,然后从每次购买中提取数量和价格,而无法过滤列。 (分钟到了。)

您需要的是采购数据库:商品 ID、日期、数量、价格,也许还有参考编号。从中您可以通过使用 SUMIF 等功能过滤项目和成本来提取任何项目的交易。然而,这只是让真正的问题触手可及,并没有解决它。

问题是当你买 100 件 @42 时,你的价格是 42。然后你再买 100 件 @46,你的平均价格是 44。但是如果你以 42 的成本卖出 50 件,那么平均成本是剩余的 150 是 45。因此,如果不知道销售数量和应用于该销售的平均成本,就无法确定任何剩余部分的平均成本。要解决该问题,您仍然需要 VBA,但建议的购买记录 db 格式至少会支持这样的解决方案。

不久前我编写了一个解决方案,其中数据库中有额外的列,每次销售记录在 3 列中(很像您当前的购买记录):日期、数量、参考。通过这种方式,我可以追踪每笔购买的销售情况(这是为了股票交易)。在较早的数量售罄之前,不会开始销售较新的数量。

也许您不需要追踪购买的数量去了哪里,只需要一列将余额倒计时为零。那会简单得多,但有一个缺点,即您无法回滚错误。最后回滚是我放弃设计的原因。能够放弃它的关键是一个类似的销售数据库:日期、数量、价格、Ref#。

通过这样的设置,您可以设计一个系统来提取购买方的平均价格或 FiFo 价格,并将其与销售相关联。如果条件是它应该使用工作表函数完成,您可以在购买数据库中添加一个“当前成本”列,随着每次购买而改变,您可以使用 VLOOKUP 或 SUMPRODUCT 从销售方按日期查找,并设置了一个成本价格适用于从购买之日到下一天。如果这对您有吸引力,则必须找到一种方法来处理同时有购买销售的日子。