公式帮助提取符合多个条件的行

时间:2015-06-26 22:59:48

标签: excel vba excel-vba indexing criteria

我有一个超过60万行的电子表格。我需要根据多个标准提取数据,并只获取每个标准的最新更改编号。

因此,项目编号可能有多个基于季度开始日期和desc代码的条目,因为它在该季度已被多次修改但我只想要最新的一个(最高更改编号)并返回该行或在新列中标记,然后过滤掉。

希望这是有道理的。

我有以下专栏。列A(描述代码)中有12个不同的代码,然后是B列(项目编号数千),C列(期间开始,可以追溯到1998年的季度开始),然后是H列(变更编号)。我需要基本上拉动每个"包含最高更改编号的行,对于每个期间的每个项目编号,每个代码都可用。

所以基本上变化数量取决于项目编号在该季度中的变化数量。

每次更改时,每个描述代码的每个项目编号都有一个更改编号(每个12行)。
感谢。

1 个答案:

答案 0 :(得分:0)

你在第4段附近丢了我,但让我们简化一下。如果您只有两列 - 项目编号和更改编号 - 并且您有每个更改的记录,您可以使用Excel的subtotal功能:在项目编号的每次更改时,显示MAX变更号码。

根据您的情况使用相同的逻辑。创建一个新的列,结合您的"类别"条件(item& desc,或item& period,或其他),按它排序,然后对该新列进行小计并返回Change Number的MAX。

编辑:

Item Period Change
100    1      1
100    1      2
100    1      3
100    2      1
100    2      2

我不确定这是您的数据的外观,但让我们以它为例(现在让我们忘掉Desc代码)。如果要按项目和期间查找最新更改,请通过组合ItemPeriod列来创建新列。例如,插入一列(C)并使用公式:=A2&"_"&B2。现在您的数据如下所示:

Item Period I&P   Change
100    1    100_1    1
100    1    100_1    2
100    1    100_1    3
100    2    100_2    1
100    2    100_2    2

现在使用Excel的subtotal功能(在Data菜单/功能区中,而不是工作表公式)。以下是一个示例:

enter image description here

在您的方案中,对于"在" 框中的每次更改时,选择新列(C),因为它唯一标识您要识别的类别(项目AND期)。 "使用功能" =最大。 "将小计添加到" =您的更改号码列。

单击[确定],Excel将添加一个新行,其中包含每行的最大更改编号。