- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Help with Excel Data in wide view, over multiple sheets
Good morning all, I hope you are well.
I'm trying to work out the most effective way to tackle a data set I have been asked to produce visuals from.
The excel sheet consists of separate sheets, per attribute, over time, and is in wide view. Essentially, I need to stack all the sheets, creating a column per attribute and unpivot to get a long view. But I just don't know what's the simplest way.
Here is some example data:
Thanks in advance
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi @D_HL
This article will be helpful: Combine Multiple or All Sheets from an Excel File into a Power BI solution Using Power Query Dynamic...
Notice that in the following step, you need to keep "Name" and "Data" columns. The "Name" column contains sheet names that represent the attributes you want.
After expanding Data column and filtering out unnecessary rows per your need, you can select Both Name and Data columns at the same time, then unpivot other columns to get a long view table.
Hope this helps.
Best Regards,
Community Support Team _ Jing
If this post helps, please Accept it as Solution to help other members find it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Thanks Jing,
Go it to work on most sheets, if one of the sheets' values were a % would that mess things up?
Thanks
Dan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi @D_HL
I think that will not mess things up. But you need to pay attention to the data type of columns. You can change the data type of a column thus all values in the same column will be in that data type. I recommend that you change data types after transforming the table into the expected format.
Best regards,
Jing
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Thanks Jing,
The tricky element to it is that I need to make the sheet name the column header for the values presented in the sheet. My end game would be something like this...
Primary Sector | Secondary Sector | Date | Total | Outstanding | Good Quality | Bad Quality |
A | A | 01/01/2023 | £8.5 | £4.5 | £4.0 | £0.5 |
A | B | 01/01/2023 | £5.5 | £2.5 | £2.5 | £0 |
A | C | 01/01/2023 | £2.1 | £2.0 | £0.0 | £2.0 |
B | A | 01/01/2023 | £8.4 | £5.4 | £1.0 | £7.4 |
Thanks
Dan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi @D_HL
You can try this query. Just replace the file path in the first Source step.
let
Source = Excel.Workbook(File.Contents("C:\Users\administrator\Desktop\Data.xlsx"), null, true),
#"Removed Other Columns" = Table.SelectColumns(Source,{"Name", "Data"}),
#"Added Custom" = Table.AddColumn(#"Removed Other Columns", "NewData", each Table.UnpivotOtherColumns(Table.PromoteHeaders([Data], [PromoteAllScalars=true]), {"Primary Sector", "Secondary Sector"}, "Attribute", "Value")),
#"Removed Other Columns1" = Table.SelectColumns(#"Added Custom",{"Name", "NewData"}),
#"Expanded NewData" = Table.ExpandTableColumn(#"Removed Other Columns1", "NewData", {"Primary Sector", "Secondary Sector", "Attribute", "Value"}, {"Primary Sector", "Secondary Sector", "Attribute", "Value"}),
#"Pivoted Column" = Table.Pivot(#"Expanded NewData", List.Distinct(#"Expanded NewData"[Name]), "Name", "Value"),
#"Renamed Columns" = Table.RenameColumns(#"Pivoted Column",{{"Attribute", "Date"}})
in
#"Renamed Columns"
I take only two sheets in my sample but never mind this query works with more sheets.
Steps are:
Add a custom column to transform the original Data column first (promote the first row to headers and unpivot).
Remove the original Data column, then expand the NewData column.
Pivot Name column.
Best Regards,
Community Support Team _ Jing
If this post helps, please Accept it as Solution to help other members find it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

Hi @D_HL
This article will be helpful: Combine Multiple or All Sheets from an Excel File into a Power BI solution Using Power Query Dynamic...
Notice that in the following step, you need to keep "Name" and "Data" columns. The "Name" column contains sheet names that represent the attributes you want.
After expanding Data column and filtering out unnecessary rows per your need, you can select Both Name and Data columns at the same time, then unpivot other columns to get a long view table.
Hope this helps.
Best Regards,
Community Support Team _ Jing
If this post helps, please Accept it as Solution to help other members find it.

Helpful resources
Join our Fabric User Panel
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Power BI Monthly Update - June 2025
Check out the June 2025 Power BI update to learn about new features.

User | Count |
---|---|
15 | |
12 | |
8 | |
8 | |
7 |
User | Count |
---|---|
15 | |
13 | |
8 | |
7 | |
6 |