Excel:其他字段中使用的动态范围日期:Sumproduct
Posted
技术标签:
【中文标题】Excel:其他字段中使用的动态范围日期:Sumproduct【英文标题】:Excel: Dynamic Range Date used in other fields: Sumproduct 【发布时间】:2021-12-24 17:59:51 【问题描述】:我正在使用 sumproduct 公式来获得前四个月、第二个四个月、第三个四个月的净销售额,直到今天前一个月。这是我使用的公式:
=IFERROR(SUMPRODUCT($B3:$Y3*(COLUMN($B3:$Y3)>=AGGREGATE(15,6,COLUMN($B3:$Y3)/($B3:$Y3<>0),1)+4*(COLUMNS(B3)-1))*(COLUMN($B3:$Y3)<AGGREGATE(15,6,COLUMN($B3:$Y3)/($B3:$Y3<>0),1)+4*(COLUMNS(B3)))*($B$1:$Y$1<EOMONTH(TODAY(),-1)+1)),0)
但是,在我的示例中,我需要捕获与净销售额相同的范围,例如 COGS 等其他指标。我不能将上面的公式用于 COGS 等其他指标,因为有时它们在与净销售额相同的范围内为零。但我也需要在这里捕获零。
Example 1
Example 2
净销售额
Jan | Feb | Mar | Apr | May | June | July | Aug | Sept | Oct | Nov | Dec |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 2 | 3 | 4 | 5 | 2 | 3 | 2 | 3 | 2 | 4 |
---> 1st period= 14 2nd period= 10
销货成本(与净销售额的日期范围相同)
Jan | Feb | Mar | Apr | May | June | July | Aug | Sept | Oct | Nov | Dec |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 2 | 1 | 4 | 2 | 3 | 2 | 4 |
---> 第一个周期= 2 第二个周期= 11
【问题讨论】:
【参考方案1】:您可以从第一个公式中保留整个范围检查逻辑,只更改值范围,即我的示例中的第一个公式:
=IFERROR(SUMPRODUCT($A3:$L3*(COLUMN($A3:$L3)>=AGGREGATE(15,6,COLUMN($A3:$L3)/($A3:$L3<>0),1)+4*(COLUMN(A3)-1))*(COLUMN($A3:$L3)<AGGREGATE(15,6,COLUMN($A3:$L3)/($A3:$L3<>0),1)+4*(COLUMN(A3)))*($A$2:$L$2<EOMONTH(TODAY(),-1)+1)),0)
COGS 的第二个公式:
=IFERROR(SUMPRODUCT($O3:$Z3*(COLUMN($A3:$L3)>=AGGREGATE(15,6,COLUMN($A3:$L3)/($A3:$L3<>0),1)+4*(COLUMN(A3)-1))*(COLUMN($A3:$L3)<AGGREGATE(15,6,COLUMN($A3:$L3)/($A3:$L3<>0),1)+4*(COLUMN(A3)))*($A$2:$L$2<EOMONTH(TODAY(),-1)+1)),0)
【讨论】:
非常感谢。这是我一直在寻找的解决方案。以上是关于Excel:其他字段中使用的动态范围日期:Sumproduct的主要内容,如果未能解决你的问题,请参考以下文章
EXCEL问题:如何实现根据输入数值动态显示想要显示的数据范围的大小?
从 Access 导出到 Excel 时出现日期超出范围错误
如何使用 jQuery Datepicker 动态应用 setDate 和(minDate 和 maxDate)日期范围?