cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Vikram_Vh
Helper I
Helper I

Flow to filter excel rows & send bucketed data as HTML to respective stakeholders

Dear all 

I have a requirement to filter an excel table and send the specific rows pertaining to a particular manager as an HTML table on email. Have tried doing it in the past, using arrays, union function etc but could never get the complete solution which worked.

 

The sample data excel table is as follows . There are 5 records, but instead of sending 5 individual mails, i need to send 2 mails, one to Fred for records pertaining to officers Ramesh & Subra. Viv will get a table of remaining 3 officers/rows of data.

Excel table.JPG

 

will request help with the resp. flow process. 

 

thank you in advance. 

 

regards

 

Vikram

1 ACCEPTED SOLUTION

Accepted Solutions
abm
Super User
Super User

Hi @Vikram_Vh 

 

I have made a tutorial video about this. See below link.

 

Power Automate - How To Filter Excel Rows Using Unique Column Names & Send Email? - YouTube

 

If you need further help please let me know.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials

View solution in original post

15 REPLIES 15
abm
Super User
Super User

Hi @Vikram_Vh 

 

I have made a tutorial video about this. See below link.

 

Power Automate - How To Filter Excel Rows Using Unique Column Names & Send Email? - YouTube

 

If you need further help please let me know.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
Naveen_772
Resolver II
Resolver II

@Vikram_Vh 

Please find the screenshot of the flows and expressions.

Naveen_772_0-1643102297428.pngNaveen_772_1-1643102327651.pngNaveen_772_2-1643102371024.png

Output Email:

Naveen_772_3-1643102408258.png

Naveen_772_4-1643102457358.png

 

Explanation with the expression:

 

  • First, create a variable of array type to store all emails.
  • List all the rows from excel.
  • Iterate over each record and add Manager email to the variable.
  • Filter the unique Manager Email using union.
    • @{union(variables('Unique Manger Email'),variables('Unique Manger Email'))}
  • Iterate over unique manager email id.
  • Filter the rows listed from excel on the basis of email.
    • @equals(item()?['Manager ID'], items('Apply_to_each_2'))
  • Create HTML table
  • Send out the email.

I hope this helps you.

 

 

thank you @abm for the video tutorial. really appreciate the time taken to make this detailed av.

Could finally do it on my own following your steps. It works as expected. 

Had some additional queries on this.

1.If i need to add the mail id of the respective officers in cc, is there a way to do it. 

2.While sending the bucketed list of rows to the manager, in the subject line i am not able to select the dynamic value from the manager name column. Doing it again adds a send to all loop after html step. 

 

regards

 

vikram

Hi @Naveen_772 thank you very much for your detailed reply. Your solution has slightly different steps than one suggested by @abm . I tried out your steps as well, but somehow it was giving an error. will attempt the steps again and get back to you on the issue being faced. 

 

I am really thankful to this community for being so helpful & supportive . 

 

regards

 

vikram

Hi @Vikram_Vh 

 

Thanks for your reply. Glad that it helped. Where does the respective officers email stored under? Is that another column in Excel. If it is then filter the excel sheet by the main email id before the Send email step. For the second issue regarding the dynamic value you may need to add that as an expression. I need to look your flow then only I can suggest a workaround to avoid the loop.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
chloe22
Frequent Visitor

Hi @abm , im having the same situation as Vikram, let's see my sample data from excel table as below:-

chloe22_1-1662806888358.png

There are 4 records, but instead of sending 4 individual mails, I wish to send 2 mails only, 1 mail to Lilly with customize HTML table pertaining to her vendors which including of Fresh Mart & Hero Market, and 1 mail to John with customize HTML table which consists of the row data for his vendor Happy Trading & Fresh Mart.

 

I have created my power automate flow according to your guidance video below:-

https://www.youtube.com/watch?v=vwMo79HFvtg

 

However, the result i got is different. Lilly was getting 4 similar individuals emails with the customize HTML table consisting of 2 similar row data for Fresh Mart but Hero Market data is not included. On the other hand, John also getting 4 similar individuals emails with customize HTML table consisting of 2 similar row data pertaining to Happy Trading without Fresh Mart data. 

 

Sharing with you 1 of the email sent to Lilly, Lilly was received 4 similar individual emails as below with duplicate data customize HTML table as well. 

 

chloe22_2-1662807916585.png

 

Sharing with you the flow i have created, hope to get your kind help to fix on the issue as this is very important for me on my daily tasks and this is my very first time to power automate. Hope to get your response at the soonest!  Many thanks in advance! 

 

