AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1887138
Accepted
Mauro
Mauro
Asked: 2025-03-19 02:01:12 +0800 CST2025-03-19 02:01:12 +0800 CST 2025-03-19 02:01:12 +0800 CST

如何在 Excel 2019 中使用空白单元格计算最后 N 行的平均值

  • 772

我正在尝试计算 Excel 中最后 N 行的平均值,但我有一些空白(和合并)单元格;如下所示:

例子

一个
1
2
十
3
4
5
6
7
是
8
9
10

例如,要计算最后四行的平均值,应该计算 A8 到 A12 的平均值而忽略 A9,因为 A9 不是一个数字。

此外,还会添加新行,因此平均值需要动态,始终取最后 N 个编译的带有数字的行。

我发现了一些关于这个主题的类似文章,但它们都假设连续数据,而没有解决数据中某些空白/文本单元格的情况;这个答案似乎解决了这个问题,但我无法让这些公式为我工作(我不确定如何在接受的答案中使用它,因为它使用了多列,而我只有一列)。

这和这似乎也相关,但是在我的案例中我还是无法让它们发挥作用。

有办法吗?

microsoft-excel
  • 4 4 个回答
  • 68 Views

4 个回答

  • Voted
  1. Best Answer
    Mayukh Bhattacharya
    2025-03-19T02:19:24+08:002025-03-19T02:19:24+08:00

    您可以在Excel 2019中尝试以下方法:

    =AVERAGE(
             INDEX(A:A,
             AGGREGATE(14,7,ROW(A:A)/((ISNUMBER(A:A))*(A:A<>"")),4)):
             INDEX(A:A,
             MATCH(2,1/((ISNUMBER(A:A))*(A:A<>""))))
     )
    

    解释:

    • 以下查找最后一个数值的单元格位置

    =MATCH(2,1/((ISNUMBER(A:A))*(A:A<>"")))
    

    • 现在,包装内INDEX()会给我们指定行号的单元格值。
    • 以下返回具有值的第四大行号

    =AGGREGATE(14,7,ROW(A:A)/((ISNUMBER(A:A))*(A:A<>"")),4)
    

    • 类似地,包装内INDEX()将产生该特定行的单元格值。
    • 使用完整查找,然后使用冒号,然后进行另一次完整查找会给 Excel 所需的提示,即它必须返回一个引用。
    • 因此,它会对所定位的两个单元格的范围进行划分,并将其传递给AVERAGE()函数,包围其他所有内容,以返回所需的输出。
    • 另请注意,根据个人的 Excel 版本,可能需要在退出编辑模式时按CTRL+ SHIFT+ 。ENTER

    也许使用MS365:

    =AVERAGE(TAKE(FILTER(A:A,(ISNUMBER(A:A)*(A:A<>"")),""),-4))
    

    • 3
  2. Ron Rosenfeld
    2025-03-19T04:55:48+08:002025-03-19T04:55:48+08:00
    =AVERAGE(
        INDEX(
            $A:$A,
            LARGE(
                ISNUMBER($A$1:INDEX($A:$A, LOOKUP(2, 1 / $A:$A, ROW($A:$A)))) *
                    ROW($A$1:INDEX($A:$A, LOOKUP(2, 1 / $A:$A, ROW($A:$A)))),
                {1; 2; 3; 4}
            )
        )
    )
    
    • LOOKUP(2,1/A:A,ROW(A:A))返回包含数字的最后一个单元格的行号(此函数将忽略错误)。
    • 然后我们用它INDEX创建一个值数组
    • 测试它们看看哪些是数字
    • 仅返回数字值的行号
    • 与数组参数一起使用LARGE以返回最高四行数字{1;2;3;4}
    • 在外部函数中使用这些行号INDEX来返回这些行中包含的值
    • AVERAGE这四个数字。

    当然,365你也可以使用更短的:

    =AVERAGE(TAKE(FILTER(A:A,ISNUMBER(A:A)),-4))
    
    • 1
  3. Máté Juhász
    2025-03-20T18:21:34+08:002025-03-20T18:21:34+08:00

    您可以在 Excel 365 中使用此公式来实现您的目标:
    =AVERAGE(TAKE(FILTER(A1:A12,ISNUMBER(A1:A12)),-4))

    • FILTER(A1:A12,ISNUMBER(A1:A12))- 删除非数字值
    • TAKE(FILTER(...),-4))- 保留最后四位数字
    • =AVERAGE(...)- 计算平均值

    在此处输入图片描述

    • 1
  4. P.b
    2025-03-23T02:39:30+08:002025-03-23T02:39:30+08:00

    另一种选择: =AVERAGE(INDEX(A:A,MATCH(2,1/A:A)-{3,2,1,0}))

    或者在 M365 中: =AVERAGE(TAKE(A:.A,-4))

    (平均值忽略非数值)

    • 0

相关问题

  • 带有“和”运算符的 Excel 数据透视表

  • 如何对整列使用 Excel 的 LENGTH 函数?

  • Excel 数组(2 个变量)

  • 如何从 WSL 打开 office 文件

  • VBA根据文件名重命名工作表

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve