Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more

Reply
timeregained
New Member

email field imported from salesforce report was not treated consistently

Hello,

 

I have used PowerBi to import data from a salesfore report, it seems powerbi tried to parse the email field to a slice of html. (Both the plugin in Excel and PowerBI desktop perform as the same)

 

e.g. ABC@ABC.COM would be parsed to :"<A HREF="mailto:ABC@XYZ.COM">ABC@XYZ.COM</A>"

 

However, if the mailbox's format is little different, like ABC.DEF@XYZ.COM, it would always parsed to:

"<A HREF="http://ABC.DEF" TARGET="_blank">ABC.DEF</A>@<A HREF="http://XYZ.COM" TARGET="_blank">XYZ.COM</A>"

 

It would be easy for me to get the text of emailbox if the different format of emailbox could be treated consistently. So is there any advice for this issue?

1 ACCEPTED SOLUTION
Anonymous
Not applicable

@timeregained,

Firstly, add a blank query in Power BI, then paste the following code into Advanced Editor of the blank query.

let func =  
 (HTML as text) =>
let
    Source = Text.From(HTML),
    SplitAny = Text.SplitAny(Source,"<>"),
    ListAlternate = List.Alternate(SplitAny,1,1,1),
    ListSelect = List.Select(ListAlternate, each _<>""),
    TextCombine = Text.Combine(ListSelect, "")
in
    TextCombine
, documentation = [
Documentation.Name =  " Text.RemoveHtmlTags
", Documentation.Description = " Removes all Html tags from a text
" , Documentation.LongDescription = " Removes all Html tags from a text
", Documentation.Category = " Text.Modification
", Documentation.Source = " Inspired by a solution from Bill Szysz
", Documentation.Author = " Imke Feldmann: www.TheBIccountant.com
", Documentation.Examples = {[Description =  " 
" , Code = " 
 ", Result = " 
"]}] 
 in 
  Value.ReplaceType(func, Value.ReplaceMetadata(Value.Type(func), documentation)) 

1.PNG

Secondly, invoke the custom function in your table as shown in the following screenshots, and you will get email address from the HTML.

2.PNG3.PNG


Regards,
Lydia

View solution in original post

2 REPLIES 2
Anonymous
Not applicable

@timeregained,

Firstly, add a blank query in Power BI, then paste the following code into Advanced Editor of the blank query.

let func =  
 (HTML as text) =>
let
    Source = Text.From(HTML),
    SplitAny = Text.SplitAny(Source,"<>"),
    ListAlternate = List.Alternate(SplitAny,1,1,1),
    ListSelect = List.Select(ListAlternate, each _<>""),
    TextCombine = Text.Combine(ListSelect, "")
in
    TextCombine
, documentation = [
Documentation.Name =  " Text.RemoveHtmlTags
", Documentation.Description = " Removes all Html tags from a text
" , Documentation.LongDescription = " Removes all Html tags from a text
", Documentation.Category = " Text.Modification
", Documentation.Source = " Inspired by a solution from Bill Szysz
", Documentation.Author = " Imke Feldmann: www.TheBIccountant.com
", Documentation.Examples = {[Description =  " 
" , Code = " 
 ", Result = " 
"]}] 
 in 
  Value.ReplaceType(func, Value.ReplaceMetadata(Value.Type(func), documentation)) 

1.PNG

Secondly, invoke the custom function in your table as shown in the following screenshots, and you will get email address from the HTML.

2.PNG3.PNG


Regards,
Lydia

Lydia, thanks a lot for your advice. I have tried your sugestion and it works well.

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Kudoed Authors