Excel 如何仅对筛选的单元格求和

Excel 如何仅对筛选的单元格求和

Microsoft Excel中筛选的介绍

在Microsoft Excel中,“筛选”主要用于通过暂时消除相关视图中的不相关条目来显示相关数据的目的。具体数据也是根据个人给定的标准进行筛选的。

此外,筛选数据或单元格的主要目的主要用于聚焦数据集的各个关键领域。

  • 例如:可以根据给定位置轻松筛选特定组织的按部门销售数据。因此,用户可以高效地查看所选部门在给定时间间隔内的销售额。

此外,在使用大型数据库时需要使用筛选器。并且作为广泛使用的工具之一,特定的筛选器将综合视图转换为易于理解的视图。如果我们需要应用筛选器,则数据集必须包含指定每个列名称的标题行。

在本教程中,我们将讨论可用于计算Microsoft Excel中筛选单元格总和的三种重要方法,这些方法如下:

  1. 在Excel中使用SUBTOTAL函数仅对筛选的单元格求和?
  2. 在Microsoft Excel中使用Aggregate函数。
  3. 在Microsoft Excel中使用用户定义的函数。

如何在Microsoft Excel中使用SUBTOTAL FUNCTION?

众所周知,“SUBTOTAL函数”主要用于在给定数据集中计算小计。该函数的某些重要性在于,它将呈现可用于执行总计计算的各种选项,例如:

  • 总和。
  • 平均值。
  • 最大值和最小值。

SUBTOTAL函数提供了2个选项,可用于计算总和;

1.第一个选项将与“SUM函数”类似工作。
2.另一个是所需的仅为可见单元格求和。

语法:在Microsoft Excel中使用SUBTOTAL函数的语法如下:

SUBTOTAL(function_num,ref1,[ref2],)
Bash

其中:

  1. Function_num:Function_num是从1到11或101到111的数字,指定需要用于小计的功能。
  2. Ref1、Ref2:我们想要有效地小计的单元格或区域。第一个参考是必不可少的,不能忽略。

下面的公式用于通过有效使用SUBTOTAL函数对可见单元格求和:

公式:

=SUBTOTAL(109,H6:H17)
Bash

在此中,第一个参数无疑是功能编号。此外,当输入SUBTOTAL函数时,给出了数字及其相关功能。然后,我们将找到两个求和选项;9和109。

函数编号9是SUM函数的选项,而编号109也适用于手动隐藏单元格。然后,我们将从所提供的选项中选择109,因此SUBTOTAL函数基本上总计所选筛选单元格的值:

Excel 如何仅对筛选的单元格求和

接下来,对于第二个参数,我们可以开始引用用于求和目的的单个单元格。我们选择了我们的可见单元格,这将自动变为H6:H17

现在我们将拥有我们的结果:

Excel 如何仅对筛选的单元格求和
所以现在这个函数将对隐藏行有效工作,但它对隐藏列无效。如果在公式中引用的范围中存在任何隐藏行,则它们的相应值将不会包含在“SUBTOTAL函数”的给定结果中。但如果存在任何隐藏的列,则不幸的是,这些特定值可以很容易地进入SUBTOTAL的结果中。

如何在Microsoft Excel中使用AGGREGATE函数?

AGGREGATE函数返回Microsoft Excel中特定数据库中的聚合。那么问题是:它与SUBTOTAL函数有什么不同?

因此,两者之间在返回总和方面的基本区别是,它们的工作方式非常相似,但仅在AGGREGATE函数的情况下,我们可以挑选要包含或要排除的内容。

现在我们将看到AGGREGATE函数的工作方式,即它将返回可见单元格的总和。首先,我们将使用以下公式:

公式:

=AGGREGATE(9,5,H6:H17)
Bash

与SUBTOTAL Function一样,我们首先输入函数编号。在这种情况下,我们将假设数字9表示总和。

Excel 如何仅对筛选的单元格求和

接下来,我们将获取Aggregate忽略的值的选项。在此示例中,我们需要在过滤行中的值,只需将选项5设置为忽略隐藏行即可。

Excel 如何仅对筛选的单元格求和

现在,对于特定数组。我们已输入H6:H17

Excel 如何仅对筛选的单元格求和

AGGREGATE函数已忽略所有隐藏的行,以便对在范围H6:H17 中可见的值求和。

Excel 如何仅对筛选的单元格求和

注意,在该公式中,选项仅提到了隐藏的行而不是列。为什么?原因是AGGREGATE函数主要不适用于隐藏列。

在Microsoft Excel中使用自定义VBA函数

在这种方法中,我们将使用自定义函数以获得可见单元格的总和。不,我们不能只是随心所欲地在Microsoft Excel中创建函数;原因是我们将需要VBA和VBA代码。

可以通过VBA使用代码创建函数,然后可以像所有其他函数一样在特定工作表上使用该函数。

为什么我们要费心创建一个函数?我们需要帮助排除SUBTOTAL和AGGREGATE函数中的隐藏列和隐藏行。但是在此VBA函数中,我们可以让函数排除隐藏的行和列。

以下是我们如何使用VBA(Virtual Basic for Application)中的自定义函数进行可见单元格求和的步骤:

步骤1: 首先,我们将按下Alt + F11键启动VB,或者如果我们添加了开发人员选项卡,可以转到选项卡代码组并单击Visual Basic按钮。

步骤2: 打开VB编辑器后,我们将单击插入选项卡,然后从给定列表中选取模块

Excel 如何仅对筛选的单元格求和

步骤3: 在给定的**Module **窗口中,我们将复制并粘贴代码以添加Function:

Function SumVisible(WorkRng As Range) As Double
Dim rng As Range
Dim total As Double
For Each rng In WorkRng
 If rng.Rows.Hidden = False And rng.Columns.Hidden = False Then
 total = total + rng.Value
 End If
Next
SumVisible = total
End Function
Bash

然后,一个名为“SumVisible”的函数将被创建,它可以用于计算给定数据集中可见的选择单元格的总和,而忽略隐藏的行和列中的值。

Excel 如何仅对筛选的单元格求和

步骤4:之后,我们将关闭VB。

步骤5:现在,在我们要求总和的单元格中,我们将输入下面提到的以下公式:

=SumVisible (H6:H17)
Bash

我们只需要输入创建的函数名和范围。然后,函数将对范围中的所有值进行求和,并返回总和:

Excel 如何仅对筛选的单元格求和

注:应该注意到,隐藏行和列中给定的值将被排除在计算之外。请注意,一旦输入了特定的公式,如果我们需要隐藏一行,则结果将调整以有效排除隐藏的值。但是,如果我们隐藏了一列,我们需要重新计算公式。

我们可以通过选择具有给定公式的单元格,并进入单元格编辑模式,按Enter键来重新计算。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册