我正在尝试根据某个条件基于父范围/表(同样,无论哪个)创建一个范围/表(无论哪个) - 例如,如果表 A 有 3 列,以名称、日期和是/否作为内容,我希望表 B 包含在是/否列中包含“是”的所有行。
表A
姓名 | 日期 | 是/否 |
---|---|---|
N1 | D1 | 是的 |
N2 | D2 | 没有 |
N3 | D3 | 是的 |
表B
姓名 | 日期 |
---|---|
N1 | D1 |
N3 | D3 |
重要的是,如果 N2 行中为“否”,我需要表 B 为:
表B
姓名 | 日期 |
---|---|
N1 | D1 |
N3 | D3 |
N2 | D2 |
到目前为止,我已经尝试使用 FILTER 函数,但是它会在现有行之间插入新条目,使表 B 在“否”更改为“是”后如下所示:
表B
姓名 | 日期 |
---|---|
N1 | D1 |
N2 | D2 |
N3 | D3 |
我也研究了 Vstack 函数,但它似乎有相同的问题,即插入新条目而不是追加。我也研究过 VBA,但不幸的是我必须使用 Excel Online,所以我无法使用 VBA。
您可以使用Power Query:
let
TableB = Excel.CurrentWorkbook(){[Name="TableB"]}[Content],
TableA = Excel.CurrentWorkbook(){[Name="TableA"]}[Content],
NewRows = Table.SelectRows(TableA, each not List.Contains(TableB[Name], [Name])),
Table = Table.Combine({TableB, NewRows})
in
Table