这是我的桌子的样子:
请注意,我无法在此处更改任何数据的位置。当我在右边添加新列,在底部添加新行时,该表将不断扩展。
我在A列中需要一个公式,该公式将计算与公式所在位置相同的行中所有数据的平均值,并且每当我在最后一列的右侧添加新列时,该公式就必须自动更新。例如,单元格A64中的公式将C64与E64平均。在F64中添加新数据时,我希望A64自动更新以在计算中包括该新单元格。
我尝试了
=AVERAGE(INDIRECT("C64:"&ADDRESS(ROW(),COLUMN()+4)))
但是当我在F64中添加新数据时它并没有自动更新。我不是excel专家,我主要通过谷歌搜索学习,但是这使我永远受益。请帮忙。
答案 0 :(得分:1)
在这里,OFFSET和COUNTA是您的朋友,在A2中并填写:
<?php
include ("../../config/config.php");
include ("../classes/user.php");
include ("../classes/post.php");
$limit = 10; //numbr of posts to be loaded in one call;
$posts = new Post($con, $_REQUEST['userloggedin']);
$posts->loadPostsFriends($_REQUEST, $limit);
?>
我已将AGGREGATE函数与平均值的参数1和参数6一起使用,以忽略范围内的错误值。 COUNTA调整数组的大小,从C2到填充区域的末尾(允许出现错误值)。
您也可以将INDEX与COUNTA一起使用
=AGGREGATE(1,6,OFFSET(C2,,,1,COUNTA(C2:XFD2)))
或使用MATCH进行索引。在下面的示例中,我将列的端点减少为AA,而不是XFD(这是2016年的最后一列)。如果您知道实际可以填充的列数,则可以将其用作端点参考,以减少动态公式正在执行的工作量。
=AGGREGATE(1,6,$C$2:INDEX(C2:XFD2,COUNTA(C2:XFD2)))