【发布时间】:2012-10-13 17:09:26
【问题描述】:
好的,场景如下:我目前正在处理三列。 A 列是我的唯一 ID,B 列是我的年份,C 列是我的价值。我正在使用 excel,并且有大约 350,000 行可以使用,所以问题/目标:
我正在尝试找到正确的代码,可以筛选这些年,并按十年为我提供 VALUE 列 C 的 AVERAGE、MAX 和 MIN 值。
同样,我有数十万行代码要处理,我想按从 1940 年代到 2010 年代的十年排序;每十年它会给我平均、最大值和最小值。
我只是一个业余程序员,所以我知道如何通过在漫长而乏味的时间段内创建多种排序来逐个十年地过滤它。但是,我想知道是否有人知道可以一举完成所有工作的代码,从而节省了程序必须多次筛选我的 350,000 行代码的过程。
我将非常感谢谁能教我这一点,祝你好运,谢谢!
编辑::(如何显示平均值、最大值和最小值))::
“啊,我很抱歉没有澄清这一点。我只是假设我会在它们“神奇地”出现后处理它,哈哈。无论如何,我将在一个简单的表格中显示我整理的十年信息在一个新的工作表中,其中 AVERAGE、MAX、MIN 将是三行标题,而十年将是表的列标题。"
【问题讨论】:
-
结果应该在哪里?新的工作表?同一张工作表?您打算如何展示几十年?
-
不用VBA也能做到这一点?你想要一个只有公式的解决方案吗?如果是这样,请告诉我您运行的是哪个版本的 XL。
-
最好使用带有“按年分组”运算符和平均值、最大值、最小值的 SQL 语句来执行此操作。您可以将 Excel 工作表导入 Access 表并执行此操作。如果您熟悉 Access 和 SQL,我看到了另一个类似的问题,可能会给您一些想法:stackoverflow.com/questions/9226201/…
-
我正在使用 XL2010。是的,我想你可以在没有 VBA 的情况下做到这一点,但我没有提到的背景是我实际上是如何使用一堆图表制作程序以及总共大约十几个其他信息列以及其他一些信息床单。但是,所有这些都需要在与此一样大的其他文件中多次完成,所以我正在制作一个宏来完成我需要的所有内容,这样我就可以在睡觉前运行它。我上面问的只是我试图完成的难题的另一部分。公式也会很好,我相信我可以适应 VBA :)
标签: vba sorting excel filter filtering