首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何只对excel中未过滤掉的行求和?

如何只对excel中未过滤掉的行求和?
EN

Stack Overflow用户
提问于 2009-04-17 09:02:29
回答 2查看 110.9K关注 0票数 55

我使用SUM(B1..B20)公式对一列求和,但是当我按相邻列过滤数据时,求和不会更新为只反映那些未被过滤掉的行。如何做到这一点?

EN

回答 2

Stack Overflow用户

发布于 2014-01-23 01:42:33

如果您没有使用自动筛选(即您有手动隐藏的行),则需要使用AGGREGATE函数而不是SUBTOTAL

票数 4
EN

Stack Overflow用户

发布于 2009-04-17 09:32:05

当您使用自动筛选来筛选结果时,Excel甚至不会费心隐藏它们:它只是将行的高度设置为零(至少到2003年,不确定2007年)。

所以下面的自定义函数应该会给你一个启动器来做你想做的事情(用整数测试,没有玩过任何其他东西):

代码语言:javascript
复制
Function SumVis(r As Range)
    Dim cell As Excel.Range
    Dim total As Variant

    For Each cell In r.Cells
        If cell.Height <> 0 Then
            total = total + cell.Value
        End If
    Next

    SumVis = total
End Function

编辑:

您需要在工作簿中创建一个模块来放置函数,然后您可以像调用任何其他函数一样在工作表上调用它(=SumVis(A1:A14))。如果您需要帮助设置模块,请让我知道。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/759656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档