2

我有一张每天的产品销售电子表格。有数以千计的产品在不同的日子更新。每个产品都在一个单独的列中(由产品 ID 指定)。每一行都是不同的一天。

我正在寻找一个公式,该公式将汇总每个产品自更新之日起的销售额。

因此,公式有 2 个移动部分,通过产品 ID 确定要对哪一列求和,然后从更新日期开始求和。我已经能够使用隔离日期行

*=MATCH(F159,Sheet!A:A,0)* 

和列参考使用

*=SUBSTITUTE(ADDRESS(1,K159,4,1,),"1","")* 

但我无法将这些合并到一个公式中,然后求和。

任何帮助将不胜感激,谢谢!

4

3 回答 3

0

使用公式可能最容易SUMIF,因此假设您在 H 列中有特定产品,那么您可以使用此公式计算该产品在特定日期和之后的销售额

=SUMIF(A:A,">="&Y2,H:H)

您的参考日期在 Y2

现在您希望产品也是动态的,因此对于 Z2 中的特定产品,您可以像这样扩展 SUMIF 以动态获取总和列

=SUMIF(A:A,">="&Y2,INDEX(B:X,0,MATCH(Z2,B$1:X$1,0)))

这样将找到正确的列进行求和,假设 B 到 X 列中的产品数据(根据需要扩展),产品名称在第 1 行

于 2013-10-03T17:38:37.070 回答
0

您是否尝试过 Excel 中的数据透视表?

于 2013-10-03T17:41:37.750 回答
0

对变量格式做一些假设,试试这个:

Sub Macro1()
    row = MATCH(F159,Sheet!A:A,0)
    col = SUBSTITUTE(ADDRESS(1,K159,4,1,),"1","")
    lastrow = Range(col).End(xlDown).Row

    Set rng = Range(col & Row & ":" & col & lastrow)

    Range("B1").Value = Excel.WorksheetFunction.Sum(rng)
End Sub
于 2013-10-03T17:40:00.960 回答