Forum Discussion
LucTP
2 years agoHelper I
Filldown Query when input incorrect Value
How to FIlldown query input incorrect value to correct with same value Thank you!
- 2 years ago
- change address to your source excel file in Source step.
- if you want to add more CharsToRemove you can do it here
- if you want to add more StringsToReplace add them here
There are still some differences like theese but it is hard to catch everything
ā
let Source = Excel.Workbook(File.Contents("Address\Data.xlsx"), null, true), Sheet1_Sheet = Source{[Item="Sheet1",Kind="Sheet"]}[Data], PromotedHeaders = Table.PromoteHeaders(Sheet1_Sheet, [PromoteAllScalars=true]), CharsToRemove = ",.""-<>()[]{}", CharsToReplace = List.Buffer({{"&", "AND"}, {"LIMITED", "LTD"}, {"LIMITTED", "LTD"}}), StepBack = PromotedHeaders, Ad_CompanyCleaned = Table.AddColumn(StepBack, "Company Cleaned", each [ removeChars = List.Select(Text.SplitAny([Company], CharsToRemove & " "), (x)=> not List.Contains(Text.ToList(CharsToRemove) & {"", " "}, x)), replaceChars = List.ReplaceMatchingItems(removeChars, CharsToReplace), trimEndS = List.Transform(replaceChars, (x)=> Text.TrimEnd(x, {"S", "s"})), combine = Text.Combine(trimEndS, " ") ][combine], type text), GroupedRowsCheck = Table.Group(Ad_CompanyCleaned, {"Company Cleaned"}, {{"1", each 1}}), RemovedColumns1 = Table.RemoveColumns(GroupedRowsCheck,{"1"}), MergedQueries = Table.FuzzyNestedJoin(RemovedColumns1, {"Company Cleaned"}, Ad_CompanyCleaned, {"Company Cleaned"}, "GroupedRowsCheck", JoinKind.LeftOuter, [IgnoreCase=true, IgnoreSpace=true, Threshold=0.8]), Ad_CompanyCommonName = Table.AddColumn(MergedQueries, "Company Common Name", each [GroupedRowsCheck]{0}[Company Cleaned], type text), RemovedColumns2 = Table.RemoveColumns(Ad_CompanyCommonName,{"GroupedRowsCheck"}), MergedQueries2 = Table.NestedJoin(Ad_CompanyCleaned, {"Company Cleaned"}, RemovedColumns2, {"Company Cleaned"}, "RemovedColumns1", JoinKind.LeftOuter), ExpandedRemovedColumns1 = Table.ExpandTableColumn(MergedQueries2, "RemovedColumns1", {"Company Common Name"}, {"Company Common Name"}), RemovedColumns3 = Table.RemoveColumns(ExpandedRemovedColumns1,{"Company Cleaned"}) in RemovedColumns3
dufoq3
2 years agoCommunity Champion
You have to identify incorrect rows (add seperate column) and then replace incorrect rows with null. Then you can apply fill down. If you don't know how to do it. Provide sample data (as table so we can copy/paste) and also expected resu.t
- LucTP2 years agoHelper I
Thanhs for reply
This is sample data: https://docs.google.com/spreadsheets/d/1Ehs0zmWVGZ4YyTAAAVWsgvhAIZLBIgZZ/edit?usp=sharing&ouid=106724302240185267318&rtpof=true&sd=true- dufoq32 years agoCommunity Champion
What about expected result based on sample data? How do I know which value is incorrect?