【问题标题】:how to specify the first cell with data in it inside an if statement in Excel如何在Excel中的if语句中指定第一个包含数据的单元格
【发布时间】:2013-01-14 01:25:11
【问题描述】:

我在 2 周内保持 Excel 中孩子的平均成绩。我现在拥有代码的方式

AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-29,):OFFSET('1'!E4,COUNTA('1'!D:D),)) 

如果我没有 2 周的数据,它会返回错误。我通过这样做找到了解决方法

=IFERROR(AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-29,):OFFSET('1'!E4,COUNTA('1'!D:D),)),IFERROR(AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-28,):OFFSET('1'!E4,COUNTA('1'!D:D),)),IFERROR(AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-27,....

我相信有更好的方法可以做到这一点,任何帮助将不胜感激。

【问题讨论】:

  • 能否请您简要描述一下您的餐桌设置以及如何确定两周时间?
  • @user1975188 屏幕也会晃动)

标签: excel excel-2010 worksheet-function


【解决方案1】:

正如 cmets 中所指出的 - 如果没有更多的知识,很难给出明确的答案 - 例如,很难说出数字数据从哪里开始(E4 或 E5)?

首先,您可以简化您的原始公式,该公式显示为平均最后 30 行数据(不确定 30 行如何等同于 2 周的数据) - 您可以这样做:

=AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-29,0,30))

现在我假设错误发生在 COUNTA('1'!D:D) 为

=IF(COUNTA('1'!D:D)<29,AVERAGE('1'!E4:E33),AVERAGE(OFFSET('1'!E4,COUNTA('1'!D:D)-29,0,30)))

该公式可能需要一些小的调整以适应您的布局细节,但一般方法是有效的

【讨论】:

    猜你喜欢
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多