Excel 2013 AVERAGEIFS使用COLUMN()参考

毛里齐奥

我正在尝试在工作表中使用AVERAGEIF公式来基于当前月份计算移动平均值。我有此数据:

         A            B      C      D      E      F         G      H       I      J      K      L      M     N
      1 2017         Jan    Feb    Mar    Apr    May       Jun    Jul     Aug    Sep    Oct    Nov    Dec   Ave
      2 Cost/Req.    $430  $432     $365   $391  $1250        $-     $-      $-      $-      $-      $-      $-    ??

我想将今天(5月)的1月至4月的平均N2和1月至5月的6月的N2平均。我尝试使用COLUMN()函数,但无法正常工作。

AVERAGEIF(B2:M2,"COLUMN()<MONTH(NOW()")

任何的想法?

谢谢!

追逐

让我们分别解决这个问题的几个角度:

tl; dr

=AVERAGE(INDIRECT("A2:"&ADDRESS(2,MONTH(NOW())-1)))

为什么您的公式不起作用?

AVERAGEIF函数接受标准参数,但是它们似乎无法执行任何非常复杂的操作。我还没有找到关于它们的语法的真正解释,但是在线文档中的示例没有做比深刻的事情">32",并且您正在尝试使用整个公式。我没有看到任何证据表明该方法即使在理论上也行得通。(我很乐意在此方面显示错误!)AVERAGEIF(或AVERAGEIFS)不是您想要的功能。

平均范围

平均范围的值很容易。您显然已经知道该怎么做,甚至可以问自己一个问题!假设值在A2:L2中(月标题位于顶部):

=AVERAGE(A2:L2)

但是,等等,您只想平均最多(不包括当月)。因此,我们需要一种计算进入基本平均公式的范围的方法。五月,那是A2:D2我们如何计算呢?

计算范围的公式

好的,所以新的问题是如何AVERAGE从当前月份获取一个范围(该函数的参考)。这些Lookup & Reference功能将在这里为您提供帮助。可能有一种更简单的方法来执行此操作,但是我能想到的最好的方法是,INDIRECT如果我们给它适当的文本,则返回一个参考值/范围,这是一个更简单的问题。现在,我们所需要的只是想出文本“ A2:D2”(5月份)。A2很简单:应该是一个常数。可能有一种方法可以将4(对于您想要的最后一个月的4月)转换为D(您想要的列),但是您也可以使用该ADDRESS函数来计算D2行/列号。请注意,它认为是正常的“后退”。因此,将A2输入为ADDRESS(2,1)在您的情况下,您知道第2行,并且可以使用MONTH您想要的函数,然后减去1返回上个月。这样我们就可以得到的“ D2” ADDRESS(2,MONTH(NOW())-1)然后,只需要将它们放在一起即可。A2和D2的组合是使用&号完成的。

="A2:"&(ADDRESS(2,MONTH(NOW())-1))

全部放在一起

现在,我们有了要平均的区域的文本表示形式。INDIRECT函数会将其转换为该AVERAGE函数可以使用的实际范围然后,最终函数将所有结果求平均:

=AVERAGE(INDIRECT("A2:"&ADDRESS(2,MONTH(NOW())-1)))

一些注意事项

如果您的正确范围确实是U192:AF192,则将公式中的2替换为192,并在row参数中添加20(因为U在A的右边是20行)。

我还将附上屏幕截图,介绍各个中间步骤的计算方式。最终公式是第8行的公式。我还进行了下一步,仅对第12行中的相同想法进行平均,而不是对过去几个月进行平均。

请注意,整个方法将使您的平均值取决于打开电子表格的时间。如果您明年2月将其开放,则平均期限将只有两个月,而不是整个2017年。一月将完全窒息。您可能想提出一个更聪明的公式来处理month参数。

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Excel 2013隐藏行

来自分类Dev

使用Excel 2013的PowerPoint 2013中的VBA Pulse动画

来自分类Dev

需要使用Excel 2013 VBA脚本

来自分类Dev

使用IF(Isnumber(Search)公式-Excel 2013

来自分类Dev

Excel 2013-需要输入参考数字值的年龄

来自分类Dev

条件格式Excel 2013

来自分类Dev

Excel 2013,SUMIFS公式

来自分类Dev

通配符 excel 2013

来自分类Dev

在Excel 2013中使用VBA读取隐藏列的问题

来自分类Dev

在Excel 2013上使用VBA填充组合框(窗体控件)

来自分类Dev

使用sumproduct的Excel 2013高级日期范围查找

来自分类Dev

使用Open Xml为Excel 2013创建xlsx文件

来自分类Dev

如何在Excel 2013(家庭和企业)中使用PowerPivot

来自分类Dev

使用Excel 2013的HTML和自定义格式的货币

来自分类Dev

Excel:改为使用LOOKUP或SUMPRODUCT的AverageIFS

来自分类Dev

VBA-条件格式:Excel 2010无法使用,Excel 2013将可以使用

来自分类Dev

使用Excel 2013 Online中的新列从Excel工作表导入数据

来自分类Dev

使用Excel 2013 Online中的新列从Excel工作表导入数据

来自分类Dev

Microsoft Excel 2013 ScreenUpdating失败

来自分类Dev

Excel 2013中的条件格式

来自分类Dev

Excel 2013表格格式

来自分类Dev

Excel 2013,制作滴定曲线

来自分类Dev

Excel 2013多重验证规则

来自分类Dev

Excel 2013 VBA SelectionChange事件

来自分类Dev

Office 2013的Excel加载项

来自分类Dev

Excel 2013,结合CountIF + VLookup

来自分类Dev

在Excel 2013中嵌套vlookup

来自分类Dev

Excel 2013减少串联的小数

来自分类Dev

Excel 2013需要完整的小数