Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers!
Enter the sweepstakes now!Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.
Hi I'm trying to transfer the following form from Excel to Power Querry, unfortunately I can't get the same result.
Probably it is a really small error that is responsible for this.
=IF(AND(A2<>0;LEFT(B2="GN "));"";IF(NOT(ISERROR(SEARCH("ST#";B2)));2;IF(NOT(ISERROR(SEARCH("RT#";B2)));1;IF(NOT(ISERROR(SEARCH("PN#";B2)));3;))))
The A column is the article number column and the B column the article description
My function in Power Query looks like this
if
(Text.Contains(Text.Start([articledescription],3), "GN ")) and [articlenumber]<>0
then ""
else if Text.Contains([articledescription], "ST#")
then 2
else if Text.Contains([articledescription], "RT#")
then 1
else if Text.Contains([articledescription], "PN#")
then 3
else ""
Hopefully who is smarter than me and finds my error
Thanks
Solved! Go to Solution.
Hi @Yonah - it appears to be largely correct, but the formula will create a confusing data type becasue 1, 2 & 3 are numbers and "" is text. You could replace using the following options: (1) switch "" with null, or replace 1, 2, & 3 with "1", "2" or "3" - see below.
If this does not help, could you please share the error message that you are seeing?
if
(Text.Contains(Text.Start([articledescription],3), "GN ")) and [articlenumber]<>0
then ""
else if Text.Contains([articledescription], "ST#")
then "2"
else if Text.Contains([articledescription], "RT#")
then "1"
else if Text.Contains([articledescription], "PN#")
then "3"
else ""
if
(Text.Contains(Text.Start([articledescription],3), "GN ")) and [articlenumber]<>0
then null
else if Text.Contains([articledescription], "ST#")
then 2
else if Text.Contains([articledescription], "RT#")
then 1
else if Text.Contains([articledescription], "PN#")
then 3
else null
Hi @Yonah - it appears to be largely correct, but the formula will create a confusing data type becasue 1, 2 & 3 are numbers and "" is text. You could replace using the following options: (1) switch "" with null, or replace 1, 2, & 3 with "1", "2" or "3" - see below.
If this does not help, could you please share the error message that you are seeing?
if
(Text.Contains(Text.Start([articledescription],3), "GN ")) and [articlenumber]<>0
then ""
else if Text.Contains([articledescription], "ST#")
then "2"
else if Text.Contains([articledescription], "RT#")
then "1"
else if Text.Contains([articledescription], "PN#")
then "3"
else ""
if
(Text.Contains(Text.Start([articledescription],3), "GN ")) and [articlenumber]<>0
then null
else if Text.Contains([articledescription], "ST#")
then 2
else if Text.Contains([articledescription], "RT#")
then 1
else if Text.Contains([articledescription], "PN#")
then 3
else null