EXCEL公式返回一个不同的date范围(在行中)和一个不同的产品(在列中)

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

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

所以公式中有2个运动部件,用产品ID标识要求和的列,然后从更新的date开始求和。 我已经能够隔离date行使用

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

和Column引用使用

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

但是我还没有能够把这些纳入一个公式,然后将总和。

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

使用SUMIF公式可能最容易,所以假设你在H列中有一个特定的产品,那么你可以使用这个公式来计算该产品在特定date和之后的销售额

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

你的参考date在Y2

现在,您希望产品也是dynamic的,所以在Z2中的特定产品,您可以像这样扩展SUMIF以dynamic地获得总和列

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

以便find正确的列进行求和,假设产品数据列B到X(根据需要展开)与产品名称在第1行

对你的variables格式做一些假设,试试这个:

 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 

你有没有在Excel中试用数据透视表?