- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Filter Column A based on another Filter on Column B
Hi All,
I would like to filter Quote ID based on the item column.
I would like to have all the lines from a quote which has AAA or DDD in the quote.
How could I achive this in Power Query?
Thanks,
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla - here you are. The primary difference between this solution and the one posted by @bhanu_gautam is looking to match cells containing AAA and DDD instead of an exact match. There must be some white space characters in the cells with the Item values.
Please try this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXJ0dFRQitWBcJycnOBsZ2dnONvFxQXMNkJSY4SkxhhiEJwNEzdBtsAESbMpzNBYAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Quote ID" = _t, Item = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Quote ID", Int64.Type}, {"Item", type text}}),
QuoteIdsByItem = Table.SelectRows (
#"Changed Type", (x) => List.AnyTrue(List.Transform({"AAA","DDD"}, each Text.Contains((x[Item]), _, Comparer.OrdinalIgnoreCase ))) ),
Custom2 = Table.SelectRows ( #"Changed Type", each List.Contains ( QuoteIdsByItem[Quote ID], [Quote ID] ) )
in
Custom2
If this post helps to answer your questions, please consider marking it as a solution so others can find it more quickly when faced with a similar challenge.
Proud to be a Microsoft Fabric Super User
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla want to get every record (row) of such [Quote ID] value, that contains [Item] value either "AAA" or "DDD".
Solution workflow: load data, clean Item text values (trim, clean), group by [Quote ID], filter to [Quote ID] which passes test (presence of "AAA" or "DDD" value), expand groups to a flat table.
Solution code:
let
/*https://community.fabric.microsoft.com/t5/Power-Query/Filter-Column-A-based-on-another-Filter-on-Column-B/td-p/4054856*/
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXJ0dFRQitWBcJycnOBsZ2dnONvFxQXMNkJSY4SkxhhiEJwNEzdBtsAESbMpzNBYAA==", BinaryEncoding.Base64), Compression.Deflate)), type table [#"Quote ID" = Int64.Type, Item = Text.Type]),
ChangedType = Table.TransformColumnTypes(Source,{{"Quote ID", Int64.Type}}),
CleanTextValues = Table.TransformColumns( ChangedType, {"Item", each Text.Clean(Text.Trim(_)), type text}),
GroupedRows = Table.Group(CleanTextValues, {"Quote ID"}, {{"AllRows", each _, type table [Quote ID=nullable number, Item=text]}}),
FilterGroups = Table.SelectRows(GroupedRows, each List.ContainsAny([AllRows][Item], {"AAA", "DDD"})),
ExpandGroupToTable = Table.ExpandTableColumn(FilterGroups, "AllRows", {"Item"}, {"Item"})
in
ExpandGroupToTable
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla want to get every record (row) of such [Quote ID] value, that contains [Item] value either "AAA" or "DDD".
Solution workflow: load data, clean Item text values (trim, clean), group by [Quote ID], filter to [Quote ID] which passes test (presence of "AAA" or "DDD" value), expand groups to a flat table.
Solution code:
let
/*https://community.fabric.microsoft.com/t5/Power-Query/Filter-Column-A-based-on-another-Filter-on-Column-B/td-p/4054856*/
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXJ0dFRQitWBcJycnOBsZ2dnONvFxQXMNkJSY4SkxhhiEJwNEzdBtsAESbMpzNBYAA==", BinaryEncoding.Base64), Compression.Deflate)), type table [#"Quote ID" = Int64.Type, Item = Text.Type]),
ChangedType = Table.TransformColumnTypes(Source,{{"Quote ID", Int64.Type}}),
CleanTextValues = Table.TransformColumns( ChangedType, {"Item", each Text.Clean(Text.Trim(_)), type text}),
GroupedRows = Table.Group(CleanTextValues, {"Quote ID"}, {{"AllRows", each _, type table [Quote ID=nullable number, Item=text]}}),
FilterGroups = Table.SelectRows(GroupedRows, each List.ContainsAny([AllRows][Item], {"AAA", "DDD"})),
ExpandGroupToTable = Table.ExpandTableColumn(FilterGroups, "AllRows", {"Item"}, {"Item"})
in
ExpandGroupToTable
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla - here you are. The primary difference between this solution and the one posted by @bhanu_gautam is looking to match cells containing AAA and DDD instead of an exact match. There must be some white space characters in the cells with the Item values.
Please try this:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSUXJ0dFRQitWBcJycnOBsZ2dnONvFxQXMNkJSY4SkxhhiEJwNEzdBtsAESbMpzNBYAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [#"Quote ID" = _t, Item = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Quote ID", Int64.Type}, {"Item", type text}}),
QuoteIdsByItem = Table.SelectRows (
#"Changed Type", (x) => List.AnyTrue(List.Transform({"AAA","DDD"}, each Text.Contains((x[Item]), _, Comparer.OrdinalIgnoreCase ))) ),
Custom2 = Table.SelectRows ( #"Changed Type", each List.Contains ( QuoteIdsByItem[Quote ID], [Quote ID] ) )
in
Custom2
If this post helps to answer your questions, please consider marking it as a solution so others can find it more quickly when faced with a similar challenge.
Proud to be a Microsoft Fabric Super User
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla , either you can use m code for this or you can simply filter item rows which are equal to AAA or DDD
Proud to be a Super User! |
|
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi @bhanu_gautam ,
It doens't seem working. could you please seperate the steps, as I am quite a newbie to power query.
Thanks,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

@shayla , Can you share your sample data
Proud to be a Super User! |
|

Helpful resources
Join us at the Microsoft Fabric Community Conference
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code FABINSIDER for a $400 discount!
Power BI Monthly Update - February 2025
Check out the February 2025 Power BI update to learn about new features.

Subject | Author | Posted | |
---|---|---|---|
05-22-2024 11:36 AM | |||
07-25-2024 06:03 AM | |||
02-16-2024 08:56 AM | |||
03-14-2024 12:55 PM | |||
05-22-2023 08:33 AM |
User | Count |
---|---|
31 | |
31 | |
20 | |
15 | |
12 |
User | Count |
---|---|
21 | |
20 | |
16 | |
10 | |
9 |