cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
iko_chen
Advocate I
Advocate I

extract the content from table in email to sharepoint list

Notification

FLOC

FLOC Descr.

Short text

Long description

Work order

2200025222

RCS-C-000

RECEIVING,RAW MATERIALS, MIXING, OTHER

热熔胶房,罐区桥架内线缆检查

* 08.09.2020 01:53:54热熔胶房,罐区桥架内线缆检查

310083157

2400027317

RCS-C-000

RECEIVING,RAW MATERIALS, MIXING, OTHER

08:00-16:00 早班电气巡检

 

330003723

@Django 

1 ACCEPTED SOLUTION

Accepted Solutions
Django
Impactful Individual
Impactful Individual

However... if you absolutely cannot change your email content there may be a way:

My table = 

HTMLtable00Example.png

 

Read the HTML of your email body to count the number of <TR> tags in the HTML code. In my case an expression like:

 

length(split(outputs('Compose_BodyHTML'),'<tr>'))​

 

This gives you the number of pieces of texts/strings separated by.

So my table has 5 rows of which the first row contains only the header but because there is text before the first row we end up with 6 pieces pieces of texts/strings.

We can use this number 6 to loop through every piece of text so we can isolate the data of every row in a Do until loop (do this action until max number is reached) using an expression to extract the text:

 

last(take(split(outputs('Compose_BodyHTML'),'<tr>'),variables('varNRrowsLooped')))

 

​This gives you the data of a whole row in a variable number of loops: in my case my second loop (the one with row data in it) would result in the HTML of the whole header row:

 

<td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Request</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Step</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Configuration</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.7159in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Log</span></p></td></tr>

 

Within the loop we also need to extract every cell of the row separately --> we use the same concept with the Do until here but then for every cell looking for the end of the cell with the </td> tag

 

length(split(outputs('Compose_ItemData'),'</td>'))

 

This gives you the data of a cell in your row: in my case the first loop would be the HTML of the cell with Investment Approval Request in it:

 

<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>

 

Then we append this data to a new array of celldata within the array of items (rows)

This gives you the chance to determine what you want to do with every row: in my case the new array looks like

 

[
  {
    "Itemnumber": 2,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Step</span></p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Configuration</span></p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.7159in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Log</span></p>"
      }
    ]
  },
  {
    "Itemnumber": 3,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:<br>save data of the request</p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.302in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">save data of approval steps linked to a single request</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Save approval step configuration based on properties of the Investment Approval Request</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6201in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Save important milestones of the process as individual records linked to a single request</p>"
      }
    ]
  },
  {
    "Itemnumber": 4,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8708in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Name<br></span><span style=\"font-size:9.0pt\">(a unique name combination created by Power App during submission so linked entities will have meaningful lookup name)</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.3048in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">n:1 lookup with </p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.4694in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">n:1 loookup</p>"
      }
    ]
  },
  {
    "Itemnumber": 5,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Type<br></span><span style=\"font-size:9.0pt\">(a text field to store the types of IA processes) </span></p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\"><span style=\"background:#FF99CC\">Option set better??</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.5006in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      }
    ]
  },
  {
    "Itemnumber": 6,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Configuration<br></span><span style=\"font-size:9.0pt\">(a unique name combination created by Power App during submission so linked entities will have meaningful lookup name)</span></p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.5006in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      }
    ]
  }
] 

 

Put this array in an own Apply to each loop and here you can do anything you like with the collected row data.

Like create a SharePoint item for every row or clean up the HTML using the preview action of HTML to text:

View solution in original post

11 REPLIES 11
fchopo
Super User
Super User

Hello @iko_chen 

Have a look at the following post on how to extract data from an email and parse it: https://365basics.com/microsoft-flow-parse-email-and-extract-information/

Hope it helps!

Ferran

Did I answer your question? Please consider to mark my post as a solution to help others.
Proud to be a Flownaut!

Hi @fchopo 

thank you very much, i had get the solution to extract the content from email, the challenge is my current standardize the notification is a html table, so i need to convert this table to sharepoint list.

 

thank you very much.

br

iko

Django
Impactful Individual
Impactful Individual

Hi @iko_chen,

If you are able to extract the data --> what do you with it then?

 

