cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
MichaelURev
Frequent Visitor

Merging Excel files in Onedrive for business

Hi All,

 

I have a process that downloads a bunch of similar excel reports from my email to a specific folder in my onedrive.

 

These reports are not formatted as tables in any way, and there is no way for me to get them as tables (they are like PDFs dropped into excel, I will use Power Query later to clean it up once I have it in the main excel).

 

How can I create a flow that once a week the flow will copy all the rows from all the reports into one new excel file? (and then delete all the old files if possible)

1 ACCEPTED SOLUTION

Accepted Solutions

This was very frustrating. I initially was trying to solve it with the text of the sheet name written directly into the step. However, if an Excel sheet is named with special characters or spaces, it needs to be wrapped with 'single quotes' so that it is read as text.

 

Instead of =OFFSET(Sheet1!A1,.........

It should be =OFFSET('Special.Tab-Name 01'!A1,.......

 

Surprisingly, if you are typing in the sheet name and using single quotes, it doesn't work because of how text is converted in Power Automate when the data is transmitted.

 

However, if I use the dynamic content like you have for a name and then put single quotes around it, then it does work. Simple.

 

Create Table With Sheet NameCreate Table With Sheet Name

 

Not simple is the formula to use for a range that does not start one A1 but starts on A6. I'm not going to waste time explaining how it works but it does. If you want to test it, you can actually write the formula in an Excel cell with the sheet name replaced and see the results. 

Table Range FormulaTable Range Formula

 

Here is the basic formula below:

 

=OFFSET('{SheetName}'!$A6,0,0,SUBTOTAL(103,OFFSET('{SheetName}'!$A6,0,0,SUM((ROWS('{SheetName}'!$A:$A)-ROW('{SheetName}'!$A6)),1))),23)

 

 

The curly brackets and SheetName between single quotes '{SheetName}' would be replaced with dynamic content or a variable. But the single quotes need to stay outside of the value.

 

For this specific example that is using the newly Create File - Name Without Extension as the sheet name it will be this example below. You can copy and paste this into your field and it should add the dynamic content so long as you didn't rename the "Create file" step.

 

 

=OFFSET('@{outputs('Create_file')?['body/NameNoExt']}'!$A6,0,0,SUBTOTAL(103,OFFSET('@{outputs('Create_file')?['body/NameNoExt']}'!$A6,0,0,SUM((ROWS('@{outputs('Create_file')?['body/NameNoExt']}'!$A:$A)-ROW('@{outputs('Create_file')?['body/NameNoExt']}'!$A6)),1))),23)

 

 

I must have tested 100 emails to finally get this to work. But at least I learned something.

 

Now the bad news...........

 

When I used your file to test, I was unable to get it to work. It would just keep running (the flow shouldn't take more than 10 seconds) and after a few minutes I would Cancel the flow.

 

When I copied the data from your worksheet and pasted it into a new workbook as values only, the flow worked successfully.

 

Things I tried to change in your original file but the flow still failed:

  • Adding the gridlines
  • Unmerging cell A5 (I ran my version with A5 merged and it was successful, so that not the problem)
  • Deleting the top 5 rows with the report info and replaced with blank rows. (I thought maybe they are formatted weird and messing up the formula.)
  • Deleting all the data and copy and paste it back into the worksheet.

So basically there is something wrong with the file itself.

I went into the Inspect Document and found the workbook has "Invisible Content" Number of invisible objects found 40.

Inspect Workbook - Invisible ContentInspect Workbook - Invisible Content

 

I could not find these objects anywhere. I don't know what they are.

 

I clicked Remove All to delete that Invisible Content. Ran the flow and it was successful.

 

Successful File and Table CreationSuccessful File and Table Creation

 

So I don't know if that Invisible Content is something from the report maker itself or something from a result of you uploading here and then me downloading it.

 

All I can say is for you to make your Create Table formula look exactly like mine and triple check the formula. If the flow is not successful then try saving the file and scrubbing the Invisible Content to make sure the flow works.

 

If the Invisible Content is coming from the report maker, I don't know how to fix that.

 

Good Luck!

View solution in original post

8 REPLIES 8

You need magic, not Power Automate Cloud Flow.

 

At the very least starting point you should try to deal with individual files as they come in. So like as a single new excel file comes into your email, it needs to be formatted and put into a master table or something.

 

If you can get that far you have a starting point.

 

You might try something with Power Automate Desktop Flow, but I don't know anything about the Desktop type flow builder. 

@wskinnermctc I'm game! Can you help me with something like that?

 

I actually built a desktop flow to do it, but I would much prefer to have this in cloud as I don't really have a machine to keep the flow on.

Will all of the excel files be the same? You said similar. What will be the differences of these Excel files?

MichaelURev
Frequent Visitor

@wskinnermctc Just the rows of data, so I guess they are all the same.

 

The software generating these reports isn't great, but I think its safe to assume that all the columns will be the same.

Ok lets test getting individual files from an email and creating a new file for that attachment, and then creating a table in the new file.

 

This will only work if all of the columns are the same for each excel file that you get from an email. The flow is not complicated, you just have to be specific in the Create Table action to prevent errors.

 

I made an example below that should be easy to follow. You need to use one of the files from your email that doesn't have a table and send it to yourself to test.

 

Here is the overall flow that will get an attachment and create a file then a table:

Example Flow OverviewExample Flow Overview

 

 

Here is the example excel file and email that I will be using for my testing.

Excel File No Table that will be attachmentExcel File No Table that will be attachmentEmail with Attachment Sending to Myself to Test FlowEmail with Attachment Sending to Myself to Test Flow

 

Below are the flow steps in detail:

Flow Steps Detail to Create File from Attachment and Create TableFlow Steps Detail to Create File from Attachment and Create Table

Example Flow Detail 1Example Flow Detail 1Example Flow Detail 2Example Flow Detail 2

 

The key to this is creating a table step. This uses a formula in the Table Range field that will make a range. The formula is using the OFFSET function which will output a range. This needs to have the starting point which will be the first column cell.

 

 OFFSET(reference, rows, cols, [height], [width])

 

We are most concerned with the reference and [height] and [width]. The rows, cols part of the function is for actually offsetting something which we don't want to do.

 

Then it uses the SUBTOTAL function in place of the the [height] which needs to use a type of Function_num code followed by a range.

 

SUBTOTAL(function_num,ref1,[ref2],...)

 

We are using the function_num of 103 which is a COUNTA type function. Then the reference is all of column A.

 

The last part of the OFFSET function is the [width] which is where you put the column counts.

 

Create TableCreate Table

 

So the example formula I'm using for my Table Range is

 

=OFFSET(Sheet1!A1,0,0,SUBTOTAL(103,Sheet1!$A:$A),10)

 

 

Then I listed the columns in the Column Names field.

 

When I send the email it created a new file and in that file is a table.

New File CreatedNew File CreatedTable Created Inside of New FileTable Created Inside of New File

 

If you can follow these steps and have the files being created from email attachments with tables that are the same then you can start looking for a method for how to combine this data.

@wskinnermctc  I really really appreciate the assistance, thank you so much!

 

So everything seems to work, up to the create table. Either the flow fails at create table, or it just runs at that step and I eventually cancelled those flows after a few minutes.

 

I anonymized a sample of the report and attached it here.

 

A few points to mention, the report comes as an .xls and comes full of hyperlinks as well.
On the flow, I changed the offset a little as you can see the report comes with the sheet named the same as the report and the real data starts on A6.

 

MichaelURev_0-1691005517805.png

 

This was very frustrating. I initially was trying to solve it with the text of the sheet name written directly into the step. However, if an Excel sheet is named with special characters or spaces, it needs to be wrapped with 'single quotes' so that it is read as text.

 

Instead of =OFFSET(Sheet1!A1,.........

It should be =OFFSET('Special.Tab-Name 01'!A1,.......

 

Surprisingly, if you are typing in the sheet name and using single quotes, it doesn't work because of how text is converted in Power Automate when the data is transmitted.

 

However, if I use the dynamic content like you have for a name and then put single quotes around it, then it does work. Simple.

 

Create Table With Sheet NameCreate Table With Sheet Name

 

Not simple is the formula to use for a range that does not start one A1 but starts on A6. I'm not going to waste time explaining how it works but it does. If you want to test it, you can actually write the formula in an Excel cell with the sheet name replaced and see the results. 

Table Range FormulaTable Range Formula

 

Here is the basic formula below:

 

=OFFSET('{SheetName}'!$A6,0,0,SUBTOTAL(103,OFFSET('{SheetName}'!$A6,0,0,SUM((ROWS('{SheetName}'!$A:$A)-ROW('{SheetName}'!$A6)),1))),23)

 

 

The curly brackets and SheetName between single quotes '{SheetName}' would be replaced with dynamic content or a variable. But the single quotes need to stay outside of the value.

 

For this specific example that is using the newly Create File - Name Without Extension as the sheet name it will be this example below. You can copy and paste this into your field and it should add the dynamic content so long as you didn't rename the "Create file" step.

 

 

=OFFSET('@{outputs('Create_file')?['body/NameNoExt']}'!$A6,0,0,SUBTOTAL(103,OFFSET('@{outputs('Create_file')?['body/NameNoExt']}'!$A6,0,0,SUM((ROWS('@{outputs('Create_file')?['body/NameNoExt']}'!$A:$A)-ROW('@{outputs('Create_file')?['body/NameNoExt']}'!$A6)),1))),23)

 

 

I must have tested 100 emails to finally get this to work. But at least I learned something.

 

Now the bad news...........

 

When I used your file to test, I was unable to get it to work. It would just keep running (the flow shouldn't take more than 10 seconds) and after a few minutes I would Cancel the flow.

 

When I copied the data from your worksheet and pasted it into a new workbook as values only, the flow worked successfully.

 

Things I tried to change in your original file but the flow still failed:

  • Adding the gridlines
  • Unmerging cell A5 (I ran my version with A5 merged and it was successful, so that not the problem)
  • Deleting the top 5 rows with the report info and replaced with blank rows. (I thought maybe they are formatted weird and messing up the formula.)
  • Deleting all the data and copy and paste it back into the worksheet.

So basically there is something wrong with the file itself.

I went into the Inspect Document and found the workbook has "Invisible Content" Number of invisible objects found 40.

Inspect Workbook - Invisible ContentInspect Workbook - Invisible Content

 

I could not find these objects anywhere. I don't know what they are.

 

I clicked Remove All to delete that Invisible Content. Ran the flow and it was successful.

 

Successful File and Table CreationSuccessful File and Table Creation

 

So I don't know if that Invisible Content is something from the report maker itself or something from a result of you uploading here and then me downloading it.

 

All I can say is for you to make your Create Table formula look exactly like mine and triple check the formula. If the flow is not successful then try saving the file and scrubbing the Invisible Content to make sure the flow works.

 

If the Invisible Content is coming from the report maker, I don't know how to fix that.

 

Good Luck!

MichaelURev
Frequent Visitor

@wskinnermctc Wow wow!

 

I really appreciate the effort you put into this. I would say that the content is coming from the report maker and they are not going to change anything for me..

 

I am going to look into using an automated desktop flow to do it I guess.

 

Thank you again!

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!    This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Community MembersNumber SolutionsSuper UsersNumber Solutions Deenuji 9 @NathanAlvares24  17 @Anil_g  7 @ManishSolanki  13 @eetuRobo  5 @David_MA  10 @VishnuReddy1997  5 @SpongYe  9JhonatanOB19932 (tie) @Nived_Nambiar  8 @maltie  2 (tie)   @PA-Noob  2 (tie)   @LukeMcG  2 (tie)   @tgut03  2 (tie)       Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 2: Community MembersSolutionsSuper UsersSolutionsPower Automate  @Deenuji  12@ManishSolanki 19 @Anil_g  10 @NathanAlvares24  17 @VishnuReddy1997  6 @Expiscornovus  10 @Tjan  5 @Nived_Nambiar  10 @eetuRobo  3 @SudeepGhatakNZ 8     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 3:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji32ManishSolanki55VishnuReddy199724NathanAlvares2444Anil_g22SudeepGhatakNZ40eetuRobo18Nived_Nambiar28Tjan8David_MA22   Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 4:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji11FLMike31Sayan11ManishSolanki16VishnuReddy199710creativeopinion14Akshansh-Sharma3SudeepGhatakNZ7claudiovc2CFernandes5 misc2Nived_Nambiar5 Usernametwice232rzaneti5 eetuRobo2   Anil_g2   SharonS2  

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (1,860)