过滤掉符合多个条件的行 Power Query
Filter out rows on multiple criteria Power Query
我正在使用 Office 365 和 Power query
我有一个包含 1 列的 table,我想过滤掉多行
我可以过滤单个项目
#"Filtered Rows" = Table.SelectRows(#"Added Index", each [Column1] <> "Id")
如何过滤多个项目,其中一些可能会丢失,具体取决于我的项目
我试图将多个代码片段拼凑在一起
#"Filtered Rows" = Table.SelectRows(#"Added Index", each [Column1] <> {"Id","Type","Label","first Name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"", MissingField.Ignore),
如果这不可能,是否有 different/better 方法来做到这一点?
编辑:
let
sourceLink = Excel.CurrentWorkbook(){[Name="sourceLink"]}[Content]{0}[Column1],
Source = Json.Document(Web.Contents(sourceLink)),
Expanded=Table.FromRecords (Source[elements] ),
#"Demoted Headers" = Table.DemoteHeaders(Expanded),
#"Kept First Rows" = Table.FirstN(#"Demoted Headers",1),
#"Transposed Table" = Table.Transpose(#"Kept First Rows"),
exclude_list={"Id","Type","Label","First name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"},
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},exclude_list ,Comparer.OrdinalIgnoreCase ))
in
#"Filtered Rows"
注意 M 区分大小写,因此“first Name”与“First Name”不同
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},
{"Id","Type","Label","first Name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"}
))
如果你想忽略大小写,你可以在下面使用,它也展示了你如何打破排除列表
// get the exclude list from another table
exclude_list=Table2[Column1],
或
// specify the exclude list
exclude_list={"Id","Type","Label","first name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"},
然后
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},exclude_list ,Comparer.OrdinalIgnoreCase ))
我正在使用 Office 365 和 Power query
我有一个包含 1 列的 table,我想过滤掉多行
我可以过滤单个项目
#"Filtered Rows" = Table.SelectRows(#"Added Index", each [Column1] <> "Id")
如何过滤多个项目,其中一些可能会丢失,具体取决于我的项目
我试图将多个代码片段拼凑在一起
#"Filtered Rows" = Table.SelectRows(#"Added Index", each [Column1] <> {"Id","Type","Label","first Name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"", MissingField.Ignore),
如果这不可能,是否有 different/better 方法来做到这一点?
编辑:
let
sourceLink = Excel.CurrentWorkbook(){[Name="sourceLink"]}[Content]{0}[Column1],
Source = Json.Document(Web.Contents(sourceLink)),
Expanded=Table.FromRecords (Source[elements] ),
#"Demoted Headers" = Table.DemoteHeaders(Expanded),
#"Kept First Rows" = Table.FirstN(#"Demoted Headers",1),
#"Transposed Table" = Table.Transpose(#"Kept First Rows"),
exclude_list={"Id","Type","Label","First name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"},
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},exclude_list ,Comparer.OrdinalIgnoreCase ))
in
#"Filtered Rows"
注意 M 区分大小写,因此“first Name”与“First Name”不同
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},
{"Id","Type","Label","first Name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"}
))
如果你想忽略大小写,你可以在下面使用,它也展示了你如何打破排除列表
// get the exclude list from another table
exclude_list=Table2[Column1],
或
// specify the exclude list
exclude_list={"Id","Type","Label","first name","Last Name","Description","Segment","Image","Project Name","Email","Email 2","Email 3","sumApp Link", "Initial Date", "Last Date", "Master ID"},
然后
#"Filtered Rows" = Table.SelectRows(#"Added Index", each not List.ContainsAny({[Column1]},exclude_list ,Comparer.OrdinalIgnoreCase ))