If you want every row of your table to be a newly created item in a SharePoint list:

  1. Create an array and append every table row to that array
  2. Use the array in Apply to each-loop (https://docs.microsoft.com/en-us/power-automate/apply-to-each)
  3. In the loop use the SharePoint Create item action

Hi @Django 

yes, i can extract the content with table(standardized short content) by follow steps, it's not a smart way, so i can't use this way for the tables.

 

thanks!

iko_chen_0-1600130155492.png

 

Django
Impactful Individual
Impactful Individual

Just tried to explain in a post (took me over an hour and then lost all my text 😒 because the Forum Site timed out and now is blocking me) so I will try to do in parts.

Django
Impactful Individual
Impactful Individual

Hi @iko_chen ,

Because this can get very messy, very fast --> I always recommend to focus on the weakest link in your chain.

Based on the concept of "Garbage in, Garbage out", my advise would be to change your email content in a way that gives you the most flexibility and less headache. You already found my concept here: https://powerusers.microsoft.com/t5/Power-Automate-Cookbook/Extract-and-parse-data-from-an-email/td-.... If you could change the content of your email to match keys with values, I think you have the most flexibility.

Django
Impactful Individual
Impactful Individual

However... if you absolutely cannot change your email content there may be a way:

My table = 

HTMLtable00Example.png

 

Read the HTML of your email body to count the number of <TR> tags in the HTML code. In my case an expression like:

 

length(split(outputs('Compose_BodyHTML'),'<tr>'))​

 

This gives you the number of pieces of texts/strings separated by.

So my table has 5 rows of which the first row contains only the header but because there is text before the first row we end up with 6 pieces pieces of texts/strings.

We can use this number 6 to loop through every piece of text so we can isolate the data of every row in a Do until loop (do this action until max number is reached) using an expression to extract the text:

 

last(take(split(outputs('Compose_BodyHTML'),'<tr>'),variables('varNRrowsLooped')))

 

​This gives you the data of a whole row in a variable number of loops: in my case my second loop (the one with row data in it) would result in the HTML of the whole header row:

 

<td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Request</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Step</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Configuration</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.7159in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:11.0pt"><span style="font-weight:bold">Investment Approval Log</span></p></td></tr>

 

Within the loop we also need to extract every cell of the row separately --> we use the same concept with the Do until here but then for every cell looking for the end of the cell with the </td> tag

 

length(split(outputs('Compose_ItemData'),'</td>'))

 

This gives you the data of a cell in your row: in my case the first loop would be the HTML of the cell with Investment Approval Request in it:

 

<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>

 

Then we append this data to a new array of celldata within the array of items (rows)

This gives you the chance to determine what you want to do with every row: in my case the new array looks like

 

[
  {
    "Itemnumber": 2,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Step</span></p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Configuration</span></p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.7159in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\"><span style=\"font-weight:bold\">Investment Approval Log</span></p>"
      }
    ]
  },
  {
    "Itemnumber": 3,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:<br>save data of the request</p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.302in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">save data of approval steps linked to a single request</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Save approval step configuration based on properties of the Investment Approval Request</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6201in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Purpose:</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\">Save important milestones of the process as individual records linked to a single request</p>"
      }
    ]
  },
  {
    "Itemnumber": 4,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8708in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Name<br></span><span style=\"font-size:9.0pt\">(a unique name combination created by Power App during submission so linked entities will have meaningful lookup name)</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.3048in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">n:1 lookup with </p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\"><span style=\"font-weight:bold\">Investment Approval Request</span></p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.4694in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">n:1 loookup</p>"
      }
    ]
  },
  {
    "Itemnumber": 5,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Type<br></span><span style=\"font-size:9.0pt\">(a text field to store the types of IA processes) </span></p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:9.0pt\"><span style=\"background:#FF99CC\">Option set better??</span></p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.5006in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      }
    ]
  },
  {
    "Itemnumber": 6,
    "celldata": [
      {
        "CellData1": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8513in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData2": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.2937in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      },
      {
        "CellData3": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.8076in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri\"><span style=\"font-size:11.0pt\">IA Configuration<br></span><span style=\"font-size:9.0pt\">(a unique name combination created by Power App during submission so linked entities will have meaningful lookup name)</span></p>"
      },
      {
        "CellData4": "<td style=\"border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.5006in; padding:4pt 4pt 4pt 4pt\"><p lang=\"en-US\" style=\"margin:0in; font-family:Calibri; font-size:11.0pt\">&nbsp;</p>"
      }
    ]
  }
] 

 

