如何对excel中的列进行排序并计算组数据的总和

时间:2015-07-10 03:01:48

标签: excel vba excel-vba

我有一个包含25列的excel文件;通过Y。

第一行包含列的标题。

我希望能够排序,首先是X列,然后是Y,然后是L,然后是H,然后是 最后一列。列X,Y和L包含数字,而H和I包含字母。

排序后,我想计算T列和U列中的值之和(也是 包含数字),在列X中具有相同的值并将值放入 在最后一次进入后加粗。

像这样:

之前:

column T    column U    column X    
48300       48300       3318135
614004      623034      3319012
7163380     7284690     3319012
2046680     2076780     3319012
6140040     6230340     3319014
41342936    42043068    3319014

后:

column T    column U    column X    
48300       48300       3318135
48300       48300

614004      623034      3319012
7163380     7284690     3319012
2046680     2076780     3319012
9824064     9984504

6140040     6230340     3319014
41342936    42043068    3319014
47482976    48273408

这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:0)

如果你知道如何手动完成并且将来需要重复排序,你可以尝试使用宏录制器来记录手动操作。 在将来需要时调用宏。

Macro Recorder

答案 1 :(得分:0)

我使用的是Mac,因此如果您使用的是PC,说明可能略有不同,但原则相同。

要对工作表中的数据进行排序:

  1. 选择所需的数据范围(包括标题行)
  2. 转到数据>排序...
  3. 出现一个窗口,允许您选择要排序的整个列范围(确保勾选"我的列表有标题"框)。要添加要排序的新列(级别),请单击底部的+按钮。选择ColumnX作为第一级将确保ColumnX中具有相同值的所有行将聚集在一起。
  4. 要根据另一列中的值计算总和,我会在行标签中使用带有ColumnX的数据透视表,并在值框中使用ColumnT的总和和列的总和。但是,如果要设置正如你上面所展示的那样,你可能需要进行一些手动编辑,可能是这样的:

    1. 在每个组之后(基于对X的排序,即第一个排序级别),插入两行。
    2. 在第一个插入的行中使用= sum()函数来计算该组中单元格的总和。您不需要为所有25列编写= sum()函数。将其写入第一个,然后抓住单元格的右下角并拖动该行,为每个单元格添加相同的公式(根据位置的变化进行调整)。
    3. 它不是很优雅,但如果它只是一个电子表格,那么作为一次性选项可能是可行的。