chloe22_3-1662808090621.png

chloe22_4-1662808108365.png

chloe22_5-1662808128888.png

 

chloe22_6-1662808150895.png

chloe22_7-1662808160977.png

 

 

 

Hi @chloe22 

 

You have two apply to each loop. Its not quite right. Have a look on my video you described. I only have one loop. This is where your issue is.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
chloe22
Frequent Visitor

Hi @abm ,

 

Thanks for your checking, the apply to each loop is automatically added in by power automate, however i had solved the issue mentioned above by removing the second apply to each loop.

 

chloe22_0-1662975038519.png

However, the next question coming in, @abm may i please check with you, i wish to send the email out with a dynamic content from my excel file. For example, please see below printscreen, under my email body, i would like to set " dear, dynamic content", however, the power automate automatic help me add in the apply to each loop which i dont want as it creates more problems after that. May i seek for your guidance how could i add a dynamic content from my excel table under my email body without letting power automate to auto add in the apply to each loop for me?

 

chloe22_1-1662975140114.png

Looking forward to hear from you soon.

Many thanks in advance!

Hi @chloe22 

 

You must have mapped the wrong dynamic content hence it's added the second loop. Glad to hear that you resolved it. What dynamic values are you trying to map. Believe the content is going to be same for more than one rows (records) sending the same person. If that's the case then filter the excel sheet again using that email address. Then use the expression index zero (0) to get the value and map directly under the email. 

 

Another option is under the List rows action step, set the filter and set the top count to one. Yes its going to put another loop but we know its always going to be one record only. 

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
chloe22
Frequent Visitor

Hi @abm ,

 

Thank you, let me elaborate what dynamic content i wish to add in. The dynamic content i wish to add under my email body is the "requestor name" that from my excel table into the email body.

 

My Excel table :

chloe22_0-1662976724770.png

Email body :

"Dear Requestor Name"

 

But when i directly inputted the dynamic content from my excel table under my email body, power automate auto helped me to add in the apply to each loop which i dont wish to have.

May i seek for your advice, what step can i add into my flow in order to stop power automate auto add in the apply to each loop for me but at the same time i can add the dynamic content Requestor Name into my email body?

 

Below is my current flow and the yellow highlighted area is where i wish to add the dynamic content from my excel table:-

 

chloe22_1-1662977200187.png

chloe22_3-1662977307041.png

 

Thank you!

Hi @chloe22 

 

I explained in my earlier thread what to do for this. Before the create email step you need to filter the list rows, set the top count 1, filter using the unique email address.



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
chloe22
Frequent Visitor

Hi @abm ,

 

Thank you so much for your suggestion! However, I am not too sure how to create the flow you have mentioned. Sorry I'm kinda new to the power automate, would you mind to show the steps in power automate how to create the flow you mentioned?

 

"Before the create email step you need to filter the list rows, set the top count 1, filter using the unique email address"?

 

I'm trying to search around and tested in my flow but still I couldn't get it. Your step by step guidance in how to set up the flow in power automate would be much appreciated!

 

Many thanks in advance!

Hi @chloe22 

 

Could you please create a new thread and post a screenshot of your flow? Tag me as @abm and I will have a look.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials

Instead of an HTML table in the email , I need to export on the filtered data and provide data (excel spreadsheet attachment) for each email. Each email should only get their own rows of records. Similar to the HTML table. Can you provide guidance.  I am new to power automate. Any help you can provide will be appreciated

jnpb
Helper I
Helper I

Hi @Vikram_Vh , @Naveen_772 : 

Thank you both for these great examples of how to make this work! I have a question for one or both of you: 

I have to solve for a similar flow, but mine differs from your examples in that: 
- I have two excel files

- I need to filter all rows from File 1 that have a filtered column (Region)

- I need to match the filtered Region rows from File 1 with a record in File 2 that has a matching Region and an email address

- All filtered rows from File 1 need to be emailed once to the email address in File 2 that has the matching Region. 

 

I tried to take the concepts in the designs above and make it work with two files, but keep running into errors. Are you able to provide an example of a modified version that meets the above conditions? 

 

Thanks again for your great work!

 

Helpful resources

Announcements
Power Automate News & Announcements

Power Automate News & Announcements

Keep up to date with current events and community announcements in the Power Automate community.

Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Power Automate Community Blog

Power Automate Community Blog

Check out the latest Community Blog from the community!

Users online (3,713)