Put this array in an own Apply to each loop and here you can do anything you like with the collected row data.

Like create a SharePoint item for every row or clean up the HTML using the preview action of HTML to text:

Django
Impactful Individual
Impactful Individual

I realize my explanation is too big / too complex for the site to load it nicely so let me add an example Flow as an attachment.

Make sure that the only/last email in your inbox contains a table and it should work / explain the concept.

Hi @Django 

thank you very much, i will try your solution.

 

thanks for you details instruction!

 

thanks!

br

iko

Hi @Django 

thank you for your solution, i had extracted the HTML table to sharepoint list, thank you very much.

 
 

Capture.JPG

 

 

 

 

Coul you explain me, how did you do it step by step, please?

Helpful resources

Announcements

Tuesday Tip | How to Get Community Support

It's time for another Tuesday Tip, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.       This Week: All About Community Support Whether you're a seasoned community veteran or just getting started, you may need a bit of help from time to time! If you need to share feedback with the Community Engagement team about the community or are looking for ways we can assist you with user groups, events, or something else, Community Support is the place to start.   Community Support is part of every one of our communities, accessible to all our community members.   Within each community's Community Support page, you'll find three distinct areas, each with a different focus to help you when you need support from us most. Power Apps: https://powerusers.microsoft.com/t5/Community-Support/ct-p/pa_community_support Power Automate: https://powerusers.microsoft.com/t5/Community-Support/ct-p/mpa_community_support Power Pages: https://powerusers.microsoft.com/t5/Community-Support/ct-p/mpp_community_support Copilot Studio: https://powerusers.microsoft.com/t5/Community-Support/ct-p/pva_community-support   Community Support Form If you need more assistance, you can reach out to the Community Team via the Community support form. Choose the type of support you require and fill in the form accordingly. We will respond to you promptly.    Thank you for being an active part of our community. Your contributions make a difference!   Best Regards, The Community Management Team

Community Roundup: A Look Back at Our Last 10 Tuesday Tips

As we continue to grow and learn together, it's important to reflect on the valuable insights we've shared. For today's #TuesdayTip, we're excited to take a moment to look back at the last 10 tips we've shared in case you missed any or want to revisit them. Thanks for your incredible support for this series--we're so glad it was able to help so many of you navigate your community experience!   Getting Started in the Community An overview of everything you need to know about navigating the community on one page!  Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Community Ranks and YOU Have you ever wondered how your fellow community members ascend the ranks within our community? We explain everything about ranks and how to achieve points so you can climb up in the rankings! Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Powering Up Your Community Profile Your Community User Profile is how the Community knows you--so it's essential that it works the way you need it to! From changing your username to updating contact information, this Knowledge Base Article is your best resource for powering up your profile. Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Community Blogs--A Great Place to Start There's so much you'll discover in the Community Blogs, and we hope you'll check them out today!  Community Links: ○ Power Apps ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Unlocking Community Achievements and Earning Badges Across the Communities, you'll see badges on users profile that recognize and reward their engagement and contributions. Check out some details on Community badges--and find out more in the detailed link at the end of the article! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio    Blogging in the Community Interested in blogging? Everything you need to know on writing blogs in our four communities! Get started blogging across the Power Platform communities today! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Subscriptions & Notifications We don't want you to miss a thing in the community! Read all about how to subscribe to sections of our forums and how to setup your notifications! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Getting Started with Private Messages & Macros Do you want to enhance your communication in the Community and streamline your interactions? One of the best ways to do this is to ensure you are using Private Messaging--and the ever-handy macros that are available to you as a Community member! Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Community User Groups Learn everything about being part of, starting, or leading a User Group in the Power Platform Community. Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Update Your Community Profile Today! Keep your community profile up to date which is essential for staying connected and engaged with the community. Community Links: ○ Power Apps  ○ Power Automate  ○ Power Pages  ○ Copilot Studio   Thank you for being an integral part of our journey.   Here's to many more Tuesday Tips as we pave the way for a brighter, more connected future! As always, watch the News & Announcements for the next set of tips, coming soon!    

Calling all User Group Leaders and Super Users! Mark Your Calendars for the next Community Ambassador Call on May 9th!

