Excel / PowerQuery - 基于另一个表中的可见行过滤表

时间:2018-03-26 18:19:04

标签: excel powerquery

我在Excel工作表中有一个包含所有数据的表(让我们称之为表A)。我想在此表上使用AutoFilter,并仅显示不同工作表上不同表(表B)上可见的内容。表B只有TableA中的几列 - 它没有月份或日期列。

如何设置它以便在我过滤表A时,还会过滤不同表上的表B?

注意:从TableB中删除不可见的行是一个选项,但我不知道如何做到这一点。

1 个答案:

答案 0 :(得分:1)

表B没有太多方法可以知道表A中的行是否可见。一种方法是SUBTOTAL功能" 103"机构。

按照以下步骤使用表B中的= SUBTOTAL(103,...)函数检查表A中是否有相应的行。然后对此结果进行过滤,以便表B中的过滤器与完成的内容相匹配在表A:

1)在TableA和TableB中识别或创建一个标识给定行的唯一列。如果您没有,请创建一个将数据从1到行数的列。我们会说这是A栏。

确保两个表中的数字都标识了相同的数据点......即,如果表格A中的31表示2009年1月,则表格B中的31表示需要为2009年1月。

2)在TableB中添加一个新列,在第2行中使用此公式(因为我在公式中写了" A2")并填写:

=SUBTOTAL(103, INDEX(**SELECT COLUMN A IN TableA**, MATCH(A2, **SELECT COLUMN A IN TableA [again]**,0)))

3)按刚刚创建的列过滤TableB:1 =显示,0 =隐藏。

完成!