This month's Community Ambassador call is on May 9th at 9a & 3p PDT. Please keep an eye out in your private messages and Teams channels for your invitation. There are lots of exciting updates coming to the Community, and we have some exclusive opportunities to share with you! As always, we'll also review regular updates for User Groups, Super Users, and share general information about what's going on in the Community.     Be sure to register & we hope to see all of you there!

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip: Getting Started with Private Messages & Macros

Welcome to TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   This Week's Tip: Private Messaging & Macros in Power Apps Community   Do you want to enhance your communication in the Community and streamline your interactions? One of the best ways to do this is to ensure you are using Private Messaging--and the ever-handy macros that are available to you as a Community member!   Our Knowledge Base article about private messaging and macros is the best place to find out more. Check it out today and discover some key tips and tricks when it comes to messages and macros:   Private Messaging: Learn how to enable private messages in your community profile and ensure you’re connected with other community membersMacros Explained: Discover the convenience of macros—prewritten text snippets that save time when posting in forums or sending private messagesCreating Macros: Follow simple steps to create your own macros for efficient communication within the Power Apps CommunityUsage Guide: Understand how to apply macros in posts and private messages, enhancing your interaction with the Community For detailed instructions and more information, visit the full page in your community today:Power Apps: Enabling Private Messaging & How to Use Macros (Power Apps)Power Automate: Enabling Private Messaging & How to Use Macros (Power Automate)  Copilot Studio: Enabling Private Messaging &How to Use Macros (Copilot Studio) Power Pages: Enabling Private Messaging & How to Use Macros (Power Pages)

Tuesday Tip: Subscriptions & Notifications

TUESDAY TIPS are our way of communicating helpful things we've learned or shared that have helped members of the Community. Whether you're just getting started or you're a seasoned pro, Tuesday Tips will help you know where to go, what to look for, and navigate your way through the ever-growing--and ever-changing--world of the Power Platform Community! We cover basics about the Community, provide a few "insider tips" to make your experience even better, and share best practices gleaned from our most active community members and Super Users.   With so many new Community members joining us each week, we'll also review a few of our "best practices" so you know just "how" the Community works, so make sure to watch the News & Announcements each week for the latest and greatest Tuesday Tips!   This Week: All About Subscriptions & Notifications We don't want you to a miss a thing in the Community! The best way to make sure you know what's going on in the News & Announcements, to blogs you follow, or forums and galleries you're interested in is to subscribe! These subscriptions ensure you receive automated messages about the most recent posts and replies. Even better, there are multiple ways you can subscribe to content and boards in the community! (Please note: if you have created an AAD (Azure Active Directory) account you won't be able to receive e-mail notifications.)   Subscribing to a Category  When you're looking at the entire category, select from the Options drop down and choose Subscribe.     You can then choose to Subscribe to all of the boards or select only the boards you want to receive notifications. When you're satisfied with your choices, click Save.     Subscribing to a Topic You can also subscribe to a single topic by clicking Subscribe from the Options drop down menu, while you are viewing the topic or in the General board overview, respectively.     Subscribing to a Label Find the labels at the bottom left of a post.From a particular post with a label, click on the label to filter by that label. This opens a window containing a list of posts with the label you have selected. Click Subscribe.     Note: You can only subscribe to a label at the board level. If you subscribe to a label named 'Copilot' at board #1, it will not automatically subscribe you to an identically named label at board #2. You will have to subscribe twice, once at each board.   Bookmarks Just like you can subscribe to topics and categories, you can also bookmark topics and boards from the same menus! Simply go to the Topic Options drop down menu to bookmark a topic or the Options drop down to bookmark a board. The difference between subscribing and bookmarking is that subscriptions provide you with notifications, whereas bookmarks provide you a static way of easily accessing your favorite boards from the My subscriptions area.   Managing & Viewing Your Subscriptions & Bookmarks To manage your subscriptions, click on your avatar and select My subscriptions from the drop-down menu.     From the Subscriptions & Notifications tab, you can manage your subscriptions, including your e-mail subscription options, your bookmarks, your notification settings, and your email notification format.     You can see a list of all your subscriptions and bookmarks and choose which ones to delete, either individually or in bulk, by checking multiple boxes.     A Note on Following Friends on Mobile Adding someone as a friend or selecting Follow in the mobile view does not allow you to subscribe to their activity feed. You will merely be able to see your friends’ biography, other personal information, or online status, and send messages more quickly by choosing who to send the message to from a list, as opposed to having to search by username.

Users online (3,475)